Constructs on-the-fly fvModel source from user-supplied code. More...
Public Member Functions | |
TypeName ("coded") | |
Runtime type information. More... | |
codedFvModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
virtual wordList | addSupFields () const |
Return the list of fields for which the fvModel adds source term. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_SUP) | |
Add a source term to an equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_RHO_SUP) | |
Add a source term to a compressible equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_ALPHA_RHO_SUP) | |
Add a source term to a phase equation. More... | |
virtual void | updateMesh (const mapPolyMesh &) |
Update for mesh changes. More... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
Public Member Functions inherited from fvModel | |
TypeName ("fvModel") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, fvModel, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh)) | |
fvModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
autoPtr< fvModel > | clone () const |
Return clone. More... | |
virtual | ~fvModel () |
Destructor. More... | |
const word & | name () const |
Return const access to the source name. More... | |
const fvMesh & | mesh () const |
Return const access to the mesh database. More... | |
const dictionary & | coeffs () const |
Return dictionary. More... | |
virtual bool | addsSupToField (const word &fieldName) const |
Return true if the fvModel adds a source term to the given. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_SUP) | |
Add a source term to an equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_RHO_SUP) | |
Add a source term to a compressible equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_ALPHA_RHO_SUP) | |
Add a source term to a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field) const |
Return source for an equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
Return source for an equation with a specified name. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field) const |
Return source for a compressible equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
Return source for a compressible equation with a specified name. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
Return source for a phase equation with a specified name. More... | |
virtual void | preUpdateMesh () |
Prepare for mesh update. More... | |
virtual bool | movePoints () |
Update for mesh motion. More... | |
virtual void | correct () |
Correct the fvModel. More... | |
template<class Type , class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
Foam::dimensionSet | sourceDims (const GeometricField< Type, fvPatchField, volMesh > &field, const dimensionSet &ds, const AlphaRhoFieldType &alphaRho, const AlphaRhoFieldTypes &... alphaRhos) |
template<class Type > | |
Foam::dimensionSet | sourceDims (const GeometricField< Type, fvPatchField, volMesh > &field, const dimensionSet &ds) |
template<class Type , class ... AlphaRhoFieldTypes> | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName, const dimensionSet &ds, const AlphaRhoFieldTypes &... alphaRhos) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName) const |
Public Member Functions inherited from codedBase | |
TypeName ("codedBase") | |
Runtime type information. More... | |
codedBase () | |
Construct null. More... | |
codedBase (const word &name, const dictionary &dict) | |
Construct from name and dictionary. More... | |
codedBase (const dictionary &dict) | |
Construct from dictionary. More... | |
codedBase (const codedBase &cb) | |
Copy constructor. More... | |
virtual | ~codedBase () |
Destructor. More... | |
void | operator= (const codedBase &)=delete |
Disallow default bitwise assignment. More... | |
word | codeTemplateC (const word &baseTypeName) const |
word | codeTemplateH (const word &baseTypeName) const |
virtual void | writeCode (Ostream &os) const |
Additional Inherited Members | |
Static Public Member Functions inherited from fvModel | |
template<class Type , class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
static dimensionSet | sourceDims (const GeometricField< Type, fvPatchField, volMesh > &field, const dimensionSet &ds, const AlphaRhoFieldType &alphaRho, const AlphaRhoFieldTypes &... alphaRhos) |
Return the dimensions of the matrix of a source term. More... | |
template<class Type > | |
static dimensionSet | sourceDims (const GeometricField< Type, fvPatchField, volMesh > &field, const dimensionSet &ds) |
Return the dimensions of the matrix of a source term (base. More... | |
static autoPtr< fvModel > | New (const word &name, const dictionary &dict, const fvMesh &mesh) |
Return a reference to the selected fvModel. More... | |
Protected Member Functions inherited from fvModel | |
template<class Type > | |
void | addSupType (fvMatrix< Type > &eqn, const word &fieldName) const |
Add a source term to an equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &rho, fvMatrix< Type > &eqn, const word &fieldName) const |
Add a source term to a compressible equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &alpha, const volScalarField &rho, fvMatrix< Type > &eqn, const word &fieldName) const |
Add a source term to a phase equation. More... | |
template<class Type , class ... AlphaRhoFieldTypes> | |
tmp< fvMatrix< Type > > | source (const GeometricField< Type, fvPatchField, volMesh > &field, const word &fieldName, const dimensionSet &ds, const AlphaRhoFieldTypes &... alphaRhos) const |
Return source for equation with specified name and dimensions. More... | |
Protected Member Functions inherited from codedBase | |
void | updateLibrary () const |
Update library as required. More... | |
Constructs on-the-fly fvModel source from user-supplied code.
energySource { type coded; selectionMode all; field h; codeInclude #{ #}; codeAddSup #{ Pout<< "**codeAddSup**" << endl; const Time& time = mesh().time(); const scalarField& V = mesh().V(); scalarField& heSource = eqn.source(); heSource -= 0.1*sqr(time.value())*V; #}; codeAddRhoSup #{ Pout<< "**codeAddRhoSup**" << endl; #}; codeAddAlphaRhoSup #{ Pout<< "**codeAddAlphaRhoSup**" << endl; #}; }
Definition at line 89 of file codedFvModel.H.
codedFvModel | ( | const word & | name, |
const word & | modelType, | ||
const dictionary & | dict, | ||
const fvMesh & | mesh | ||
) |
Construct from components.
Definition at line 228 of file codedFvModel.C.
TypeName | ( | "coded" | ) |
Runtime type information.
|
virtual |
Return the list of fields for which the fvModel adds source term.
to the transport equation
Reimplemented from fvModel.
Definition at line 245 of file codedFvModel.C.
References FOR_ALL_FIELD_TYPES(), IMPLEMENT_FV_MODEL_ADD_ALPHA_RHO_SUP, IMPLEMENT_FV_MODEL_ADD_RHO_SUP, and IMPLEMENT_FV_MODEL_ADD_SUP.
FOR_ALL_FIELD_TYPES | ( | DEFINE_FV_MODEL_ADD_SUP | ) |
Add a source term to an equation.
FOR_ALL_FIELD_TYPES | ( | DEFINE_FV_MODEL_ADD_RHO_SUP | ) |
Add a source term to a compressible equation.
FOR_ALL_FIELD_TYPES | ( | DEFINE_FV_MODEL_ADD_ALPHA_RHO_SUP | ) |
Add a source term to a phase equation.
|
virtual |
|
virtual |
Read source dictionary.
Reimplemented from fvModel.
Definition at line 266 of file codedFvModel.C.
References fvModel::read().