Asymmetric matrix solving on parallel incompressible computation
Hello, I am trying several matrix solvers on incompressible steady-state flow, and currently using GAMG
I found this thread saying that for parallel computation, PBiCGstab with DILU as preconditioner performs best for pressure https://www.cfd-online.com/Forums/op...e-solvers.html However, when I try to implement by myself, according to log, error occurs because my matrix is symmetric while DILU is for asymmetric. I guess this error occurs because decomposePar seperates mesh into several parts and each processor runs n x n matrix where n is # of cell, while what thread wanted is decomposed N x N matrix into many asymmetric matrix calculation. How can I change my matrix solver work so? Or is it best to just replace it with DIC preconditioner? |
The post you refer to does distinguish between the incompressible and compressible case.
In the incompressible case, the pressure matrix is symmetric and positive definite in both the sequential and parallel decomposed case. The advice is to use CG as Krylov solver in both the sequential and parallel decomposed case. The preconditioner should be adapted with the number of subdomains becomes large. The advice is to use GAMG as preconditioner in case of one or a small number of processors. The advice is to replace GAMG by a preconditioner for symmetric matrices such as DIC (as you suggest) in case that the number of subdomains is large. More precise statements depend on the version of GAMG used (PETSC4FOAM or AMGX). |
Thanks for the reply!
Is there reference paper about matrix solvers? I would like to know |
https://netlib.org/templates/templates.pdf
https://www-users.cse.umn.edu/~saad/...Book_2ndEd.pdf and references cited therein |
All times are GMT -4. The time now is 12:47. |