46 inletOutletFvPatchVectorField(
p, iF),
61 inletOutletFvPatchVectorField(ptf,
p, iF, mapper),
62 relative_(ptf.relative_),
75 inletOutletFvPatchVectorField(
p, iF),
76 relative_(
dict.getOrDefault(
"relative", false)),
79 this->phiName_ =
dict.getOrDefault<
word>(
"phi",
"phi");
91 inletOutletFvPatchVectorField(srfvpvf),
92 relative_(srfvpvf.relative_),
104 inletOutletFvPatchVectorField(srfvpvf, iF),
105 relative_(srfvpvf.relative_),
120 const SRF::SRFModel& srf =
121 db().lookupObject<SRF::SRFModel>(
"SRFProperties");
126 this->internalField().
mesh()
127 .ddtScheme(this->internalField().
name())
130 if (ddtScheme == fv::steadyStateDdtScheme<scalar>::typeName)
135 refValue() = UInf_ - srf.velocity(
patch().Cf());
146 scalar time = this->db().time().value();
147 scalar theta = time*
mag(srf.omega().value());
150 cos(theta)*UInf_ +
sin(theta)*(srf.axis() ^ UInf_)
151 - srf.velocity(
patch().Cf());
155 valueFraction() = 1.0 -
pos0(refValue() &
patch().Sf());
167 writeEntry(
"value",
os);
178 SRFFreestreamVelocityFvPatchVectorField
List< ReturnType > get(const UPtrList< T > &list, const AccessOp &aop)
List of values generated by applying the access operation to each list item.
fvPatchField< vector > fvPatchVectorField
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
A list of keyword definitions, which are a keyword followed by a number of values (eg...
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
virtual void write(Ostream &) const
Write.
Macros for easy insertion into run-time selection tables.
dimensionedScalar cos(const dimensionedScalar &ds)
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
A class for handling words, derived from Foam::string.
A FieldMapper for finite-volume patch fields.
SRFFreestreamVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
Construct from patch and internal field.
virtual void write(Ostream &) const
Write.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
dimensionedScalar pos0(const dimensionedScalar &ds)
dimensionedScalar sin(const dimensionedScalar &ds)
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
OBJstream os(runTime.globalPath()/outputName)
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
Freestream velocity condition to be used in conjunction with the single rotating frame (SRF) model (s...
virtual void operator=(const UList< Type > &)
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const std::string patch
OpenFOAM patch number as a std::string.
Field< vector > vectorField
Specialisation of Field<T> for vector.
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
static constexpr const zero Zero
Global zero (0)