interRegionModel Class Reference

Base class for inter-region exchange. More...

Inheritance diagram for interRegionModel:
Collaboration diagram for interRegionModel:

Public Member Functions

 TypeName ("interRegionModel")
 Runtime type information. More...
 
 interRegionModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 Construct from dictionary. More...
 
virtual ~interRegionModel ()
 Destructor. More...
 
bool master () const
 Return whether the master region. More...
 
const word & nbrRegionName () const
 Return const access to the neighbour region name. More...
 
const fvMesh & nbrMesh () const
 Return const access to the neighbour mesh. More...
 
const meshToMesh & meshInterp () const
 Return const access to the mapToMap pointer. More...
 
template<class Type >
tmp< Field< Type > > interpolate (const interRegionModel &nbrModel, const Field< Type > &field) const
 Interpolate field with nbrModel specified. More...
 
template<class Type >
tmp< Field< Type > > interpolate (const Field< Type > &field) const
 Interpolate field without nbrModel specified. More...
 
template<class Type >
void interpolate (const interRegionModel &nbrModel, const Field< Type > &field, Field< Type > &result) const
 Interpolate field with nbrModel specified. More...
 
template<class Type >
void interpolate (const Field< Type > &field, Field< Type > &result) const
 Interpolate field without nbrModel specified. More...
 
virtual bool read (const dictionary &dict)
 Read dictionary. More...
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolate (const interRegionModel &nbrModel, const Field< Type > &field) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolate (const Field< Type > &field) const
 
- 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 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...
 
 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 void updateMesh (const mapPolyMesh &)
 Update for mesh changes. 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
 

Protected Member Functions

const interRegionModel & nbrModel () const
 Get the neighbour interRegionModel. 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...
 

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...
 

Detailed Description

Base class for inter-region exchange.

Definition at line 51 of file interRegionModel.H.

Constructor & Destructor Documentation

◆ interRegionModel()

interRegionModel ( const word &  name,
const word &  modelType,
const dictionary &  dict,
const fvMesh &  mesh 
)

Construct from dictionary.

Definition at line 136 of file interRegionModel.C.

Referenced by interRegionModel::nbrModel().

Here is the caller graph for this function:

◆ ~interRegionModel()

~interRegionModel ( )
virtual

Destructor.

Definition at line 155 of file interRegionModel.C.

Member Function Documentation

◆ nbrModel()

const Foam::fv::interRegionModel & nbrModel ( ) const
protected

◆ TypeName()

TypeName ( "interRegionModel"  )

Runtime type information.

◆ master()

bool master ( ) const
inline

Return whether the master region.

Definition at line 28 of file interRegionModelI.H.

◆ nbrRegionName()

const Foam::word & nbrRegionName ( ) const
inline

Return const access to the neighbour region name.

Definition at line 34 of file interRegionModelI.H.

Referenced by interRegionModel::nbrModel().

Here is the caller graph for this function:

◆ nbrMesh()

const Foam::fvMesh & nbrMesh ( ) const
inline

Return const access to the neighbour mesh.

Definition at line 40 of file interRegionModelI.H.

References objectRegistry::lookupObject(), fvModel::mesh(), and fvMesh::time().

Here is the call graph for this function:

◆ meshInterp()

const Foam::meshToMesh & meshInterp ( ) const
inline

Return const access to the mapToMap pointer.

Definition at line 46 of file interRegionModelI.H.

Referenced by interRegionModel::interpolate().

Here is the caller graph for this function:

◆ interpolate() [1/6]

tmp<Field<Type> > interpolate ( const interRegionModel &  nbrModel,
const Field< Type > &  field 
) const

Interpolate field with nbrModel specified.

Referenced by interRegionModel::interpolate().

Here is the caller graph for this function:

◆ interpolate() [2/6]

tmp<Field<Type> > interpolate ( const Field< Type > &  field) const

Interpolate field without nbrModel specified.

◆ interpolate() [3/6]

void interpolate ( const interRegionModel &  nbrModel,
const Field< Type > &  field,
Field< Type > &  result 
) const

Interpolate field with nbrModel specified.

Definition at line 62 of file interRegionModelTemplates.C.

References interRegionModel::interpolate(), meshToMesh::mapSrcToTgt(), and interRegionModel::meshInterp().

Here is the call graph for this function:

◆ interpolate() [4/6]

void interpolate ( const Field< Type > &  field,
Field< Type > &  result 
) const

Interpolate field without nbrModel specified.

Definition at line 81 of file interRegionModelTemplates.C.

References Foam::fvc::interpolate().

Here is the call graph for this function:

◆ read()

bool read ( const dictionary &  dict)
virtual

Read dictionary.

Reimplemented from fvModel.

Reimplemented in interRegionHeatTransfer, and interRegionExplicitPorositySource.

Definition at line 161 of file interRegionModel.C.

References fvModel::read().

Referenced by interRegionExplicitPorositySource::read(), and interRegionHeatTransfer::read().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ interpolate() [5/6]

Foam::tmp<Foam::Field<Type> > interpolate ( const interRegionModel &  nbrModel,
const Field< Type > &  field 
) const

Definition at line 33 of file interRegionModelTemplates.C.

References interRegionModel::interpolate(), meshToMesh::mapSrcToTgt(), and interRegionModel::meshInterp().

Here is the call graph for this function:

◆ interpolate() [6/6]

Foam::tmp<Foam::Field<Type> > interpolate ( const Field< Type > &  field) const

Definition at line 52 of file interRegionModelTemplates.C.

References Foam::fvc::interpolate(), and interRegionModel::interpolate().

Here is the call graph for this function:

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