Go to the documentation of this file.
60 bool nbrModelFound =
false;
68 refCast<const interRegionHeatTransferModel>(
fvOptions[i])
79 <<
" in region " << nbrMesh.
name() <<
nl
94 if (mesh_.time().timeIndex() != timeIndex_)
97 timeIndex_ = mesh_.time().timeIndex();
102 nbrModel().correct();
113 const word& modelType,
125 nbrModelName_(coeffs_.get<
word>(
"nbrModel")),
128 semiImplicit_(
false),
135 mesh.time().timeName(),
142 zeroGradientFvPatchScalarField::typeName
144 TName_(coeffs_.getOrDefault<
word>(
"T",
"T")),
145 TNbrName_(coeffs_.getOrDefault<
word>(
"TNbr",
"T"))
149 coeffs_.readEntry(
"fields", fieldNames_);
150 applied_.setSize(fieldNames_.size(),
false);
152 coeffs_.readEntry(
"semiImplicit", semiImplicit_);
178 mesh_.time().timeName(),
186 auto& Tmapped = tTmapped.
ref();
197 Info<<
"Volumetric integral of htc: "
201 if (mesh_.time().writeTime())
221 eqn += htc_*(Tmapped -
T) + htcByCpv*
he -
fvm::Sp(htcByCpv,
he);
228 Info<<
"Energy exchange from region " << nbrMesh.
name()
229 <<
" To " << mesh_.name() <<
" : " << energy.
value()
236 <<
" on mesh " << mesh_.name()
237 <<
" could not find object basicThermo."
238 <<
" The available objects are: "
250 eqn += htc_*(Tmapped -
T);
int debug
Static debugging option.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
word nbrRegionName_
Name of the neighbour region to map.
void correct()
Correct to calculate the inter-region heat transfer coefficient.
A class for handling words, derived from Foam::string.
static constexpr const zero Zero
Global zero (0)
const dimensionSet dimEnergy
const word & name() const
Return const access to the source name.
Base class for inter region heat exchange. The derived classes must provide the heat transfer coeffis...
dimensioned< Type > domainIntegrate(const GeometricField< Type, fvPatchField, volMesh > &vf)
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
Abstract base-class for fluid and solid thermodynamic properties.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const Type & value() const
Return const reference to value.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
interRegionHeatTransferModel * nbrModel_
Pointer to neighbour interRegionHeatTransferModel.
const fvMesh & mesh_
Reference to the mesh database.
#define forAll(list, i)
Loop across all elements in list.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const GeometricField< Type, fvPatchField, volMesh > &)
Base class for inter-region exchange.
messageStream Info
Information stream (uses stdout - output is on the master only)
word name(const complex &c)
Return string representation of complex.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
word nbrModelName_
Name of the model in the neighbour mesh.
interRegionHeatTransferModel(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from dictionary.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const Type & lookupObject(const word &name, const bool recursive=false) const
word dictName() const
The local dictionary name (final part of scoped name)
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
virtual bool write(const token &tok)=0
Write token to stream or otherwise handle it.
Mesh data needed to do the Finite Volume discretisation.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
virtual void addSup(fvMatrix< scalar > &eqn, const label fieldi)
Source term to energy equation.
bool firstIter_
First iteration.
Calculate the matrix for implicit and explicit sources.
errorManipArg< error, int > exit(error &err, const int errNo=1)
void setNbrModel()
Set the neighbour interRegionHeatTransferModel.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Internal & ref(const bool updateAccessTime=true)
Return a reference to the dimensioned internal field.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
Volume integrate volField creating a volField.
static tmp< T > New(Args &&... args)
Construct tmp of T with forwarding arguments.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
virtual bool read(const dictionary &dict)
Read dictionary.
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
const Time & time() const
Return the top-level database.
defineTypeNameAndDebug(atmAmbientTurbSource, 0)
const dimensionSet dimVolume(pow3(dimLength))
List of finite volume options.
virtual bool read(const dictionary &dict)
Read dictionary.
const word & name() const
Return reference to name.