Public Member Functions | Static Public Attributes | List of all members
codedFixedValueFvPatchField< Type > Class Template Reference

Constructs on-the-fly a new boundary condition (derived from fixedValueFvPatchField) which is then used to evaluate. More...

Inheritance diagram for codedFixedValueFvPatchField< Type >:
Inheritance graph
[legend]
Collaboration diagram for codedFixedValueFvPatchField< Type >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("codedFixedValue")
 
 codedFixedValueFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &)
 
 codedFixedValueFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
 
 codedFixedValueFvPatchField (const codedFixedValueFvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
 codedFixedValueFvPatchField (const codedFixedValueFvPatchField< Type > &)
 
virtual tmp< fvPatchField< Type > > clone () const
 
 codedFixedValueFvPatchField (const codedFixedValueFvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 
virtual tmp< fvPatchField< Type > > clone (const DimensionedField< Type, volMesh > &iF) const
 
const fvPatchField< Type > & redirectPatchField () const
 
virtual void updateCoeffs ()
 
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 
virtual void write (Ostream &) const
 
- Public Member Functions inherited from fixedValueFvPatchField< Type >
 TypeName ("fixedValue")
 
 fixedValueFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &)
 
 fixedValueFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Type &value)
 
 fixedValueFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &, const bool valueRequired=true)
 
 fixedValueFvPatchField (const fixedValueFvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
 fixedValueFvPatchField (const fixedValueFvPatchField< Type > &)
 
 fixedValueFvPatchField (const fixedValueFvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 
virtual bool fixesValue () const
 
virtual bool assignable () const
 
virtual tmp< Field< Type > > valueInternalCoeffs (const tmp< scalarField > &) const
 
virtual tmp< Field< Type > > valueBoundaryCoeffs (const tmp< scalarField > &) const
 
virtual tmp< Field< Type > > gradientInternalCoeffs () const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs () const
 
virtual void operator= (const UList< Type > &)
 
virtual void operator= (const fvPatchField< Type > &)
 
virtual void operator+= (const fvPatchField< Type > &)
 
virtual void operator-= (const fvPatchField< Type > &)
 
virtual void operator*= (const fvPatchField< scalar > &)
 
virtual void operator/= (const fvPatchField< scalar > &)
 
virtual void operator+= (const Field< Type > &)
 
virtual void operator-= (const Field< Type > &)
 
virtual void operator*= (const Field< scalar > &)
 
virtual void operator/= (const Field< scalar > &)
 
virtual void operator= (const Type &)
 
virtual void operator+= (const Type &)
 
virtual void operator-= (const Type &)
 
virtual void operator*= (const scalar)
 
virtual void operator/= (const scalar)
 
- Public Member Functions inherited from fvPatchField< Type >
 TypeName ("fvPatchField")
 
 declareRunTimeSelectionTable (tmp, fvPatchField, patch,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF),(p, iF))
 
 declareRunTimeSelectionTable (tmp, fvPatchField, patchMapper,(const fvPatchField< Type > &ptf, const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const fvPatchFieldMapper &m),(dynamic_cast< const fvPatchFieldType & >(ptf), p, iF, m))
 
 declareRunTimeSelectionTable (tmp, fvPatchField, dictionary,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const dictionary &dict),(p, iF, dict))
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Type &value)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const word &patchType)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Field< Type > &)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &, const bool valueRequired=true)
 
 fvPatchField (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
 fvPatchField (const fvPatchField< Type > &)
 
 fvPatchField (const fvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 
virtual tmp< fvPatchField< Type > > clone () const
 
Foam::tmp< Foam::fvPatchField< Type > > NewCalculatedType (const fvPatch &p)
 
Foam::tmp< Foam::fvPatchField< Type > > NewCalculatedType (const fvPatchField< Type2 > &pf)
 
virtual ~fvPatchField ()=default
 
bool useImplicit () const noexcept
 
bool useImplicit (bool on) noexcept
 
virtual bool fixesValue () const
 
virtual bool assignable () const
 
virtual bool coupled () const
 
const objectRegistrydb () const
 
const fvPatchpatch () const
 
const DimensionedField< Type, volMesh > & internalField () const
 
const Field< Type > & primitiveField () const
 
const wordpatchType () const
 
wordpatchType ()
 
bool updated () const
 
bool manipulatedMatrix () const
 
virtual void autoMap (const fvPatchFieldMapper &)
 
virtual void rmap (const fvPatchField< Type > &, const labelList &)
 
virtual tmp< Field< Type > > snGrad () const
 
virtual tmp< Field< Type > > snGrad (const scalarField &deltaCoeffs) const
 
virtual void updateWeightedCoeffs (const scalarField &weights)
 
virtual tmp< Field< Type > > patchInternalField () const
 
virtual void patchInternalField (Field< Type > &) const
 
virtual tmp< Field< Type > > patchNeighbourField () const
 
virtual void initEvaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 
virtual tmp< Field< Type > > valueInternalCoeffs (const tmp< Field< scalar >> &) const
 
virtual tmp< Field< Type > > valueBoundaryCoeffs (const tmp< Field< scalar >> &) const
 
virtual tmp< Field< Type > > gradientInternalCoeffs () const
 
virtual tmp< Field< Type > > gradientInternalCoeffs (const scalarField &deltaCoeffs) const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs () const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs (const scalarField &deltaCoeffs) const
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix)
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix, const scalarField &weights)
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix, const label iMatrix, const direction cmp)
 
void check (const fvPatchField< Type > &) const
 
virtual void operator== (const fvPatchField< Type > &)
 
virtual void operator== (const Field< Type > &)
 
virtual void operator== (const Type &)
 

Static Public Attributes

static constexpr const char *const codeTemplateC = "fixedValueFvPatchFieldTemplate.C"
 
static constexpr const char *const codeTemplateH = "fixedValueFvPatchFieldTemplate.H"
 
- Static Public Attributes inherited from fvPatchField< Type >
static int disallowGenericFvPatchField
 

Additional Inherited Members

- Public Types inherited from fvPatchField< Type >
typedef fvPatch Patch
 
typedef calculatedFvPatchField< Type > Calculated
 
- Static Public Member Functions inherited from fvPatchField< Type >
static tmp< fvPatchField< Type > > New (const word &, const fvPatch &, const DimensionedField< Type, volMesh > &)
 
static tmp< fvPatchField< Type > > New (const word &, const word &actualPatchType, const fvPatch &, const DimensionedField< Type, volMesh > &)
 
static tmp< fvPatchField< Type > > New (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
static tmp< fvPatchField< Type > > New (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
 
static tmp< fvPatchField< Type > > NewCalculatedType (const fvPatch &)
 
static tmp< fvPatchField< Type > > NewCalculatedType (const fvPatchField< Type2 > &)
 
static const wordcalculatedType ()
 
- Protected Member Functions inherited from codedBase
dynamicCodeContextcodeContext ()
 
void setCodeContext (const dictionary &dict)
 
void append (const std::string &str)
 
void updateLibrary (const word &name, const dynamicCodeContext &context) const
 
void updateLibrary (const word &name, const dictionary &dict) const
 
void updateLibrary (const word &name) const
 
 codedBase (const codedBase &)=delete
 
void operator= (const codedBase &)=delete
 
 ClassName ("codedBase")
 
 codedBase ()=default
 
virtual ~codedBase ()=default
 
- Static Protected Member Functions inherited from codedBase
static void writeCodeDict (Ostream &os, const dictionary &dict)
 
static const dictionarycodeDict (const objectRegistry &obr, const word &dictName="codeDict")
 

Detailed Description

template<class Type>
class Foam::codedFixedValueFvPatchField< Type >

Constructs on-the-fly a new boundary condition (derived from fixedValueFvPatchField) which is then used to evaluate.

The code entries:

codeInclude : include files
codeOptions : compiler line: added to EXE_INC (Make/options)
codeLibs : linker line: added to LIB_LIBS (Make/options)
localCode : c++; local static functions
code : c++; patch value assignment
codeContext : additional dictionary context for the code
Usage
Example:
<patchName>
{
    type    codedFixedValue;
    value   uniform 0;
    name    rampedFixedValue;   // name of generated BC

    codeContext
    {
        ...
    }

    code
    #{
        operator==(min(10, 0.1*this->db().time().value()));
    #};

    //codeInclude
    //#{
    //    #include "fvCFD.H"
    //#};

    //codeOptions
    //#{
    //    -I$(LIB_SRC)/finiteVolume/lnInclude
    //#};
}

A special form is if the 'code' section is not supplied. In this case the code is read from a (runTimeModifiable!) dictionary system/codeDict which would have a corresponding entry:

<patchName>
{
    code
    #{
        operator==(min(10, 0.1*this->db().time().value()));
    #};
}
Note
The code context dictionary can be supplied separately as the codeContext entry.
See also
Foam::dynamicCode Foam::functionEntries::codeStream
Source files

Definition at line 140 of file codedFixedValueFvPatchField.H.

Constructor & Destructor Documentation

◆ codedFixedValueFvPatchField() [1/5]

codedFixedValueFvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF 
)

Definition at line 124 of file codedFixedValueFvPatchField.C.

◆ codedFixedValueFvPatchField() [2/5]

codedFixedValueFvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const dictionary dict 
)

Definition at line 154 of file codedFixedValueFvPatchField.C.

◆ codedFixedValueFvPatchField() [3/5]

codedFixedValueFvPatchField ( const codedFixedValueFvPatchField< Type > &  rhs,
const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const fvPatchFieldMapper mapper 
)

Definition at line 137 of file codedFixedValueFvPatchField.C.

◆ codedFixedValueFvPatchField() [4/5]

Definition at line 185 of file codedFixedValueFvPatchField.C.

◆ codedFixedValueFvPatchField() [5/5]

codedFixedValueFvPatchField ( const codedFixedValueFvPatchField< Type > &  rhs,
const DimensionedField< Type, volMesh > &  iF 
)

Definition at line 199 of file codedFixedValueFvPatchField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "codedFixedValue"  )

◆ clone() [1/2]

virtual tmp<fvPatchField<Type> > clone ( ) const
inlinevirtual

Reimplemented from fixedValueFvPatchField< Type >.

Definition at line 231 of file codedFixedValueFvPatchField.H.

◆ clone() [2/2]

virtual tmp<fvPatchField<Type> > clone ( const DimensionedField< Type, volMesh > &  iF) const
inlinevirtual

Reimplemented from fixedValueFvPatchField< Type >.

Definition at line 248 of file codedFixedValueFvPatchField.H.

◆ redirectPatchField()

const Foam::fvPatchField< Type > & redirectPatchField

Definition at line 216 of file codedFixedValueFvPatchField.C.

References dictionaryContent::dict(), Foam::nl, os(), Foam::foamVersion::patch, dictionary::set(), WarningInFunction, and Field::writeEntry().

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs
virtual

Reimplemented from fvPatchField< Type >.

Definition at line 261 of file codedFixedValueFvPatchField.C.

References Foam::operator==().

Here is the call graph for this function:

◆ evaluate()

void evaluate ( const Pstream::commsTypes  commsType = Pstream::commsTypes::blocking)
virtual

Reimplemented from fvPatchField< Type >.

Definition at line 284 of file codedFixedValueFvPatchField.C.

References Foam::stringOps::evaluate().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Reimplemented from fixedValueFvPatchField< Type >.

Definition at line 300 of file codedFixedValueFvPatchField.C.

References os(), and Foam::vtk::write().

Here is the call graph for this function:

Member Data Documentation

◆ codeTemplateC

constexpr const char* const codeTemplateC = "fixedValueFvPatchFieldTemplate.C"
staticconstexpr

Definition at line 186 of file codedFixedValueFvPatchField.H.

◆ codeTemplateH

constexpr const char* const codeTemplateH = "fixedValueFvPatchFieldTemplate.H"
staticconstexpr

Definition at line 190 of file codedFixedValueFvPatchField.H.


The documentation for this class was generated from the following files: