83 bool cacheAgglomeration_;
89 label preSweepsLevelMultiplier_;
98 label postSweepsLevelMultiplier_;
101 label maxPostSweeps_;
104 label nFinestSweeps_;
108 bool interpolateCorrection_;
113 bool scaleCorrection_;
116 bool directSolveCoarsest_;
146 virtual void readControls();
155 const lduMatrix& matrixLevel(
const label i)
const;
172 void agglomerateMatrix
174 const label fineLevelIndex,
180 void agglomerateInterfaceCoefficients
182 const label fineLevelIndex,
195 const label meshComm,
210 void procAgglomerateMatrix
227 void procAgglomerateMatrix
321 void solveCoarsestLevel
static const Foam::dimensionedScalar A("", Foam::dimPressure, 611.21)
A field of fields is a PtrList of fields with reference counting.
Geometric agglomerated algebraic multigrid agglomeration class.
Geometric agglomerated algebraic multigrid preconditioner.
Geometric agglomerated algebraic multigrid solver.
TypeName("GAMG")
Runtime type information.
virtual ~GAMGSolver()
Destructor.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Abstract base-class for lduMatrix solvers.
const FieldField< Field, scalar > & interfaceIntCoeffs() const noexcept
const lduInterfaceFieldPtrsList & interfaces() const noexcept
const lduMatrix & matrix() const noexcept
const FieldField< Field, scalar > & interfaceBouCoeffs() const noexcept
const word & fieldName() const noexcept
lduMatrix is a general matrix class in which the coefficients are stored as three arrays,...
Abstract base class for meshes which provide LDU addressing for the construction of lduMatrix and LDU...
A class for handling words, derived from Foam::string.
const volScalarField & psi
Specialisations of Field<T> for scalar, vector and tensor.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.