41 inletOutletFvPatchScalarField(p, iF),
47 this->refValue() =
Zero;
48 this->refGrad() =
Zero;
49 this->valueFraction() = 0.0;
62 inletOutletFvPatchScalarField(ptf, p, iF, mapper),
64 psiName_(ptf.psiName_),
78 inletOutletFvPatchScalarField(p, iF),
82 T0_(
"T0", dict, p.
size())
86 this->refValue() =
Zero;
87 if (dict.
found(
"value"))
99 this->refGrad() =
Zero;
100 this->valueFraction() = 0.0;
110 inletOutletFvPatchScalarField(tppsf),
111 UName_(tppsf.UName_),
112 psiName_(tppsf.psiName_),
113 gamma_(tppsf.gamma_),
125 inletOutletFvPatchScalarField(tppsf, iF),
126 UName_(tppsf.UName_),
127 psiName_(tppsf.psiName_),
128 gamma_(tppsf.gamma_),
140 inletOutletFvPatchScalarField::autoMap(m);
151 inletOutletFvPatchScalarField::rmap(ptf, addr);
154 refCast<const inletOutletTotalTemperatureFvPatchScalarField>(ptf);
156 T0_.
rmap(tiptf.T0_, addr);
176 scalar gM1ByG = (gamma_ - 1.0)/gamma_;
179 T0_/(1.0 + 0.5*psip*gM1ByG*(1.0 -
pos0(phip))*
magSqr(Up));
180 this->valueFraction() = 1.0 -
pos0(phip);
182 inletOutletFvPatchScalarField::updateCoeffs();
190 writeEntryIfDifferent<word>(os,
"U",
"U", UName_);
191 writeEntryIfDifferent<word>(os,
"phi",
"phi", this->phiName_);
192 writeEntryIfDifferent<word>(os,
"psi",
"psi", psiName_);
195 writeEntry(
"value", os);
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
A list of keyword definitions, which are a keyword followed by any number of values (e...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
void writeEntry(const word &keyword, Ostream &os) const
Write the field as a dictionary entry.
virtual void write(Ostream &) const
Write.
GeometricField< vector, fvPatchField, volMesh > volVectorField
Macros for easy insertion into run-time selection tables.
This boundary condition provides an outflow condition for total temperature for use with supersonic c...
GeometricField< scalar, fvPatchField, volMesh > volScalarField
makePatchTypeField(fvPatchVectorField, SRFFreestreamVelocityFvPatchVectorField)
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
virtual void write(Ostream &) const
Write.
virtual label size() const
Return size.
dimensioned< scalar > magSqr(const dimensioned< Type > &)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
volScalarField scalarField(fieldObject, mesh)
dimensionedScalar pos0(const dimensionedScalar &ds)
inletOutletTotalTemperatureFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.