41 mixedFvPatchVectorField(p, iF),
48 valueFraction() = 0.0;
61 mixedFvPatchVectorField(ptf, p, iF, mapper),
62 phiName_(ptf.phiName_),
63 rhoName_(ptf.rhoName_),
64 inletDir_(ptf.inletDir_, mapper)
76 mixedFvPatchVectorField(p, iF),
79 inletDir_(
"inletDirection", dict, p.
size())
84 valueFraction() = 0.0;
94 mixedFvPatchVectorField(pivpvf),
95 phiName_(pivpvf.phiName_),
96 rhoName_(pivpvf.rhoName_),
97 inletDir_(pivpvf.inletDir_)
108 mixedFvPatchVectorField(pivpvf, iF),
109 phiName_(pivpvf.phiName_),
110 rhoName_(pivpvf.rhoName_),
111 inletDir_(pivpvf.inletDir_)
122 mixedFvPatchVectorField::autoMap(m);
123 inletDir_.autoMap(m);
133 mixedFvPatchVectorField::rmap(ptf, addr);
136 refCast<const pressureDirectedInletOutletVelocityFvPatchVectorField>
139 inletDir_.
rmap(tiptf.inletDir_, addr);
161 refValue() = inletDir_*phip/ndmagS;
168 refValue() = inletDir_*phip/(rhop*ndmagS);
173 <<
"dimensions of phi are not correct" 174 <<
"\n on patch " << this->patch().name()
175 <<
" of field " << this->internalField().name()
176 <<
" in file " << this->internalField().objectPath()
180 valueFraction() = 1.0 -
pos0(phip);
182 mixedFvPatchVectorField::updateCoeffs();
192 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
193 writeEntryIfDifferent<word>(os,
"rho",
"rho", rhoName_);
195 writeEntry(
"value", os);
201 void Foam::pressureDirectedInletOutletVelocityFvPatchVectorField::operator=
208 valueFraction()*(inletDir_*(inletDir_ & pvf))
209 + (1 - valueFraction())*pvf
errorManipArg< error, int > exit(error &err, const int errNo=1)
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A list of keyword definitions, which are a keyword followed by any number of values (e...
pressureDirectedInletOutletVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
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.
volVectorField vectorField(fieldObject, mesh)
virtual void write(Ostream &) const
Write.
Macros for easy insertion into run-time selection tables.
virtual void rmap(const fvPatchVectorField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
makePatchTypeField(fvPatchVectorField, SRFFreestreamVelocityFvPatchVectorField)
const dimensionSet & dimensions() const
Return dimensions.
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
virtual label size() const
Return size.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
dimensionedScalar pos0(const dimensionedScalar &ds)
const dimensionSet dimDensity
virtual void write(Ostream &) const
Write.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is...
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
A class for managing temporary objects.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
const dimensionSet dimArea(sqr(dimLength))
const dimensionSet dimVelocity