41 fixedValueFvPatchScalarField(p, iF),
58 fixedValueFvPatchScalarField(p, iF, dict,
false),
64 p0_(
"p0", dict, p.
size())
66 if (dict.
found(
"value"))
88 fixedValueFvPatchScalarField(ptf, p, iF, mapper),
90 phiName_(ptf.phiName_),
91 rhoName_(ptf.rhoName_),
92 psiName_(ptf.psiName_),
103 fixedValueFvPatchScalarField(tppsf),
104 UName_(tppsf.UName_),
105 phiName_(tppsf.phiName_),
106 rhoName_(tppsf.rhoName_),
107 psiName_(tppsf.psiName_),
108 gamma_(tppsf.gamma_),
119 fixedValueFvPatchScalarField(tppsf, iF),
120 UName_(tppsf.UName_),
121 phiName_(tppsf.phiName_),
122 rhoName_(tppsf.rhoName_),
123 psiName_(tppsf.psiName_),
124 gamma_(tppsf.gamma_),
136 fixedValueFvPatchScalarField::autoMap(m);
147 fixedValueFvPatchScalarField::rmap(ptf, addr);
150 refCast<const totalPressureFvPatchScalarField>(ptf);
152 p0_.
rmap(tiptf.p0_, addr);
172 if (psiName_ ==
"none")
190 scalar gM1ByG = (gamma_ - 1)/gamma_;
197 (1.0 + 0.5*psip*gM1ByG*(1.0 -
pos0(phip))*
magSqr(Up)),
217 <<
" Incorrect pressure dimensions " << internalField().dimensions()
220 <<
" for compressible/variable density flow" <<
nl 222 <<
" for incompressible flow," <<
nl 223 <<
" on patch " << this->patch().name()
224 <<
" of field " << this->internalField().name()
225 <<
" in file " << this->internalField().objectPath()
229 fixedValueFvPatchScalarField::updateCoeffs();
238 patch().lookupPatchField<volVectorField, vector>(
UName())
246 writeEntryIfDifferent<word>(os,
"U",
"U", UName_);
247 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
errorManipArg< error, int > exit(error &err, const int errNo=1)
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const word & UName() const
Return the name of the velocity field.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
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...
virtual void write(Ostream &) const
Write.
virtual void write(Ostream &) const
Write.
Macros for easy insertion into run-time selection tables.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
const dimensionSet dimPressure
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)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
const dimensionSet dimDensity
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
totalPressureFvPatchScalarField(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...
const scalarField & p0() const
Return the total pressure.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
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.
This boundary condition provides a total pressure condition. Four variants are possible: ...