49 #ifndef nonBlockingGaussSeidelSmoother_H 50 #define nonBlockingGaussSeidelSmoother_H 99 const label blockStart,
nonBlockingGaussSeidelSmoother(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)
Construct from components.
const lduInterfaceFieldPtrsList & interfaces() const noexcept
Variant of gaussSeidelSmoother that expects processor boundary cells to be sorted last and so can blo...
const FieldField< Field, scalar > & interfaceIntCoeffs() const noexcept
const lduMatrix & matrix() const noexcept
static void smooth(const word &fieldName, solveScalarField &psi, const lduMatrix &matrix, const label blockStart, const solveScalarField &source, const FieldField< Field, scalar > &interfaceBouCoeffs, const lduInterfaceFieldPtrsList &interfaces, const direction cmpt, const label nSweeps)
Smooth for the given number of sweeps.
virtual void scalarSmooth(solveScalarField &psi, const solveScalarField &source, const direction cmpt, const label nSweeps) const
Smooth the solution for a given number of sweeps.
A field of fields is a PtrList of fields with reference counting.
Abstract base-class for lduMatrix smoothers.
A class for handling words, derived from Foam::string.
const word & fieldName() const noexcept
const FieldField< Field, scalar > & interfaceBouCoeffs() const noexcept
TypeName("nonBlockingGaussSeidel")
Runtime type information.
lduMatrix is a general matrix class in which the coefficients are stored as three arrays...
const volScalarField & psi