Go to the documentation of this file.
51 solverControls.
lookupEntry(
"smoother", keyType::LITERAL);
55 e.dict().readEntry(
"smoother",
name);
68 const word& fieldName,
80 solverControls.
lookupEntry(
"smoother", keyType::LITERAL);
84 e.dict().readEntry(
"smoother",
name);
96 auto cstrIter = symMatrixConstructorTablePtr_->cfind(
name);
98 if (!cstrIter.found())
103 "symmetric matrix smoother",
105 *symMatrixConstructorTablePtr_
123 auto cstrIter = asymMatrixConstructorTablePtr_->cfind(
name);
125 if (!cstrIter.found())
130 "asymmetric matrix smoother",
132 *asymMatrixConstructorTablePtr_
150 <<
"cannot solve incomplete matrix, "
151 "no diagonal or off-diagonal coefficient"
162 const word& fieldName,
169 fieldName_(fieldName),
171 interfaceBouCoeffs_(interfaceBouCoeffs),
172 interfaceIntCoeffs_(interfaceIntCoeffs),
173 interfaces_(interfaces)
A keyword and a list of tokens is an 'entry'.
A class for handling words, derived from Foam::string.
A field of fields is a PtrList of fields with reference counting.
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
lduMatrix is a general matrix class in which the coefficients are stored as three arrays,...
const entry & lookupEntry(const word &keyword, enum keyType::option matchOpt) const
Search for an entry (const access) with the given keyword.
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
word name(const complex &c)
Return string representation of complex.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
static word getName(const dictionary &)
Find the smoother name (directly or from a sub-dictionary)
static autoPtr< smoother > New(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls)
Return a new smoother.
errorManipArg< error, int > exit(error &err, const int errNo=1)
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
smoother(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)
const dimensionedScalar e
Elementary charge.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.