CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   matrix in OpenFOAM (https://www.cfd-online.com/Forums/openfoam-programming-development/122627-matrix-openfoam.html)

luckycfd August 23, 2013 09:51

matrix in OpenFOAM
 
Hello all,
According to the reference that it's address link is below, in page 53;
http://www.diva-portal.org/smash/get...T01.pdf‎
I can,t undrestand that what is the placeholder matrix in openFoam? and how get this equations:

u(0)=[2,0] u(1)=[3,1] l(0)=[0,2] l(1)=[1,3]

UpperAddr=(2,3) LowerAddr=(0,1)

Best regards,
Hassan

luckycfd August 26, 2013 01:36

can anyone explain the placeholder matrix in openfoam?

Amiin August 27, 2013 03:47

Dear Hassan,

As far as I know, OF uses a LDU method to store large sparse matrixes to save memory. In your reference, A is a matrix which is stored as the sum of three matrixes.

1- Diagonal list which stores only diagonal elements.
2- Lower list for storing lower triangular elements, row wised from left to right.
3- Upper list for storing upper triangular elements, column wised from left to right.

Then for addressing these off-diagonal elements, since upper and lower elements are symmetric, only one of them are addressed.
E.g. upperAddr contains the rows of lower list elements and lowerAddr contains the column of them.
So for upper list elements, upperAddr is for columns and lowerAddr is for rows.

Regards,

Amin

luckycfd August 29, 2013 14:32

Dear Amin,

thanks a lot:)

Best regadrs,
Hassan

luckycfd August 31, 2013 00:43

Hi,
According to the:
http://openfoamwiki.net/index.php/Op...es_in_OpenFOAM
What is the "computational molecule" term in the Sentence below?
"OpenFOAM uses a small computational molecule, therefore only adjacent cells influence one another."

Best regards,
Hassan

sharonyue September 2, 2013 02:45

Hi guys:

If the solver prints:
Code:

Lower triangle = 7(-0.05 -0 -0.05 -0 -0 -0.05 -0.05)

diagonal = 6(0.05 0.05 0 0.05 0.05 0)

Upper triangle = 7{0}

what does it mean?

if the diagonal coefficients are 6, is the upper and lower triangle coefficients should be (5+4+3+2+1)=15?

luckycfd September 9, 2013 14:27

good question,
I don't know!:confused:

Henning86 September 9, 2013 18:11

if the matrix is symmetric, only the diagonal is stored to save RAM. can be seen in the ldumatrix class

luckycfd September 16, 2013 02:04

Hi sharonyue,

How can get this output? access to the these lists in a special test case for example in cavity by icoFoam:
Code:

Lower triangle = 7(-0.05 -0 -0.05 -0 -0 -0.05 -0.05) 
diagonal = 6(0.05 0.05 0 0.05 0.05 0) 
Upper triangle = 7{0}

Regards,
Hassan

j-avdeev February 1, 2014 12:00

Hello, luckycfd.

Probably matricoFoam will help you to understand:
http://www.cfd-online.com/Forums/ope...tml#post472905


All times are GMT -4. The time now is 10:37.