37Foam::uniformTotalPressureFvPatchScalarField::
38uniformTotalPressureFvPatchScalarField
44 fixedValueFvPatchScalarField(
p, iF),
54Foam::uniformTotalPressureFvPatchScalarField::
55uniformTotalPressureFvPatchScalarField
62 fixedValueFvPatchScalarField(
p, iF,
dict, false),
63 UName_(
dict.getOrDefault<
word>(
"U",
"U")),
64 phiName_(
dict.getOrDefault<
word>(
"phi",
"phi")),
65 rhoName_(
dict.getOrDefault<
word>(
"rho",
"rho")),
66 psiName_(
dict.getOrDefault<
word>(
"psi",
"none")),
67 gamma_(psiName_ !=
"none" ?
dict.get<scalar>(
"gamma") : 1),
79 const scalar t = this->db().time().timeOutputValue();
85Foam::uniformTotalPressureFvPatchScalarField::
86uniformTotalPressureFvPatchScalarField
94 fixedValueFvPatchScalarField(
p, iF),
96 phiName_(ptf.phiName_),
97 rhoName_(ptf.rhoName_),
98 psiName_(ptf.psiName_),
102 patchType() = ptf.patchType();
106 const scalar t = this->db().time().timeOutputValue();
111Foam::uniformTotalPressureFvPatchScalarField::
112uniformTotalPressureFvPatchScalarField
117 fixedValueFvPatchScalarField(ptf),
119 phiName_(ptf.phiName_),
120 rhoName_(ptf.rhoName_),
121 psiName_(ptf.psiName_),
127Foam::uniformTotalPressureFvPatchScalarField::
128uniformTotalPressureFvPatchScalarField
134 fixedValueFvPatchScalarField(ptf, iF),
136 phiName_(ptf.phiName_),
137 rhoName_(ptf.rhoName_),
138 psiName_(ptf.psiName_),
156 scalar
p0 = p0_->value(this->db().time().timeOutputValue());
163 if (psiName_ ==
"none")
181 scalar gM1ByG = (gamma_ - 1)/gamma_;
188 (1.0 + 0.5*psip*gM1ByG*(1.0 -
pos0(phip))*
magSqr(Up)),
208 <<
" Incorrect pressure dimensions " << internalField().dimensions()
211 <<
" for compressible/variable density flow" <<
nl
213 <<
" for incompressible flow," <<
nl
214 <<
" on patch " << this->patch().name()
215 <<
" of field " << this->internalField().name()
216 <<
" in file " << this->internalField().objectPath()
220 fixedValueFvPatchScalarField::updateCoeffs();
226 updateCoeffs(patch().lookupPatchField<volVectorField, vector>(UName_));
239 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...
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
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,...
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...
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...
friend bool operator==(const refineCell &rc1, const refineCell &rc2)
A class for handling words, derived from Foam::string.
const volScalarField & p0
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
OBJstream os(runTime.globalPath()/outputName)
#define makePatchTypeField(PatchTypeField, typePatchTypeField)
const dimensionSet dimPressure
dimensionedScalar pos0(const dimensionedScalar &ds)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
const dimensionSet dimDensity
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
constexpr char nl
The newline '\n' character (0x0a)