CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Programming & Development

matrix in OpenFOAM

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree6Likes
  • 4 Post By Amiin
  • 2 Post By j-avdeev

Reply
 
LinkBack Thread Tools Display Modes
Old   August 23, 2013, 09:51
Default matrix in OpenFOAM
  #1
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
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 is offline   Reply With Quote

Old   August 26, 2013, 01:36
Default
  #2
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
can anyone explain the placeholder matrix in openfoam?
luckycfd is offline   Reply With Quote

Old   August 27, 2013, 03:47
Default
  #3
New Member
 
Amin
Join Date: Dec 2012
Posts: 2
Rep Power: 0
Amiin is on a distinguished road
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
sina.s, hua1015, sharonyue and 1 others like this.

Last edited by Amiin; August 29, 2013 at 07:37.
Amiin is offline   Reply With Quote

Old   August 29, 2013, 14:32
Default
  #4
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
Dear Amin,

thanks a lot

Best regadrs,
Hassan
luckycfd is offline   Reply With Quote

Old   August 31, 2013, 00:43
Default
  #5
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
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
luckycfd is offline   Reply With Quote

Old   September 2, 2013, 02:45
Default
  #6
Senior Member
 
Dongyue Li
Join Date: Jun 2012
Location: Torino, Italy
Posts: 738
Rep Power: 8
sharonyue is on a distinguished road
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?
sharonyue is offline   Reply With Quote

Old   September 9, 2013, 14:27
Default
  #7
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
good question,
I don't know!
luckycfd is offline   Reply With Quote

Old   September 9, 2013, 18:11
Default
  #8
Member
 
Join Date: Nov 2012
Posts: 66
Rep Power: 5
Henning86 is on a distinguished road
if the matrix is symmetric, only the diagonal is stored to save RAM. can be seen in the ldumatrix class
Henning86 is offline   Reply With Quote

Old   September 16, 2013, 02:04
Default
  #9
Member
 
Hassan
Join Date: Oct 2012
Location: Iran
Posts: 63
Rep Power: 5
luckycfd is on a distinguished road
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
luckycfd is offline   Reply With Quote

Old   February 1, 2014, 13:00
Default
  #10
Member
 
Avdeev Evgeniy
Join Date: Jan 2011
Location: Togliatty, Russia
Posts: 56
Blog Entries: 1
Rep Power: 13
j-avdeev will become famous soon enough
Send a message via Skype™ to j-avdeev
Hello, luckycfd.

Probably matricoFoam will help you to understand:
Dumping matrices from OpenFOAM
wyldckat and luckycfd like this.
j-avdeev is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Memory protection in OpenFOAM / combinig with FORTRAN botp OpenFOAM Programming & Development 2 February 15, 2016 13:25
OpenFOAM Foundation Releases OpenFOAMŪ Version 2.1.1 opencfd OpenFOAM Announcements from ESI-OpenCFD 0 May 31, 2012 09:07
OpenFOAM 1.5.x package - CentOS 5.3 x86_64 linnemann OpenFOAM Installation 7 July 30, 2009 03:14
OpenFOAM Install problem masb OpenFOAM 3 May 25, 2009 11:32
The OpenFOAM extensions project mbeaudoin OpenFOAM 16 October 9, 2007 09:33


All times are GMT -4. The time now is 07:02.