From 0857f479a8fe0cbf94624feaa1f556e0d76d4b0c Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Mon, 5 Sep 2016 11:46:42 +0100 Subject: [PATCH] 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 --- src/OpenFOAM/Make/files | 1 + .../matrices/lduMatrix/solvers/PBiCG/PBiCG.C | 44 +-- .../lduMatrix/solvers/PBiCGStab/PBiCGStab.C | 252 ++++++++++++++++++ .../lduMatrix/solvers/PBiCGStab/PBiCGStab.H | 123 +++++++++ .../pitzDaily/system/fvSolution | 2 +- .../system/fvSolution | 4 +- .../moriyoshiHomogeneous/system/fvSolution | 4 +- .../combustion/chemFoam/gri/system/fvSolution | 2 +- .../combustion/chemFoam/h2/system/fvSolution | 2 +- .../chemFoam/ic8h18/system/fvSolution | 2 +- .../chemFoam/ic8h18_TDAC/system/fvSolution | 2 +- .../chemFoam/nc7h16/system/fvSolution | 2 +- .../engineFoam/kivaTest/system/fvSolution | 2 +- .../system/filmRegion/fvSolution | 6 +- .../system/fvSolution | 2 +- .../system/pyrolysisRegion/fvSolution | 2 +- .../oppositeBurningPanels/system/fvSolution | 2 +- .../system/panelRegion/fvSolution | 2 +- .../les/smallPoolFire2D/system/fvSolution | 2 +- .../les/smallPoolFire3D/system/fvSolution | 2 +- .../counterFlowFlame2D/system/fvSolution | 2 +- .../counterFlowFlame2DLTS/system/fvSolution | 2 +- .../counterFlowFlame2D_GRI/system/fvSolution | 2 +- .../system/fvSolution | 2 +- .../movingCone/system/fvSolution | 2 +- .../sonicDyMFoam/movingCone/system/fvSolution | 2 +- .../ras/nacaAirfoil/system/fvSolution | 2 +- .../europeanCall/system/fvSolution | 2 +- .../hotRoom/system/fvSolution | 2 +- .../hotRoom/system/fvSolution | 2 +- .../iglooWithFridges/system/fvSolution | 2 +- .../hotRoom/system/fvSolution | 2 +- .../buoyantCavity/system/fvSolution | 2 +- .../circuitBoardCooling/system/fvSolution | 2 +- .../externalCoupledCavity/system/fvSolution | 2 +- .../hotRadiationRoom/system/fvSolution | 2 +- .../hotRadiationRoomFvDOM/system/fvSolution | 2 +- .../system/bottomWater/fvSolution | 2 +- .../system/topAir/fvSolution | 2 +- .../system/bottomAir/fvSolution | 2 +- .../system/topAir/fvSolution | 2 +- .../heatExchanger/system/air/fvSolution | 2 +- .../heatExchanger/system/porous/fvSolution | 2 +- .../system/bottomAir/fvSolution | 2 +- .../system/topAir/fvSolution | 2 +- .../simpleFoam/motorBike/system/fvSolution | 38 +-- .../cylinder/system/fvSolution | 4 +- .../hotBoxes/system/fvSolution | 2 +- .../splashPanel/system/fvSolution | 4 +- .../system/wallFilmRegion/fvSolution | 4 +- .../filter/system/fvSolution | 2 +- .../parcelInBox/system/fvSolution | 2 +- .../verticalChannel/system/fvSolution | 2 +- .../sprayFoam/aachenBomb/system/fvSolution | 2 +- .../SnakeRiverCanyon/system/fvSolution | 2 +- .../driftFluxFoam/ras/dahl/system/fvSolution | 3 +- .../ras/mixerVessel2D/system/fvSolution | 4 +- .../ras/tank3D/system/fvSolution | 4 +- 58 files changed, 481 insertions(+), 102 deletions(-) create mode 100644 src/OpenFOAM/matrices/lduMatrix/solvers/PBiCGStab/PBiCGStab.C create mode 100644 src/OpenFOAM/matrices/lduMatrix/solvers/PBiCGStab/PBiCGStab.H diff --git a/src/OpenFOAM/Make/files b/src/OpenFOAM/Make/files index e530cb2a00..bcd75424a5 100644 --- a/src/OpenFOAM/Make/files +++ b/src/OpenFOAM/Make/files @@ -271,6 +271,7 @@ $(lduMatrix)/solvers/diagonalSolver/diagonalSolver.C $(lduMatrix)/solvers/smoothSolver/smoothSolver.C $(lduMatrix)/solvers/PCG/PCG.C $(lduMatrix)/solvers/PBiCG/PBiCG.C +$(lduMatrix)/solvers/PBiCGStab/PBiCGStab.C $(lduMatrix)/smoothers/GaussSeidel/GaussSeidelSmoother.C $(lduMatrix)/smoothers/symGaussSeidel/symGaussSeidelSmoother.C diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/PBiCG/PBiCG.C b/src/OpenFOAM/matrices/lduMatrix/solvers/PBiCG/PBiCG.C index 3d43c64a0d..092877e7a8 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/PBiCG/PBiCG.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/PBiCG/PBiCG.C @@ -76,37 +76,25 @@ Foam::solverPerformance Foam::PBiCG::solve fieldName_ ); - label nCells = psi.size(); + const label nCells = psi.size(); scalar* __restrict__ psiPtr = psi.begin(); scalarField pA(nCells); scalar* __restrict__ pAPtr = pA.begin(); - scalarField pT(nCells, 0.0); - scalar* __restrict__ pTPtr = pT.begin(); - scalarField wA(nCells); scalar* __restrict__ wAPtr = wA.begin(); - scalarField wT(nCells); - scalar* __restrict__ wTPtr = wT.begin(); - - scalar wArT = solverPerf.great_; - scalar wArTold = wArT; - - // --- Calculate A.psi and T.psi + // --- Calculate A.psi matrix_.Amul(wA, psi, interfaceBouCoeffs_, interfaces_, cmpt); - matrix_.Tmul(wT, psi, interfaceIntCoeffs_, interfaces_, cmpt); - // --- Calculate initial residual and transpose residual fields + // --- Calculate initial residual field scalarField rA(source - wA); - scalarField rT(source - wT); scalar* __restrict__ rAPtr = rA.begin(); - scalar* __restrict__ rTPtr = rT.begin(); // --- Calculate normalisation factor - scalar normFactor = this->normFactor(psi, source, wA, pA); + const scalar normFactor = this->normFactor(psi, source, wA, pA); if (lduMatrix::debug >= 2) { @@ -126,6 +114,22 @@ Foam::solverPerformance Foam::PBiCG::solve || !solverPerf.checkConvergence(tolerance_, relTol_) ) { + scalarField pT(nCells, 0); + scalar* __restrict__ pTPtr = pT.begin(); + + scalarField wT(nCells); + scalar* __restrict__ wTPtr = wT.begin(); + + // --- Calculate T.psi + matrix_.Tmul(wT, psi, interfaceIntCoeffs_, interfaces_, cmpt); + + // --- Calculate initial transpose residual field + scalarField rT(source - wT); + scalar* __restrict__ rTPtr = rT.begin(); + + // --- Initial value not used + scalar wArT = 0; + // --- Select and construct the preconditioner autoPtr preconPtr = lduMatrix::preconditioner::New @@ -138,7 +142,7 @@ Foam::solverPerformance Foam::PBiCG::solve do { // --- Store previous wArT - wArTold = wArT; + const scalar wArTold = wArT; // --- Precondition residuals preconPtr->precondition(wA, rA, cmpt); @@ -157,7 +161,7 @@ Foam::solverPerformance Foam::PBiCG::solve } else { - scalar beta = wArT/wArTold; + const scalar beta = wArT/wArTold; for (label cell=0; cell. + +\*---------------------------------------------------------------------------*/ + +#include "PBiCGStab.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeNameAndDebug(PBiCGStab, 0); + + lduMatrix::solver::addasymMatrixConstructorToTable + addPBiCGStabAsymMatrixConstructorToTable_; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::PBiCGStab::PBiCGStab +( + const word& fieldName, + const lduMatrix& matrix, + const FieldField& interfaceBouCoeffs, + const FieldField& interfaceIntCoeffs, + const lduInterfaceFieldPtrsList& interfaces, + const dictionary& solverControls +) +: + lduMatrix::solver + ( + fieldName, + matrix, + interfaceBouCoeffs, + interfaceIntCoeffs, + interfaces, + solverControls + ) +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +Foam::solverPerformance Foam::PBiCGStab::solve +( + scalarField& psi, + const scalarField& source, + const direction cmpt +) const +{ + // --- Setup class containing solver performance data + solverPerformance solverPerf + ( + lduMatrix::preconditioner::getName(controlDict_) + typeName, + fieldName_ + ); + + const label nCells = psi.size(); + + scalar* __restrict__ psiPtr = psi.begin(); + + scalarField pA(nCells); + scalar* __restrict__ pAPtr = pA.begin(); + + scalarField yA(nCells); + scalar* __restrict__ yAPtr = yA.begin(); + + // --- Calculate A.psi + matrix_.Amul(yA, psi, interfaceBouCoeffs_, interfaces_, cmpt); + + // --- Calculate initial residual field + scalarField rA(source - yA); + scalar* __restrict__ rAPtr = rA.begin(); + + // --- Calculate normalisation factor + const scalar normFactor = this->normFactor(psi, source, yA, pA); + + if (lduMatrix::debug >= 2) + { + Info<< " Normalisation factor = " << normFactor << endl; + } + + // --- Calculate normalised residual norm + solverPerf.initialResidual() = + gSumMag(rA, matrix().mesh().comm()) + /normFactor; + solverPerf.finalResidual() = solverPerf.initialResidual(); + + // --- Check convergence, solve if not converged + if + ( + minIter_ > 0 + || !solverPerf.checkConvergence(tolerance_, relTol_) + ) + { + scalarField AyA(nCells); + scalar* __restrict__ AyAPtr = AyA.begin(); + + scalarField sA(nCells); + scalar* __restrict__ sAPtr = sA.begin(); + + scalarField zA(nCells); + scalar* __restrict__ zAPtr = zA.begin(); + + scalarField tA(nCells); + scalar* __restrict__ tAPtr = tA.begin(); + + // --- Store initial residual + const scalarField rA0(rA); + + // --- Initial values not used + scalar rA0rA = 0; + scalar alpha = 0; + scalar omega = 0; + + // --- Select and construct the preconditioner + autoPtr preconPtr = + lduMatrix::preconditioner::New + ( + *this, + controlDict_ + ); + + // --- Solver iteration + do + { + // --- Store previous rA0rA + const scalar rA0rAold = rA0rA; + + rA0rA = gSumProd(rA0, rA, matrix().mesh().comm()); + + // --- Test for singularity + if (solverPerf.checkSingularity(mag(rA0rA))) + { + break; + } + + // --- Update pA + if (solverPerf.nIterations() == 0) + { + for (label cell=0; cellprecondition(yA, pA, cmpt); + + // --- Calculate AyA + matrix_.Amul(AyA, yA, interfaceBouCoeffs_, interfaces_, cmpt); + + const scalar rA0AyA = gSumProd(rA0, AyA, matrix().mesh().comm()); + + alpha = rA0rA/rA0AyA; + + // --- Calculate sA + for (label cell=0; cellprecondition(zA, sA, cmpt); + + // --- Calculate tA + matrix_.Amul(tA, zA, interfaceBouCoeffs_, interfaces_, cmpt); + + const scalar tAtA = gSumSqr(tA, matrix().mesh().comm()); + + // --- Calculate omega from tA and sA + // (cheaper than using zA with preconditioned tA) + omega = gSumProd(tA, sA)/tAtA; + + // --- Update solution and residual + for (label cell=0; cell. + +Class + Foam::PBiCGStab + +Description + Preconditioned bi-conjugate gradient stabilized solver for asymmetric + lduMatrices using a run-time selectable preconditiioner. + + References: + \verbatim + 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. + \endverbatim + +SourceFiles + PBiCGStab.C + +\*---------------------------------------------------------------------------*/ + +#ifndef PBiCGStab_H +#define PBiCGStab_H + +#include "lduMatrix.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class PBiCGStab Declaration +\*---------------------------------------------------------------------------*/ + +class PBiCGStab +: + public lduMatrix::solver +{ + // Private Member Functions + + //- Disallow default bitwise copy construct + PBiCGStab(const PBiCGStab&); + + //- Disallow default bitwise assignment + void operator=(const PBiCGStab&); + + +public: + + //- Runtime type information + TypeName("PBiCGStab"); + + + // Constructors + + //- Construct from matrix components and solver data stream + PBiCGStab + ( + const word& fieldName, + const lduMatrix& matrix, + const FieldField& interfaceBouCoeffs, + const FieldField& interfaceIntCoeffs, + const lduInterfaceFieldPtrsList& interfaces, + const dictionary& solverControls + ); + + + //- Destructor + virtual ~PBiCGStab() + {} + + + // Member Functions + + //- Solve the matrix with this solver + virtual solverPerformance solve + ( + scalarField& psi, + const scalarField& source, + const direction cmpt=0 + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution index 245dcb70fe..07d6974305 100644 --- a/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution +++ b/tutorials/basic/scalarTransportFoam/pitzDaily/system/fvSolution @@ -19,7 +19,7 @@ solvers { T { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0; diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution index b76b24182e..a7a0765cd3 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution @@ -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; diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/system/fvSolution b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/system/fvSolution index 706044c8b1..800bf49f35 100644 --- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/system/fvSolution +++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/system/fvSolution @@ -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; diff --git a/tutorials/combustion/chemFoam/gri/system/fvSolution b/tutorials/combustion/chemFoam/gri/system/fvSolution index c090558aa2..6b16dd4035 100644 --- a/tutorials/combustion/chemFoam/gri/system/fvSolution +++ b/tutorials/combustion/chemFoam/gri/system/fvSolution @@ -19,7 +19,7 @@ solvers { Yi { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/combustion/chemFoam/h2/system/fvSolution b/tutorials/combustion/chemFoam/h2/system/fvSolution index c090558aa2..6b16dd4035 100644 --- a/tutorials/combustion/chemFoam/h2/system/fvSolution +++ b/tutorials/combustion/chemFoam/h2/system/fvSolution @@ -19,7 +19,7 @@ solvers { Yi { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/combustion/chemFoam/ic8h18/system/fvSolution b/tutorials/combustion/chemFoam/ic8h18/system/fvSolution index c090558aa2..6b16dd4035 100644 --- a/tutorials/combustion/chemFoam/ic8h18/system/fvSolution +++ b/tutorials/combustion/chemFoam/ic8h18/system/fvSolution @@ -19,7 +19,7 @@ solvers { Yi { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution index c090558aa2..6b16dd4035 100644 --- a/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution +++ b/tutorials/combustion/chemFoam/ic8h18_TDAC/system/fvSolution @@ -19,7 +19,7 @@ solvers { Yi { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/combustion/chemFoam/nc7h16/system/fvSolution b/tutorials/combustion/chemFoam/nc7h16/system/fvSolution index c090558aa2..6b16dd4035 100644 --- a/tutorials/combustion/chemFoam/nc7h16/system/fvSolution +++ b/tutorials/combustion/chemFoam/nc7h16/system/fvSolution @@ -19,7 +19,7 @@ solvers { Yi { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/combustion/engineFoam/kivaTest/system/fvSolution b/tutorials/combustion/engineFoam/kivaTest/system/fvSolution index b164746874..64ba5515ca 100644 --- a/tutorials/combustion/engineFoam/kivaTest/system/fvSolution +++ b/tutorials/combustion/engineFoam/kivaTest/system/fvSolution @@ -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; diff --git a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution index e247ccbf42..0dd063c8aa 100644 --- a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution +++ b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/filmRegion/fvSolution @@ -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; diff --git a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/fvSolution b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/fvSolution index 12f3b66435..fc3a6c4ab9 100644 --- a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/fvSolution @@ -57,7 +57,7 @@ solvers "(U|Yi|h|k)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-8; relTol 0.1; diff --git a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution index 45714f1a1d..b400e253fb 100644 --- a/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution +++ b/tutorials/combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/pyrolysisRegion/fvSolution @@ -26,7 +26,7 @@ solvers "Yi" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0; diff --git a/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/fvSolution b/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/fvSolution index 1329cb1cab..7bacd5c63a 100644 --- a/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/fvSolution @@ -47,7 +47,7 @@ solvers "(U|Yi|k|h|omega)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/panelRegion/fvSolution b/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/panelRegion/fvSolution index 88bd5c58e9..08c57ca2b0 100644 --- a/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/panelRegion/fvSolution +++ b/tutorials/combustion/fireFoam/les/oppositeBurningPanels/system/panelRegion/fvSolution @@ -26,7 +26,7 @@ solvers "Yi" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0; diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution index dcf0353bf2..4506a37939 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution @@ -56,7 +56,7 @@ solvers "(U|Yi|k|h|omega)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution index a26c2f30b9..e89bec79c8 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution @@ -48,7 +48,7 @@ solvers "(U|Yi|k|h)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution index 7491893cc3..7ff37c8434 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/system/fvSolution @@ -39,7 +39,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution index 4d0db2d721..38d9937828 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/system/fvSolution @@ -38,7 +38,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution index 7491893cc3..7ff37c8434 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/fvSolution @@ -39,7 +39,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution index 7491893cc3..7ff37c8434 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/fvSolution @@ -39,7 +39,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/compressible/rhoCentralDyMFoam/movingCone/system/fvSolution b/tutorials/compressible/rhoCentralDyMFoam/movingCone/system/fvSolution index 5161002b21..7a434bd220 100644 --- a/tutorials/compressible/rhoCentralDyMFoam/movingCone/system/fvSolution +++ b/tutorials/compressible/rhoCentralDyMFoam/movingCone/system/fvSolution @@ -19,7 +19,7 @@ solvers { p { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0.01; diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution index 5161002b21..7a434bd220 100644 --- a/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution +++ b/tutorials/compressible/sonicDyMFoam/movingCone/system/fvSolution @@ -19,7 +19,7 @@ solvers { p { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0.01; diff --git a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/system/fvSolution b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/system/fvSolution index afc24d24a2..1a0146a644 100644 --- a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/system/fvSolution +++ b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/system/fvSolution @@ -24,7 +24,7 @@ solvers "p.*" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-12; relTol 0; diff --git a/tutorials/financial/financialFoam/europeanCall/system/fvSolution b/tutorials/financial/financialFoam/europeanCall/system/fvSolution index 3b95a48479..14d17e1f97 100644 --- a/tutorials/financial/financialFoam/europeanCall/system/fvSolution +++ b/tutorials/financial/financialFoam/europeanCall/system/fvSolution @@ -19,7 +19,7 @@ solvers { V { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-05; relTol 0; diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution index 324df46ada..dfaf067c87 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/system/fvSolution @@ -33,7 +33,7 @@ solvers "(U|T|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution index a5df85e653..6965c865a5 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution @@ -27,7 +27,7 @@ solvers "(U|T|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-05; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution index 627615c534..5e871f1bb6 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution @@ -27,7 +27,7 @@ solvers "(U|T|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-07; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution index 7127fdc8c6..4e0487cd9e 100644 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/system/fvSolution @@ -41,7 +41,7 @@ solvers "(U|h|e|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution index 90ffdd49b0..17183ab5c4 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution @@ -29,7 +29,7 @@ solvers "(U|h|k|epsilon|omega)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-8; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution index 66346036c9..7f853270fc 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/fvSolution @@ -29,7 +29,7 @@ solvers "(U|h|k|epsilon|omega)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.01; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/externalCoupledCavity/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/externalCoupledCavity/system/fvSolution index d9b7d98e9f..de519c1e15 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/externalCoupledCavity/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/externalCoupledCavity/system/fvSolution @@ -29,7 +29,7 @@ solvers "(U|h|k|epsilon|omega)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-8; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution index c4fd0cde06..24cdb30297 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoom/system/fvSolution @@ -27,7 +27,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-05; relTol 0.1; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution index 42b3fef285..f610c939f5 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRadiationRoomFvDOM/system/fvSolution @@ -37,7 +37,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-05; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution index 07635c7d23..0eb178deb7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/fvSolution @@ -50,7 +50,7 @@ solvers "(U|h|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution index 07635c7d23..0eb178deb7 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution @@ -50,7 +50,7 @@ solvers "(U|h|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution index 1527d53d6d..066616d553 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution @@ -43,7 +43,7 @@ solvers "(U|h|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution index 1527d53d6d..066616d553 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution @@ -43,7 +43,7 @@ solvers "(U|h|k|epsilon|R)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution index f8de0ffe7c..895988eace 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/fvSolution @@ -31,7 +31,7 @@ solvers "(U|h|e|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution index f912142c5f..945f8ea247 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/fvSolution @@ -30,7 +30,7 @@ solvers "(U|h|e|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution index fc149dff1e..2f353374cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/fvSolution @@ -36,7 +36,7 @@ solvers "(U|h|k|epsilon|G|Ii)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution index fc149dff1e..2f353374cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/fvSolution @@ -36,7 +36,7 @@ solvers "(U|h|k|epsilon|G|Ii)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-7; relTol 0.1; diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution b/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution index 1aa8af7b27..e19623c35d 100644 --- a/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution +++ b/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution @@ -18,10 +18,10 @@ solvers { p { - solver GAMG; - tolerance 1e-7; - relTol 0.01; - smoother GaussSeidel; + solver GAMG; + smoother GaussSeidel; + tolerance 1e-7; + relTol 0.01; } Phi @@ -31,29 +31,29 @@ solvers U { - solver smoothSolver; - smoother GaussSeidel; - tolerance 1e-8; - relTol 0.1; - nSweeps 1; + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; } k { - solver smoothSolver; - smoother GaussSeidel; - tolerance 1e-8; - relTol 0.1; - nSweeps 1; + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; } omega { - solver smoothSolver; - smoother GaussSeidel; - tolerance 1e-8; - relTol 0.1; - nSweeps 1; + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; } } diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/cylinder/system/fvSolution b/tutorials/lagrangian/reactingParcelFilmFoam/cylinder/system/fvSolution index 63c6e0ce0f..a1faf2da4e 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/cylinder/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFilmFoam/cylinder/system/fvSolution @@ -70,14 +70,14 @@ solvers "(h|Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; } hFinal { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/fvSolution b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/fvSolution index 59523edc89..cb05b065e8 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/fvSolution @@ -34,7 +34,7 @@ solvers "(U|h|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-5; relTol 0.1; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/fvSolution b/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/fvSolution index d10b1fda26..3bb49837a4 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/fvSolution @@ -66,14 +66,14 @@ solvers "(h|Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; } hFinal { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/wallFilmRegion/fvSolution b/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/wallFilmRegion/fvSolution index ae07f4217a..0aab30d80a 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/wallFilmRegion/fvSolution +++ b/tutorials/lagrangian/reactingParcelFilmFoam/splashPanel/system/wallFilmRegion/fvSolution @@ -19,14 +19,14 @@ solvers { "(Uf|hf|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; diff --git a/tutorials/lagrangian/reactingParcelFoam/filter/system/fvSolution b/tutorials/lagrangian/reactingParcelFoam/filter/system/fvSolution index 7248e662be..1914fbdcbb 100644 --- a/tutorials/lagrangian/reactingParcelFoam/filter/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFoam/filter/system/fvSolution @@ -64,7 +64,7 @@ solvers "(Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/lagrangian/reactingParcelFoam/parcelInBox/system/fvSolution b/tutorials/lagrangian/reactingParcelFoam/parcelInBox/system/fvSolution index 6d07e4ca22..b2d5ddbe44 100644 --- a/tutorials/lagrangian/reactingParcelFoam/parcelInBox/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFoam/parcelInBox/system/fvSolution @@ -65,7 +65,7 @@ solvers "(Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/lagrangian/reactingParcelFoam/verticalChannel/system/fvSolution b/tutorials/lagrangian/reactingParcelFoam/verticalChannel/system/fvSolution index 404226dba7..71738b6dc9 100644 --- a/tutorials/lagrangian/reactingParcelFoam/verticalChannel/system/fvSolution +++ b/tutorials/lagrangian/reactingParcelFoam/verticalChannel/system/fvSolution @@ -69,7 +69,7 @@ solvers "(Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/lagrangian/sprayFoam/aachenBomb/system/fvSolution b/tutorials/lagrangian/sprayFoam/aachenBomb/system/fvSolution index a9aed26fba..86340f5250 100644 --- a/tutorials/lagrangian/sprayFoam/aachenBomb/system/fvSolution +++ b/tutorials/lagrangian/sprayFoam/aachenBomb/system/fvSolution @@ -64,7 +64,7 @@ solvers "(Yi|O2|N2|H2O)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0; diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/fvSolution b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/fvSolution index 028c7d8818..236f0297a1 100644 --- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/fvSolution +++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/fvSolution @@ -27,7 +27,7 @@ solvers U { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; tolerance 1e-05; relTol 0; diff --git a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution index 5cedaa31cf..820077fa96 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/dahl/system/fvSolution @@ -59,9 +59,8 @@ solvers "(U|k|epsilon)" { - solver PBiCG; + solver PBiCGStab; preconditioner DILU; - smoother symGaussSeidel; tolerance 1e-7; relTol 0.1; minIter 1; diff --git a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution index d2397321ec..23a99325b0 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/mixerVessel2D/system/fvSolution @@ -67,8 +67,8 @@ solvers "(U|k|epsilon)" { - solver smoothSolver; - smoother symGaussSeidel; + solver PBiCGStab; + preconditioner DILU; tolerance 1e-6; relTol 0.1; } diff --git a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution index ed4bd47af8..9c3d51f7c5 100644 --- a/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution +++ b/tutorials/multiphase/driftFluxFoam/ras/tank3D/system/fvSolution @@ -59,8 +59,8 @@ solvers "(U|k|epsilon)" { - solver smoothSolver; - smoother symGaussSeidel; + solver PBiCGStab; + preconditioner DILU; tolerance 1e-7; relTol 0.1; minIter 1;