37 if (expressions::patchExprFieldBase::debug_ && !debug)
54 expressions::patchExprFieldBase(),
56 driver_(this->patch())
70 expressions::patchExprFieldBase(rhs),
72 driver_(this->patch(), rhs.driver_, dict_)
85 const bool valueRequired
89 expressions::patchExprFieldBase
108 driver_(this->patch(), dict_)
114 if (this->valueExpr_.empty())
117 <<
"The valueExpr was not defined!" <<
nl
122 driver_.readDict(dict_);
133 (*this) == this->patchInternalField();
137 <<
"No value defined for "
138 << this->internalField().name() <<
" on "
139 << this->
patch().name() <<
" - using patch internal field" <<
endl;
143 if (this->evalOnConstruct_)
158 expressions::patchExprFieldBase(rhs),
160 driver_(this->patch(), rhs.driver_, dict_)
175 expressions::patchExprFieldBase(rhs),
177 driver_(this->patch(), rhs.driver_, dict_)
197 <<
"Value: " << this->valueExpr_ <<
nl
199 driver_.writeVariableStrings(
Info) <<
nl;
206 bool evalValue = (!this->valueExpr_.empty() && this->valueExpr_ !=
"0");
209 driver_.clearVariables();
213 (*this) == driver_.evaluate<Type>(this->valueExpr_);
221 this->parent_bctype::updateCoeffs();
228 this->parent_bctype::write(
os);
231 driver_.writeCommon(
os, this->debug_ || debug);
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
void size(const label n)
Older name for setAddressableSize.
A wrapper for dictionary content, without operators that could affect inheritance patterns.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
bool found(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Search for an entry (const access) with the given keyword.
A fixed value boundary condition with expressions.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
void setDebug()
Set debug ON if "debug" is enabled.
expectedTypes
Enumeration of expected expressions.
This boundary condition supplies a fixed value constraint, and is the base class for a number of othe...
virtual bool write()
Write the output fields.
A FieldMapper for finite-volume patch fields.
friend Ostream & operator(Ostream &, const fvPatchField< Type > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
OBJstream os(runTime.globalPath()/outputName)
#define WarningInFunction
Report a warning using Foam::Warning.
#define DebugInFunction
Report an information message using Foam::Info.
#define InfoInFunction
Report an information message using Foam::Info.
const std::string patch
OpenFOAM patch number as a std::string.
string evaluate(label fieldWidth, const std::string &s, size_t pos=0, size_t len=std::string::npos)
String evaluation with specified (positive, non-zero) field width.
messageStream Info
Information stream (stdout output on master, null elsewhere)
Ostream & endl(Ostream &os)
Add newline and flush stream.
static constexpr const zero Zero
Global zero (0)
errorManipArg< error, int > exit(error &err, const int errNo=1)
constexpr char nl
The newline '\n' character (0x0a)