50 <<
"Grad scheme not specified" <<
endl <<
endl
51 <<
"Valid grad schemes are :" <<
endl
52 << IstreamConstructorTablePtr_->sortedToc()
56 const word schemeName(schemeData);
58 auto* ctorPtr = IstreamConstructorTable(schemeName);
67 *IstreamConstructorTablePtr_
71 return ctorPtr(
mesh, schemeData);
96 GradFieldType* pgGrad =
97 mesh().objectRegistry::template getObjectPtr<GradFieldType>(
name);
99 if (!this->
mesh().cache(
name) || this->
mesh().topoChanging())
102 if (pgGrad && pgGrad->ownedByRegistry())
122 if (pgGrad->upToDate(vsf) && this->mesh().upToDatePoints(*pgGrad))
152 return grad(vsf,
"grad(" + vsf.
name() +
')');
193 <<
" into " << result.name() <<
endl;
195 result = calcGrad(vsf, result.name());
Generic GeometricField class.
const word & name() const noexcept
Return the object name.
bool eof() const noexcept
True if end of input seen.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Mesh data needed to do the Finite Volume discretisation.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > calcGrad(const GeometricField< Type, fvPatchField, volMesh > &, const word &name) const =0
Calculate and return the grad of the given field.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad(const GeometricField< Type, fvPatchField, volMesh > &, const word &name) const
Calculate and return the grad of the given field which may have been cached.
const fvMesh & mesh() const
Return const reference to mesh.
static tmp< gradScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return a pointer to a new gradScheme created on freestore.
typeOfRank< typenamepTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank)>::type type
bool store()
Register object with its registry and transfer ownership to the registry.
static void cachePrintMessage(const char *message, const word &name, const FieldType &fld)
Helper for printing cache message.
A class for managing temporary objects.
Mesh data needed to do the Finite Volume discretisation.
A class for handling words, derived from Foam::string.
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
#define InfoInFunction
Report an information message using Foam::Info.
#define DebugPout
Report an information message using Foam::Pout.
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
errorManipArg< error, int > exit(error &err, const int errNo=1)