38 return {
"code",
"codeInclude",
"localCode"};
45 return {word::null, word::null, word::null};
53 const dynamicCodeContext& context
56 dynCode.setFilterVariable(
"typeName", codeName());
60 word fieldType(pTraits<Type>::typeName);
63 dynCode.setFilterVariable(
"TemplateType", fieldType);
66 fieldType[0] = toupper(fieldType[0]);
67 dynCode.setFilterVariable(
"FieldType", fieldType +
"Field");
70 dynCode.addCompileFile(codeTemplateC(
"codedMixedFvPatchField"));
73 dynCode.addCopyFile(codeTemplateH(
"codedMixedFvPatchField"));
76 dynCode.setFilterVariable(
"verbose",
Foam::name(
bool(debug)));
80 Info<<
"compile " << codeName() <<
" sha1: " << context.sha1() <<
endl;
84 dynCode.setMakeOptions
87 "-I$(LIB_SRC)/finiteVolume/lnInclude \\\n"
89 +
"\n\nLIB_LIBS = \\\n"
91 +
" -lfiniteVolume \\\n"
101 redirectPatchFieldPtr_.
clear();
117 redirectPatchFieldPtr_()
134 redirectPatchFieldPtr_()
147 redirectPatchFieldPtr_()
157 if (!redirectPatchFieldPtr_.valid())
168 redirectPatchFieldPtr_.set
175 this->internalField(),
182 return redirectPatchFieldPtr_();
203 this->refGrad() = fvp.
refGrad();
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Input from memory buffer stream.
void clear()
Clear the list, i.e. set size to zero.
Output to memory buffer stream.
string str() const
Return the string.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
commsTypes
Types of communications.
Base class for function objects and boundary conditions using dynamic code.
void updateLibrary() const
Update library as required.
Constructs on-the-fly a new boundary condition (derived from mixedFvPatchField) which is then used to...
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
Evaluate the patch field.
virtual void write(Ostream &) const
Write.
codedMixedFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
const mixedFvPatchField< Type > & redirectPatchField() const
Get reference to the underlying patchField.
A list of keyword definitions, which are a keyword followed by any number of values (e....
void set(entry *)
Assign a new entry, overwrite any existing entry.
Abstract base class for field mapping.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
This boundary condition provides a base class for 'mixed' type boundary conditions,...
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
Evaluate the patch field.
virtual void write(Ostream &) const
Write.
virtual Field< Type > & refValue()
virtual scalarField & valueFraction()
virtual Field< Type > & refGrad()
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const bool)
Return a word representation of a bool.
void evaluate(GeometricField< Type, PatchField, GeoMesh > &result, const Function1< Type > &func, const GeometricField< Type, PatchField, GeoMesh > &x)