Base class for inter region heat exchange. The derived classes must provide the heat transfer coeffisine (htc) which is used as follows in the energy equation. More...
Public Member Functions | |
TypeName ("interRegionHeatTransferModel") | |
Runtime type information. More... | |
interRegionHeatTransferModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from dictionary. More... | |
virtual | ~interRegionHeatTransferModel () |
Destructor. More... | |
const word & | nbrRegionName () const |
Return const access to the neighbour region name. More... | |
const meshToMesh & | meshInterp () const |
Return const access to the mapToMap pointer. More... | |
const volScalarField & | htc () const |
Return the heat transfer coefficient. More... | |
const interRegionHeatTransferModel & | nbrModel () const |
Return const access to the neighbour model. More... | |
interRegionHeatTransferModel & | nbrModel () |
Return access to the neighbour model. More... | |
virtual void | addSup (fvMatrix< scalar > &eqn, const label fieldi) |
Source term to energy equation. More... | |
virtual void | addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
Source term to compressible energy equation. More... | |
virtual void | calculateHtc ()=0 |
Calculate heat transfer coefficient. More... | |
virtual bool | read (const dictionary &dict) |
Read dictionary. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interpolate (const interRegionHeatTransferModel &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 interRegionOption | |
TypeName ("interRegionOption") | |
Runtime type information. More... | |
interRegionOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from dictionary. More... | |
virtual | ~interRegionOption () |
Destructor. More... | |
const word & | nbrRegionName () const |
Return const access to the neighbour region name. More... | |
const meshToMesh & | meshInterp () const |
Return const access to the mapToMap pointer. More... | |
Public Member Functions inherited from option | |
TypeName ("option") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, option, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh)) | |
option (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
autoPtr< option > | clone () const |
Return clone. More... | |
virtual | ~option () |
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... | |
bool | active () const |
Return const access to the source active flag. More... | |
void | setApplied (const label fieldi) |
Set the applied flag to true for field index fieldi. More... | |
Switch & | active () |
Return access to the source active flag. More... | |
virtual bool | isActive () |
Is the source active? More... | |
virtual label | applyToField (const word &fieldName) const |
Return index of field name if found in fieldNames list. More... | |
virtual void | checkApplied () const |
Check that the source has been applied. More... | |
virtual void | addSup (fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< vector > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | correct (volScalarField &field) |
virtual void | correct (volVectorField &field) |
virtual void | correct (volSphericalTensorField &field) |
virtual void | correct (volSymmTensorField &field) |
virtual void | correct (volTensorField &field) |
virtual void | writeHeader (Ostream &) const |
Write the source header information. More... | |
virtual void | writeFooter (Ostream &) const |
Write the source footer information. More... | |
virtual void | writeData (Ostream &) const |
Write the source properties. More... | |
Protected Member Functions | |
void | setNbrModel () |
Set the neighbour interRegionHeatTransferModel. More... | |
void | correct () |
Correct to calculate the inter-region heat transfer coefficient. More... | |
template<class Type > | |
tmp< Field< Type > > | interpolate (const interRegionHeatTransferModel &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 interRegionHeatTransferModel &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... | |
Protected Member Functions inherited from interRegionOption | |
void | setMapper () |
Set the mesh to mesh interpolation object. More... | |
Protected Attributes | |
word | nbrModelName_ |
Name of the model in the neighbour mesh. More... | |
interRegionHeatTransferModel * | nbrModel_ |
Pointer to neighbour interRegionHeatTransferModel. More... | |
bool | firstIter_ |
First iteration. More... | |
label | timeIndex_ |
Time index - used for updating htc. More... | |
volScalarField | htc_ |
Heat transfer coefficient [W/m^2/k] times area/volume [1/m]. More... | |
bool | semiImplicit_ |
Flag to activate semi-implicit coupling. More... | |
word | TName_ |
Name of temperature field; default = "T". More... | |
word | TNbrName_ |
Name of neighbour temperature field; default = "T". More... | |
Protected Attributes inherited from interRegionOption | |
bool | master_ |
Master or slave region. More... | |
word | nbrRegionName_ |
Name of the neighbour region to map. More... | |
autoPtr< meshToMesh > | meshInterpPtr_ |
Mesh to mesh interpolation object. More... | |
Protected Attributes inherited from option | |
const word | name_ |
Source name. More... | |
const word | modelType_ |
Model type. More... | |
const fvMesh & | mesh_ |
Reference to the mesh database. More... | |
dictionary | dict_ |
Top level source dictionary. More... | |
dictionary | coeffs_ |
Dictionary containing source coefficients. More... | |
Switch | active_ |
Source active flag. More... | |
wordList | fieldNames_ |
Field names to apply source to - populated by derived models. More... | |
List< bool > | applied_ |
Applied flag list - corresponds to each fieldNames_ entry. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from option | |
static autoPtr< option > | New (const word &name, const dictionary &dict, const fvMesh &mesh) |
Return a reference to the selected fvOption model. More... | |
Base class for inter region heat exchange. The derived classes must provide the heat transfer coeffisine (htc) which is used as follows in the energy equation.
Definition at line 54 of file interRegionHeatTransferModel.H.
interRegionHeatTransferModel | ( | const word & | name, |
const word & | modelType, | ||
const dictionary & | dict, | ||
const fvMesh & | mesh | ||
) |
Construct from dictionary.
Definition at line 108 of file interRegionHeatTransferModel.C.
Referenced by interRegionHeatTransferModel::correct().
|
virtual |
Destructor.
Definition at line 160 of file interRegionHeatTransferModel.C.
References interRegionHeatTransferModel::addSup().
|
protected |
Set the neighbour interRegionHeatTransferModel.
Definition at line 46 of file interRegionHeatTransferModel.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, fvOptions, objectRegistry::lookupObject(), Foam::name(), fvMesh::name(), Foam::nl, and fvMesh::time().
|
protected |
Correct to calculate the inter-region heat transfer coefficient.
Definition at line 87 of file interRegionHeatTransferModel.C.
References Foam::interpolate(), and interRegionHeatTransferModel::interRegionHeatTransferModel().
|
protected |
Interpolate field with nbrModel specified.
Referenced by interRegionHeatTransferModel::interpolate().
Interpolate field without nbrModel specified.
|
protected |
Interpolate field with nbrModel specified.
Definition at line 58 of file interRegionHeatTransferModelTemplates.C.
References interRegionHeatTransferModel::interpolate(), meshToMesh::mapSrcToTgt(), and interRegionHeatTransferModel::meshInterp().
Interpolate field without nbrModel specified.
Definition at line 77 of file interRegionHeatTransferModelTemplates.C.
References Foam::fvc::interpolate().
TypeName | ( | "interRegionHeatTransferModel" | ) |
Runtime type information.
|
inline |
Return const access to the neighbour region name.
Definition at line 29 of file interRegionHeatTransferModelI.H.
References interRegionOption::nbrRegionName_.
|
inline |
Return const access to the mapToMap pointer.
Definition at line 36 of file interRegionHeatTransferModelI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and interRegionOption::meshInterpPtr_.
Referenced by interRegionHeatTransferModel::interpolate().
|
inline |
Return the heat transfer coefficient.
Definition at line 50 of file interRegionHeatTransferModelI.H.
References interRegionHeatTransferModel::htc_.
|
inline |
Return const access to the neighbour model.
Definition at line 57 of file interRegionHeatTransferModelI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and interRegionHeatTransferModel::nbrModel_.
|
inline |
Return access to the neighbour model.
Definition at line 71 of file interRegionHeatTransferModelI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and interRegionHeatTransferModel::nbrModel_.
Source term to energy equation.
Reimplemented from option.
Definition at line 167 of file interRegionHeatTransferModel.C.
References correct, basicThermo::Cp(), basicThermo::Cpv(), dictionaryName::dictName(), Foam::dimEnergy, DimensionedField< Type, GeoMesh >::dimensions(), Foam::dimMass, Foam::dimTemperature, Foam::fvc::domainIntegrate(), Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, he, Foam::Info, Foam::interpolate(), objectRegistry::lookupObject(), fvMesh::name(), GeometricField< scalar, fvPatchField, volMesh >::New(), GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), fvMatrix< Type >::psi(), GeometricField< Type, PatchField, GeoMesh >::ref(), Foam::fvm::Sp(), Foam::T(), thermo, fvMesh::time(), Foam::type(), dimensioned< Type >::value(), and regIOobject::write().
Referenced by interRegionHeatTransferModel::~interRegionHeatTransferModel().
|
virtual |
Source term to compressible energy equation.
Reimplemented from option.
Definition at line 253 of file interRegionHeatTransferModel.C.
|
pure virtual |
Calculate heat transfer coefficient.
Implemented in variableHeatTransfer, tabulatedHeatTransfer, and constantHeatTransfer.
|
virtual |
Read dictionary.
Reimplemented from interRegionOption.
Reimplemented in variableHeatTransfer, tabulatedHeatTransfer, and constantHeatTransfer.
Definition at line 30 of file interRegionHeatTransferModelIO.C.
References interRegionOption::read().
Referenced by constantHeatTransfer::read(), tabulatedHeatTransfer::read(), and variableHeatTransfer::read().
Foam::tmp<Foam::Field<Type> > interpolate | ( | const interRegionHeatTransferModel & | nbrModel, |
const Field< Type > & | field | ||
) | const |
Definition at line 29 of file interRegionHeatTransferModelTemplates.C.
References interRegionHeatTransferModel::interpolate(), meshToMesh::mapSrcToTgt(), and interRegionHeatTransferModel::meshInterp().
Foam::tmp<Foam::Field<Type> > interpolate | ( | const Field< Type > & | field | ) | const |
Definition at line 48 of file interRegionHeatTransferModelTemplates.C.
References Foam::fvc::interpolate(), and interRegionHeatTransferModel::interpolate().
|
protected |
Name of the model in the neighbour mesh.
Definition at line 63 of file interRegionHeatTransferModel.H.
|
protected |
Pointer to neighbour interRegionHeatTransferModel.
Definition at line 66 of file interRegionHeatTransferModel.H.
Referenced by interRegionHeatTransferModel::nbrModel().
|
protected |
First iteration.
Definition at line 69 of file interRegionHeatTransferModel.H.
|
protected |
Time index - used for updating htc.
Definition at line 72 of file interRegionHeatTransferModel.H.
|
protected |
Heat transfer coefficient [W/m^2/k] times area/volume [1/m].
Definition at line 75 of file interRegionHeatTransferModel.H.
Referenced by interRegionHeatTransferModel::htc().
|
protected |
Flag to activate semi-implicit coupling.
Definition at line 78 of file interRegionHeatTransferModel.H.
|
protected |
Name of temperature field; default = "T".
Definition at line 81 of file interRegionHeatTransferModel.H.
|
protected |
Name of neighbour temperature field; default = "T".
Definition at line 84 of file interRegionHeatTransferModel.H.