Go to the documentation of this file.
33 template<
class Type,
class DType,
class LUType>
37 const word& fieldName,
42 const word smootherName(smootherDict.
get<
word>(
"smoother"));
46 auto* ctorPtr = symMatrixConstructorTable(smootherName);
53 "symmetric matrix smoother",
55 *symMatrixConstructorTablePtr_
70 auto* ctorPtr = asymMatrixConstructorTable(smootherName);
77 "asymmetric matrix smoother",
79 *asymMatrixConstructorTablePtr_
94 <<
"cannot solve incomplete matrix, no off-diagonal coefficients"
103 template<
class Type,
class DType,
class LUType>
106 const word& fieldName,
110 fieldName_(fieldName),
A class for handling words, derived from Foam::string.
static autoPtr< smoother > New(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &smootherDict)
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
const LduMatrix< Type, DType, LUType > & matrix() const noexcept
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
errorManipArg< error, int > exit(error &err, const int errNo=1)
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const word & fieldName() const noexcept
smoother(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix)
#define FatalIOErrorInFunction(ios)