41 turbulentHeatFluxTemperatureFvPatchScalarField::heatSourceType,
66 > turbulentHeatFluxTemperatureFvPatchScalarField::heatSourceTypeNames_;
78 fixedGradientFvPatchScalarField(p, iF),
82 QrName_(
"undefinedQr")
95 fixedGradientFvPatchScalarField(ptf, p, iF, mapper),
97 heatSource_(ptf.heatSource_),
111 fixedGradientFvPatchScalarField(p, iF),
113 heatSource_(heatSourceTypeNames_.read(dict.
lookup(
"heatSource"))),
114 q_(
"q", dict, p.
size()),
117 if (dict.
found(
"value") && dict.
found(
"gradient"))
137 fixedGradientFvPatchScalarField(thftpsf),
139 heatSource_(thftpsf.heatSource_),
141 QrName_(thftpsf.QrName_)
152 fixedGradientFvPatchScalarField(thftpsf, iF),
154 heatSource_(thftpsf.heatSource_),
156 QrName_(thftpsf.QrName_)
167 fixedGradientFvPatchScalarField::autoMap(m);
178 fixedGradientFvPatchScalarField::rmap(ptf, addr);
181 refCast<const turbulentHeatFluxTemperatureFvPatchScalarField>
186 q_.
rmap(thftptf.q_, addr);
202 if (QrName_ !=
"none")
211 const scalar Ap =
gSum(patch().magSf());
212 gradient() = (q_/Ap + qr)/
kappa(Tp);
217 gradient() = (q_ + qr)/
kappa(Tp);
224 "turbulentHeatFluxTemperatureFvPatchScalarField::updateCoeffs()" 225 ) <<
"Unknown heat source type. Valid types are: " 230 fixedGradientFvPatchScalarField::updateCoeffs();
240 os.
writeKeyword(
"heatSource") << heatSourceTypeNames_[heatSource_]
245 writeEntry(
"value", os);
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
A class for handling words, derived from string.
void write(Ostream &) const
Write.
errorManipArg< error, int > exit(error &err, const int errNo=1)
Foam::fvPatchFieldMapper.
makePatchTypeField(fvPatchScalarField, thermalBaffleFvPatchScalarField)
A list of keyword definitions, which are a keyword followed by any number of values (e...
turbulentHeatFluxTemperatureFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
Type gSum(const FieldField< Field, Type > &f)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
void writeEntry(const word &keyword, Ostream &os) const
Write the field as a dictionary entry.
Macros for easy insertion into run-time selection tables.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
Ostream & writeKeyword(const keyType &)
Write the keyword followed by an appropriate indentation.
Initialise the NamedEnum HashTable from the static list of names.
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
virtual void write(Ostream &) const
Write.
tmp< scalarField > kappa(const scalarField &Tp) const
Given patch temperature calculate corresponding K field.
Common functions for use in temperature coupled boundaries.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
virtual label size() const
Return size.
heatSourceType
Enumeration listing the possible hest source input modes.