This fvModel applies a mass source to the continuity equation and to all field equations, in a zero-dimensional case. Correction is made to account for the mass that exits the domain due to expansion in space, so that the model correctly applies a total mass flow rate. More...
Public Member Functions | |
TypeName ("zeroDimensionalMassSource") | |
Runtime type information. More... | |
zeroDimensionalMassSource (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
Construct from explicit source name and mesh. More... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
Public Member Functions inherited from zeroDimensionalMassSourceBase | |
TypeName ("zeroDimensionalMassSourceBase") | |
Runtime type information. More... | |
zeroDimensionalMassSourceBase (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
Construct from explicit source name and mesh. More... | |
virtual labelUList | cells () const |
Return the cells that the source applies to. More... | |
virtual label | nCells () const |
Return the number of cells that the source applies to. More... | |
virtual scalar | V () const |
Return the volume of cells that the source applies to. More... | |
virtual dimensionedScalar | S () const |
Return the source value. More... | |
virtual bool | movePoints () |
Update for mesh motion. More... | |
virtual void | topoChange (const polyTopoChangeMap &) |
Update topology using the given map. More... | |
virtual void | mapMesh (const polyMeshMap &) |
Update from another mesh using the given map. More... | |
virtual void | distribute (const polyDistributionMap &) |
Redistribute or update using the given distribution map. More... | |
virtual void | correct () |
Update the model. More... | |
Public Member Functions inherited from massSourceBase | |
TypeName ("massSourceBase") | |
Runtime type information. More... | |
massSourceBase (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
Construct from explicit source name and mesh. More... | |
virtual void | addSup (fvMatrix< scalar > &eqn) const |
Add a source term to a field-less proxy equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_FIELD_SUP) | |
Add a source term to an equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_RHO_FIELD_SUP) | |
Add a source term to a compressible equation. More... | |
FOR_ALL_FIELD_TYPES (DEFINE_FV_MODEL_ADD_ALPHA_RHO_FIELD_SUP) | |
Add a source term to a phase equation. More... | |
Public Member Functions inherited from fvTotalSource | |
TypeName ("fvTotalSource") | |
Runtime type information. More... | |
fvTotalSource (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
Construct from explicit source name and mesh. More... | |
virtual | ~fvTotalSource () |
Destructor. More... | |
virtual bool | addsSupToField (const word &fieldName) const |
Return true if the fvModel adds a source term to the given. More... | |
const word & | phaseName () const |
Return the phase name. More... | |
virtual tmp< scalarField > | source (const word &fieldName) const |
Return the source value. More... | |
Public Member Functions inherited from fvSource | |
TypeName ("fvSource") | |
Runtime type information. More... | |
fvSource (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
Construct from explicit source name and mesh. More... | |
fvSource (const fvSource &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~fvSource () |
Destructor. More... | |
virtual wordList | addSupFields () const |
Return the list of fields for which the fvModel adds source term. More... | |
void | operator= (const fvSource &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from fvModel | |
TypeName ("fvModel") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, fvModel, dictionary,(const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict),(name, modelType, mesh, dict)) | |
fvModel (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
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 scalar | maxDeltaT () const |
Return the maximum time-step for stable operation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | sourceProxy (const VolField< Type > &eqnField) const |
Add a source term to an equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const VolField< Type > &field) const |
Return source for an equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | sourceProxy (const VolField< Type > &field, const VolField< Type > &eqnField) const |
Return source for an equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &rho, const VolField< Type > &field) const |
Return source for a compressible equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | sourceProxy (const volScalarField &rho, const VolField< Type > &field, const VolField< Type > &eqnField) const |
Return source for a compressible equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | sourceProxy (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field, const VolField< Type > &eqnField) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const volScalarField &alpha, const geometricOneField &rho, const VolField< Type > &field) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const geometricOneField &alpha, const volScalarField &rho, const VolField< Type > &field) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | source (const geometricOneField &alpha, const geometricOneField &rho, const VolField< Type > &field) const |
Return source for a phase equation. More... | |
template<class Type > | |
tmp< fvMatrix< Type > > | d2dt2 (const VolField< Type > &field) const |
Return source for an equation with a second time derivative. More... | |
virtual void | preUpdateMesh () |
Prepare for mesh update. More... | |
virtual bool | write (const bool write=true) const |
Write fvModel data. More... | |
template<class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
Foam::dimensionSet | sourceDims (const dimensionSet &ds, const AlphaRhoFieldType &alphaRhoField, const AlphaRhoFieldTypes &... alphaRhoFields) |
template<class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
const Foam::word & | fieldName (const AlphaRhoFieldType &alphaRhoField, const AlphaRhoFieldTypes &... alphaRhoFields) |
template<class AlphaRhoFieldType > | |
const Foam::word & | fieldName (const AlphaRhoFieldType &alphaRhoField) |
template<class Type , class ... AlphaRhoFieldTypes> | |
Foam::tmp< Foam::fvMatrix< Type > > | sourceTerm (const VolField< Type > &eqnField, const dimensionSet &ds, const AlphaRhoFieldTypes &... alphaRhoFields) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | sourceProxy (const VolField< Type > &eqnField) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | sourceProxy (const VolField< Type > &field, const VolField< Type > &eqnField) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &rho, const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | sourceProxy (const volScalarField &rho, const VolField< Type > &field, const VolField< Type > &eqnField) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | sourceProxy (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field, const VolField< Type > &eqnField) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const geometricOneField &alpha, const geometricOneField &rho, const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const volScalarField &alpha, const geometricOneField &rho, const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | source (const geometricOneField &alpha, const volScalarField &rho, const VolField< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::fvMatrix< Type > > | d2dt2 (const VolField< Type > &field) const |
Additional Inherited Members | |
Static Public Member Functions inherited from fvModel | |
template<class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
static dimensionSet | sourceDims (const dimensionSet &ds, const AlphaRhoFieldType &alphaRhoField, const AlphaRhoFieldTypes &... alphaRhoFields) |
Return the dimensions of the matrix of a source term. More... | |
static const dimensionSet & | sourceDims (const dimensionSet &ds) |
Return the dimensions of the matrix of a source term (base. More... | |
template<class AlphaRhoFieldType , class ... AlphaRhoFieldTypes> | |
static const word & | fieldName (const AlphaRhoFieldType &alphaRhoField, const AlphaRhoFieldTypes &... alphaRhoFields) |
Return the name of the field associated with a source term. More... | |
template<class AlphaRhoFieldType > | |
static const word & | fieldName (const AlphaRhoFieldType &alphaRhoField) |
Return the name of the field associated with a source term (base. More... | |
static const word & | fieldName () |
Return the name of the field associated with a source term. Special. More... | |
static autoPtr< fvModel > | New (const word &name, const fvMesh &mesh, const dictionary &dict) |
Return a reference to the selected fvModel. More... | |
Protected Member Functions inherited from fvTotalSource | |
void | addSource (fvMatrix< scalar > &eqn) const |
Add a source term to a field-less proxy equation. More... | |
template<class Type > | |
void | addSupType (const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to an equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &rho, const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to a compressible equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to a phase equation. More... | |
Protected Member Functions inherited from fvModel | |
template<class Type > | |
void | addSupType (const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to an equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &rho, const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to a compressible equation. More... | |
template<class Type > | |
void | addSupType (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &field, fvMatrix< Type > &eqn) const |
Add a source term to a phase equation. More... | |
template<class Type , class ... AlphaRhoFieldTypes> | |
tmp< fvMatrix< Type > > | sourceTerm (const VolField< Type > &eqnField, const dimensionSet &ds, const AlphaRhoFieldTypes &... alphaRhoFields) const |
Return a source for an equation. More... | |
This fvModel applies a mass source to the continuity equation and to all field equations, in a zero-dimensional case. Correction is made to account for the mass that exits the domain due to expansion in space, so that the model correctly applies a total mass flow rate.
This model requires a corresponding field source to be specified for all solved-for fields.
This model will write out additional fields, zeroDimensionalMassSource:m and zeroDimensionalMassSource:factor. The zeroDimensionalMassSource:m field is the total accumulated mass; the sum of the starting mass, plus all mass added by models of this type. This may differ from the actual current mass (= rho*V) within the zero-dimensional cell if pressure or density constraints are being used. The zeroDimensionalMassSource:factor field is the ratio between the current mass or volume and the total accumulated mass or volume.
zeroDimensionalMassSource { type zeroDimensionalMassSource; massFlowRate 1e-4; }
Definition at line 77 of file zeroDimensionalMassSource.H.
zeroDimensionalMassSource | ( | const word & | name, |
const word & | modelType, | ||
const fvMesh & | mesh, | ||
const dictionary & | dict | ||
) |
Construct from explicit source name and mesh.
Definition at line 68 of file zeroDimensionalMassSource.C.
TypeName | ( | "zeroDimensionalMassSource" | ) |
Runtime type information.
|
virtual |
Read source dictionary.
Reimplemented from massSourceBase.
Definition at line 85 of file zeroDimensionalMassSource.C.
References dict, and massSourceBase::read().