CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > General Forums > Main CFD Forum

SIMPLE algorithm: why is the "A" matrix not block-diagonal?

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 14, 2023, 19:42
Default SIMPLE algorithm: why is the "A" matrix not block-diagonal?
  #1
New Member
 
Nik
Join Date: Apr 2021
Posts: 7
Rep Power: 5
NLeb is on a distinguished road
After solving the momentum predictor MU = -grad(p), the next step in the SIMPLE algorithm is to split MU = AU - H, where A is purely diagonal. This A matrix is then inverted to form the "conductivity" term in the pressure Poisson equation div(A^-1 grad(p)) = div(A^-1 H). To me, this seems like it puts unfair weight on the coordinate axes in which the problem is discretised - the eigenvectors of the A matrix will always correspond with flow along the coordinate axes, even if the flow is actually at 45 deg to the axes. This method does get the correct answer eventually though (with some iteration).

So I wonder: what would happen if we used a block-diagonal A? Could this lead to a reduction in the number of inner correctors / SIMPLE iterations required?

E.g. in 3D, each block would be a full 3x3 matrix, capturing the dependence of the x,y,z-momentum equations on each of the x,y,z velocities at that cell (but not on the neighbours' velocities). The A matrix would still be simple to invert: a full 3x3 block is a bit more expensive to invert than just the diagonal, but this cost is completely insignificant compared to the matrix solve for the pressure correction.

My one concern was that then the A matrix would not be symmetric, leading to an asymmetric pressure matrix, but that could be fixed by simply discarding the skew-symmetric component of A (this is implicitly done if we only allow a diagonal A as usual).

Are there any other issues that could crop up with this idea? Or perhaps there isn't any real benefit to doing this?

I've not yet been able to find any papers or textbooks discussing this - if there are such resources, please could someone point me to them?

Last edited by NLeb; July 15, 2023 at 03:24. Reason: eigenvalues vs eigenvectors
NLeb is offline   Reply With Quote

Reply

Tags
simple algorithm


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 Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Looking for simple, robust interface tracking algorithm ThomasTC Main CFD Forum 7 September 26, 2016 06:35
more equation in block matrix system yhaomin2007 OpenFOAM 1 September 6, 2012 09:33
[Commercial meshers] Icem Mesh to Foam jphandrigan OpenFOAM Meshing & Mesh Conversion 4 March 9, 2010 03:58
OpenFOAM version 1.6 details lakeat OpenFOAM Running, Solving & CFD 42 August 26, 2009 22:47
SIMPLE algorithm Jonathan Castro Main CFD Forum 3 December 10, 1999 05:59


All times are GMT -4. The time now is 16:01.