42 mixedFvPatchScalarField(
p, iF)
44 valueFraction() = 0.0;
58 mixedFvPatchScalarField(
p, iF,
dict)
71 mixedFvPatchScalarField(ptf,
p, iF, mapper, false)
84 mixedFvPatchScalarField(tppsf, iF)
97 mapper(*
this, ptf, [&](){
return patchInternalField(); });
98 mapper(refValue(), ptf.refValue(), [&](){ return patchInternalField(); });
99 mapper(refGrad(), ptf.refGrad(), scalar(0));
100 mapper(valueFraction(), ptf.valueFraction(), scalar(0));
110 map(refCast<const mixedEnergyFvPatchScalarField>(ptf), mapper);
127 if (isA<mixedFvPatchScalarField>(Tp))
129 mixedFvPatchScalarField& Tm =
130 refCast<mixedFvPatchScalarField>(Tp);
134 valueFraction() = Tm.valueFraction();
138 + patch().deltaCoeffs()*
141 -
thermo.
he(Tm, patch().faceCells())
144 else if (isA<mixedEnergyCalculatedTemperatureFvPatchScalarField>(Tp))
147 refCast<mixedEnergyCalculatedTemperatureFvPatchScalarField>(Tp);
158 <<
"Temperature boundary condition not recognised."
159 <<
"A " << typeName <<
" condition for energy must be used with a "
160 << mixedFvPatchScalarField::typeName <<
" or "
161 << mixedEnergyCalculatedTemperatureFvPatchScalarField::typeName
162 <<
" condition for temperature."
166 mixedFvPatchScalarField::updateCoeffs();
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const Boundary & boundaryField() const
Return const-reference to the boundary field.
Base-class for fluid and solid thermodynamic properties.
static const basicThermo & lookupThermo(const FieldType &f)
Lookup the thermo associated with the given field.
virtual const volScalarField & T() const =0
Temperature [K].
virtual const volScalarField & Cpv() const =0
Heat capacity at constant pressure/volume [J/kg/K].
virtual const volScalarField & he() const =0
Enthalpy/Internal energy [J/kg].
A list of keyword definitions, which are a keyword followed by any number of values (e....
Abstract base class for field mapping.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Base class for temperature boundary conditions in which the parameters of the mixed energy condition ...
scalarField & heRefGrad()
Access the energy gradient.
scalarField & heValueFraction()
Access the energy fraction.
scalarField & heRefValue()
Access the energy value.
This boundary condition provides a mixed condition for energy. This is selected when the correspondin...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
void map(const mixedEnergyFvPatchScalarField &, const fieldMapper &)
Map the given fvPatchField onto this fvPatchField.
mixedEnergyFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
errorManipArg< error, int > exit(error &err, const int errNo=1)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
makeNullConstructablePatchTypeField(fvPatchVectorField, noSlipFvPatchVectorField)
fluidMulticomponentThermo & thermo