44 interRegionHeatTransfer,
53 void Foam::fv::interRegionHeatTransfer::readCoeffs()
55 semiImplicit_ = coeffs().lookup<
bool>(
"semiImplicit");
57 TName_ = coeffs().lookupOrDefault<word>(
"T",
"T");
58 TNbrName_ = coeffs().lookupOrDefault<word>(
"TNbr",
"T");
71 refCast<const interRegionHeatTransfer>(nbrModel()).heatTransferModel_;
80 const word& modelType,
89 heatTransferModel_(
nullptr)
115 const word& fieldName
127 interpolate(Tnbr, tTnbrMapped->primitiveFieldRef());
151 *heatTransferModel_->htc()
152 *heatTransferModel_->AoV();
157 nbrHeatTransferModel().htc()
158 *nbrHeatTransferModel().AoV();
180 htcAoV*(TnbrMapped -
T)
181 + htcAoVByCpv*he -
fvm::Sp(htcAoVByCpv, he);
185 eqn += htcAoV*TnbrMapped -
fvm::Sp(htcAoV, he);
190 eqn += htcAoV*(TnbrMapped -
T);
199 const word& fieldName
202 addSup(eqn, fieldName);
210 heatTransferModel_->correct();
virtual void correct()
Correct the model.
defineTypeNameAndDebug(fixedTemperatureConstraint, 0)
const word & name() const
Return name.
fluidReactionThermo & thermo
Base-class for fluid and solid thermodynamic properties.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Base class for heat transfer coefficient modelling used in heat transfer fvModels. Area per unit volume [1/m] (AoV) must be provided as a value in the coefficients dictionary or as a field in constant.
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
T & ref() const
Return non-const reference or generate a fatal error.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
static tmp< GeometricField< scalar, fvPatchField, volMesh > > New(const word &name, const Internal &, const PtrList< fvPatchField< scalar >> &)
Return a temporary field constructed from name,.
const dimensionSet dimless
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const GeometricField< Type, fvPatchField, volMesh > &)
virtual tmp< volScalarField > Cpv() const =0
Heat capacity at constant pressure/volume [J/kg/K].
Macros for easy insertion into run-time selection tables.
virtual volScalarField & he()=0
Enthalpy/Internal energy [J/kg].
virtual ~interRegionHeatTransfer()
Destructor.
virtual wordList addSupFields() const
Return the list of fields for which the fvModel adds source term.
interRegionHeatTransfer(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from dictionary.
const dimensionSet & dimensions() const
Return dimensions.
Base class for inter-region exchange.
const heatTransferModel & nbrHeatTransferModel() const
Get the neighbour heat transfer model.
A class for handling words, derived from string.
virtual void addSup(fvMatrix< scalar > &eqn, const word &fieldName) const
Source term to energy equation.
static const word null
An empty word.
Volume integrate volField creating a volField.
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
virtual bool read(const dictionary &dict)
Read dictionary.
static autoPtr< heatTransferModel > New(const dictionary &dict, const fvMesh &mesh)
Select from dictionary and mesh.
static const word dictName
Name of the thermophysical properties dictionary.
const dimensionSet dimEnergy
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
const dimensionSet dimMass
word name(const complex &)
Return a string representation of a complex.
Internal & ref()
Return a reference to the dimensioned internal field.
addToRunTimeSelectionTable(fvConstraint, fixedTemperatureConstraint, dictionary)
List< word > wordList
A List of words.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
virtual bool read(const dictionary &dict)
Read dictionary.
Mesh data needed to do the Finite Volume discretisation.
A class for managing temporary objects.
Calculate the matrix for implicit and explicit sources.
const dimensionSet dimTemperature