51 const dynamicCodeContext& context
54 dynCode.setFilterVariable(
"typeName", codeName());
58 word fieldType(pTraits<Type>::typeName);
61 dynCode.setFilterVariable(
"TemplateType", fieldType);
64 fieldType[0] = toupper(fieldType[0]);
65 dynCode.setFilterVariable(
"FieldType", fieldType +
"Field");
68 dynCode.addCompileFile(codeTemplateC(
"codedMixedFvPatchField"));
71 dynCode.addCopyFile(codeTemplateH(
"codedMixedFvPatchField"));
76 dynCode.setFilterVariable(
"verbose",
"true");
77 Info<<
"compile " << codeName() <<
" sha1: "
78 << context.sha1() <<
endl;
82 dynCode.setMakeOptions
85 "-I$(LIB_SRC)/finiteVolume/lnInclude \\\n"
87 +
"\n\nLIB_LIBS = \\\n"
89 +
" -lfiniteVolume \\\n"
99 redirectPatchFieldPtr_.
clear();
115 redirectPatchFieldPtr_()
132 redirectPatchFieldPtr_()
145 redirectPatchFieldPtr_()
155 if (!redirectPatchFieldPtr_.valid())
166 redirectPatchFieldPtr_.set
173 this->internalField(),
180 return redirectPatchFieldPtr_();
201 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.
Foam::fvPatchFieldMapper.
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.
void evaluate(GeometricField< Type, PatchField, GeoMesh > &result, const Function1< Type > &func, const GeometricField< Type, PatchField, GeoMesh > &x)