37Foam::inletOutletTotalTemperatureFvPatchScalarField::
38inletOutletTotalTemperatureFvPatchScalarField
44 inletOutletFvPatchScalarField(
p, iF),
50 this->refValue() =
Zero;
51 this->refGrad() =
Zero;
52 this->valueFraction() = 0.0;
56Foam::inletOutletTotalTemperatureFvPatchScalarField::
57inletOutletTotalTemperatureFvPatchScalarField
65 inletOutletFvPatchScalarField(ptf,
p, iF, mapper),
67 psiName_(ptf.psiName_),
73Foam::inletOutletTotalTemperatureFvPatchScalarField::
74inletOutletTotalTemperatureFvPatchScalarField
81 inletOutletFvPatchScalarField(
p, iF),
82 UName_(
dict.getOrDefault<
word>(
"U",
"U")),
83 psiName_(
dict.getOrDefault<
word>(
"psi",
"thermo:psi")),
84 gamma_(
dict.get<scalar>(
"gamma")),
85 T0_(
"T0",
dict,
p.size())
91 this->refValue() =
Zero;
104 this->refGrad() =
Zero;
105 this->valueFraction() = 0.0;
109Foam::inletOutletTotalTemperatureFvPatchScalarField::
110inletOutletTotalTemperatureFvPatchScalarField
115 inletOutletFvPatchScalarField(tppsf),
116 UName_(tppsf.UName_),
117 psiName_(tppsf.psiName_),
118 gamma_(tppsf.gamma_),
123Foam::inletOutletTotalTemperatureFvPatchScalarField::
124inletOutletTotalTemperatureFvPatchScalarField
130 inletOutletFvPatchScalarField(tppsf, iF),
131 UName_(tppsf.UName_),
132 psiName_(tppsf.psiName_),
133 gamma_(tppsf.gamma_),
145 inletOutletFvPatchScalarField::autoMap(m);
156 inletOutletFvPatchScalarField::rmap(ptf, addr);
159 refCast<const inletOutletTotalTemperatureFvPatchScalarField>(ptf);
161 T0_.rmap(tiptf.T0_, addr);
181 scalar gM1ByG = (gamma_ - 1.0)/gamma_;
184 T0_/(1.0 + 0.5*psip*gM1ByG*(1.0 -
pos0(phip))*
magSqr(Up));
185 this->valueFraction() = 1.0 -
pos0(phip);
187 inletOutletFvPatchScalarField::updateCoeffs();
200 writeEntry(
"value",
os);
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...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
Ostream & writeEntryIfDifferent(const word &key, const T &value1, const T &value2)
Write a keyword/value entry only when the two values differ.
void size(const label n)
Older name for setAddressableSize.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
T getOrDefault(const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
bool found(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Search for an entry (const access) with the given keyword.
virtual bool write()
Write the output fields.
A FieldMapper for finite-volume patch fields.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void operator=(const UList< Type > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
This boundary condition provides an outflow condition for total temperature for use with supersonic c...
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A class for handling words, derived from Foam::string.
static const word null
An empty word.
OBJstream os(runTime.globalPath()/outputName)
#define makePatchTypeField(PatchTypeField, typePatchTypeField)
GeometricField< vector, fvPatchField, volMesh > volVectorField
dimensionedScalar pos0(const dimensionedScalar &ds)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
static constexpr const zero Zero
Global zero (0)
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)