Base fvModel for forcing functions. More...


Public Member Functions | |
| TypeName ("forcing") | |
| Runtime type information. More... | |
| forcing (const word &name, const word &modelType, const fvMesh &mesh, const dictionary &dict) | |
| Construct from components. More... | |
| virtual | ~forcing () |
| Destructor. More... | |
| virtual bool | read (const dictionary &dict) |
| Read 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 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 word & | keyword () const |
| Return name as the keyword. More... | |
| const fvMesh & | mesh () const |
| Return const access to the mesh database. More... | |
| const dictionary & | coeffs (const dictionary &) const |
| Return the coefficients sub-dictionary. More... | |
| virtual wordList | addSupFields () const |
| Return the list of fields for which the fvModel adds source term. More... | |
| virtual bool | addsSupToField (const word &fieldName) const |
| Return true if the fvModel adds a source term to the given. More... | |
| virtual scalar | maxDeltaT () const |
| Return the maximum time-step for stable operation. More... | |
| virtual void | addSup (fvMatrix< scalar > &eqn) const |
| Add a source term to a field-less proxy equation. 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 | movePoints ()=0 |
| Update for mesh motion. More... | |
| virtual void | topoChange (const polyTopoChangeMap &)=0 |
| Update topology using the given map. More... | |
| virtual void | mapMesh (const polyMeshMap &)=0 |
| Update from another mesh using the given map. More... | |
| virtual void | distribute (const polyDistributionMap &)=0 |
| Redistribute or update using the given distribution map. More... | |
| virtual void | correct () |
| Correct the fvModel. 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 |
Protected Member Functions | |
| void | readCoeffs (const dictionary &dict) |
| Non-virtual read. More... | |
| void | readLambda (const dictionary &dict) |
| Read the forcing coefficients. More... | |
| dimensionedScalar | regionLength () const |
| Calculate and return the volume average forcing region length. More... | |
| virtual tmp< volScalarField::Internal > | scale () const |
| Return the scale distribution. More... | |
| virtual tmp< volScalarField::Internal > | forceCoeff () const |
| Return the force coefficient. More... | |
| void | writeForceFields () const |
| Optionally write the forcing fields: 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... | |
Protected Attributes | |
| bool | writeForceFields_ |
| Optionally write the forcing fields. More... | |
| dimensionedScalar | lambda_ |
| Forcing coefficient [1/s]. More... | |
| dimensionedScalar | lambdaBoundary_ |
| Optional boundary forcing coefficient [1/s]. More... | |
| autoPtr< Function1< scalar > > | scale_ |
| The scaling function. More... | |
| vectorField | origins_ |
| Origins of the scaling coordinate. More... | |
| vectorField | directions_ |
| Directions of increasing scaling coordinate. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from fvModel | |
| static const dictionary & | coeffs (const word &modelType, const dictionary &) |
| Return the coefficients sub-dictionary for a given model type. More... | |
| 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... | |
Static Public Attributes inherited from fvModel | |
| static const wordHashSet | keywords |
| The keywords read by this class. More... | |
Base fvModel for forcing functions.
| forcing | ( | const word & | name, |
| const word & | modelType, | ||
| const fvMesh & | mesh, | ||
| const dictionary & | dict | ||
| ) |
Construct from components.
Definition at line 229 of file forcing.C.
References fvModel::coeffs(), dict, and forcing::readCoeffs().

|
protected |
Non-virtual read.
Definition at line 65 of file forcing.C.
References autoPtr< T >::clear(), dict, Foam::dimLength, Foam::dimless, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::mag(), Function1< Type >::New(), and WarningInFunction.
Referenced by forcing::forcing().


|
protected |
Read the forcing coefficients.
Definition at line 45 of file forcing.C.
References dict, dimensioned< Type >::dimensions(), forcing::lambda_, forcing::lambdaBoundary_, and dimensioned< Type >::name().

|
protected |
Calculate and return the volume average forcing region length.
Definition at line 135 of file forcing.C.
References Foam::saturationModels::C, Foam::dimArea, Foam::dimLength, Foam::dimless, Foam::dimVolume, Foam::fvc::domainIntegrate(), Foam::evaluate(), forAll, Foam::fvc::grad(), mesh, and x.

|
protectedvirtual |
Return the scale distribution.
Definition at line 159 of file forcing.C.
References Foam::constant::universal::c, primitiveMesh::cellCentres(), Foam::dimless, forAll, Foam::max(), mesh, DimensionedField< Type, GeoMesh, PrimitiveField >::New(), tmp< T >::ref(), Foam::typedName(), and x.
Referenced by waveForcing::distribute(), waveForcing::mapMesh(), waveForcing::movePoints(), and waveForcing::topoChange().


|
protectedvirtual |
Return the force coefficient.
Definition at line 184 of file forcing.C.
References fvMesh::boundary(), forAll, mesh, DimensionedField< Type, GeoMesh, PrimitiveField >::New(), patchi, tmp< T >::ref(), and Foam::typedName().

|
protected |
Optionally write the forcing fields:
forcing:scale, forcing:forceCoeff
Definition at line 214 of file forcing.C.
References Foam::endl(), Foam::Info, and Foam::vtkWriteOps::write().
Referenced by isotropicDamping::isotropicDamping(), verticalDamping::verticalDamping(), and waveForcing::waveForcing().


| TypeName | ( | "forcing" | ) |
Runtime type information.
|
virtual |
Read dictionary.
Reimplemented from fvModel.
Reimplemented in waveForcing, verticalDamping, and isotropicDamping.
Definition at line 251 of file forcing.C.
References dict, and fvModel::read().
Referenced by isotropicDamping::read(), verticalDamping::read(), and waveForcing::read().


|
protected |
|
mutableprotected |
Forcing coefficient [1/s].
Definition at line 68 of file forcing.H.
Referenced by forcing::readLambda().
|
mutableprotected |
Optional boundary forcing coefficient [1/s].
Definition at line 71 of file forcing.H.
Referenced by forcing::readLambda().
|
protected |
|
protected |