PBiCGStab: New preconditioned bi-conjugate gradient stabilized solver for asymmetric lduMatrices
using a run-time selectable preconditioner
References:
Van der Vorst, H. A. (1992).
Bi-CGSTAB: A fast and smoothly converging variant of Bi-CG
for the solution of nonsymmetric linear systems.
SIAM Journal on scientific and Statistical Computing, 13(2), 631-644.
Barrett, R., Berry, M. W., Chan, T. F., Demmel, J., Donato, J.,
Dongarra, J., Eijkhout, V., Pozo, R., Romine, C. & Van der Vorst, H.
(1994).
Templates for the solution of linear systems:
building blocks for iterative methods
(Vol. 43). Siam.
See also: https://en.wikipedia.org/wiki/Biconjugate_gradient_stabilized_method
Tests have shown that PBiCGStab with the DILU preconditioner is more
robust, reliable and shows faster convergence (~2x) than PBiCG with
DILU, in particular in parallel where PBiCG occasionally diverges.
This remarkable improvement over PBiCG prompted the update of all
tutorial cases currently using PBiCG to use PBiCGStab instead. If any
issues arise with this update please report on Mantis: http://bugs.openfoam.org
This commit is contained in:
@ -49,7 +49,7 @@ solvers
|
||||
|
||||
"(b|Xi|ft|ha|hau|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-06;
|
||||
relTol 0.1;
|
||||
@ -57,7 +57,7 @@ solvers
|
||||
|
||||
"(b|Xi|ft|ha|hau|k|epsilon)Final"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
|
||||
@ -34,7 +34,7 @@ solvers
|
||||
|
||||
"(U|b|Su|Xi|ha|hau|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-05;
|
||||
relTol 0.1;
|
||||
@ -42,7 +42,7 @@ solvers
|
||||
|
||||
"(U|b|Su|Xi|ha|hau|k|epsilon)Final"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-05;
|
||||
relTol 0;
|
||||
|
||||
@ -19,7 +19,7 @@ solvers
|
||||
{
|
||||
Yi
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
|
||||
@ -19,7 +19,7 @@ solvers
|
||||
{
|
||||
Yi
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
|
||||
@ -19,7 +19,7 @@ solvers
|
||||
{
|
||||
Yi
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
|
||||
@ -19,7 +19,7 @@ solvers
|
||||
{
|
||||
Yi
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
|
||||
@ -19,7 +19,7 @@ solvers
|
||||
{
|
||||
Yi
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-12;
|
||||
relTol 0;
|
||||
|
||||
@ -49,7 +49,7 @@ solvers
|
||||
|
||||
"(U|Xi|hau|eau|ft|b|ha|ea|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-05;
|
||||
relTol 0.1;
|
||||
|
||||
@ -19,21 +19,21 @@ solvers
|
||||
{
|
||||
hf
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 0;
|
||||
relTol 1e-3;
|
||||
}
|
||||
"(Uf|deltaf\*rhof)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-10;
|
||||
relTol 0;
|
||||
}
|
||||
deltaf
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-10;
|
||||
relTol 0;
|
||||
|
||||
@ -57,7 +57,7 @@ solvers
|
||||
|
||||
"(U|Yi|h|k)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-8;
|
||||
relTol 0.1;
|
||||
|
||||
@ -26,7 +26,7 @@ solvers
|
||||
|
||||
"Yi"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
|
||||
@ -47,7 +47,7 @@ solvers
|
||||
|
||||
"(U|Yi|k|h|omega)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -26,7 +26,7 @@ solvers
|
||||
|
||||
"Yi"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
|
||||
@ -56,7 +56,7 @@ solvers
|
||||
|
||||
"(U|Yi|k|h|omega)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -48,7 +48,7 @@ solvers
|
||||
|
||||
"(U|Yi|k|h)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -39,7 +39,7 @@ solvers
|
||||
|
||||
"(U|h|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -38,7 +38,7 @@ solvers
|
||||
|
||||
"(U|h|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -39,7 +39,7 @@ solvers
|
||||
|
||||
"(U|h|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
@ -39,7 +39,7 @@ solvers
|
||||
|
||||
"(U|h|k|epsilon)"
|
||||
{
|
||||
solver PBiCG;
|
||||
solver PBiCGStab;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-6;
|
||||
relTol 0.1;
|
||||
|
||||
Reference in New Issue
Block a user