41 directionMixedFvPatchVectorField(p, iF),
44 refValue() = vector::zero;
45 refGrad() = vector::zero;
46 valueFraction() = symmTensor::zero;
59 directionMixedFvPatchVectorField(ptf, p, iF, mapper),
60 phiName_(ptf.phiName_)
62 if (ptf.tangentialVelocity_.
size())
64 tangentialVelocity_ = mapper(ptf.tangentialVelocity_);
77 directionMixedFvPatchVectorField(p, iF),
82 if (dict.
found(
"tangentialVelocity"))
91 refValue() = vector::zero;
94 refGrad() = vector::zero;
95 valueFraction() = symmTensor::zero;
105 directionMixedFvPatchVectorField(pivpvf),
106 phiName_(pivpvf.phiName_),
107 tangentialVelocity_(pivpvf.tangentialVelocity_)
118 directionMixedFvPatchVectorField(pivpvf, iF),
119 phiName_(pivpvf.phiName_),
120 tangentialVelocity_(pivpvf.tangentialVelocity_)
131 refValue() = tangentialVelocity_ - n*(n & tangentialVelocity_);
140 directionMixedFvPatchVectorField::autoMap(m);
141 if (tangentialVelocity_.
size())
143 tangentialVelocity_.
autoMap(m);
154 directionMixedFvPatchVectorField::rmap(ptf, addr);
156 if (tangentialVelocity_.
size())
159 refCast<const pressureInletOutletVelocityFvPatchVectorField>(ptf);
161 tangentialVelocity_.
rmap(tiptf.tangentialVelocity_, addr);
176 valueFraction() =
neg(phip)*(
I -
sqr(patch().nf()));
178 directionMixedFvPatchVectorField::updateCoeffs();
179 directionMixedFvPatchVectorField::evaluate();
190 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
191 if (tangentialVelocity_.
size())
193 tangentialVelocity_.
writeEntry(
"tangentialVelocity", os);
195 writeEntry(
"value", os);
201 void Foam::pressureInletOutletVelocityFvPatchVectorField::operator=
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
dimensionedScalar neg(const dimensionedScalar &ds)
static const sphericalTensor I(1)
void setTangentialVelocity(const vectorField &tangentialVelocity)
Reset the tangential velocity.
A class for handling words, derived from string.
void size(const label)
Override size to be inconsistent with allocated storage.
Foam::fvPatchFieldMapper.
A list of keyword definitions, which are a keyword followed by any number of values (e...
pressureInletOutletVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
virtual void write(Ostream &) const
Write.
void autoMap(const FieldMapper &map)
Map from self.
virtual void write(Ostream &) const
Write.
volVectorField vectorField(fieldObject, mesh)
dimensionSet transform(const dimensionSet &)
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
void writeEntry(const word &keyword, Ostream &os) const
Write the field as a dictionary entry.
Macros for easy insertion into run-time selection tables.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
void rmap(const UList< Type > &mapF, const labelUList &mapAddressing)
1 to 1 reverse-map from the given field
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
makePatchTypeField(fvPatchVectorField, SRFFreestreamVelocityFvPatchVectorField)
const vectorField & tangentialVelocity() const
Return the tangential velocity.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is...
virtual label size() const
Return size.
A class for managing temporary objects.
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
virtual void rmap(const fvPatchVectorField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.