36Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField::
37inclinedFilmNusseltInletVelocityFvPatchVectorField
43 fixedValueFvPatchVectorField(
p, iF),
44 filmRegionName_(
"surfaceFilmProperties"),
51Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField::
52inclinedFilmNusseltInletVelocityFvPatchVectorField
60 fixedValueFvPatchVectorField(ptf,
p, iF, mapper),
61 filmRegionName_(ptf.filmRegionName_),
62 GammaMean_(ptf.GammaMean_.clone()),
64 omega_(ptf.omega_.clone())
68Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField::
69inclinedFilmNusseltInletVelocityFvPatchVectorField
76 fixedValueFvPatchVectorField(
p, iF,
dict),
79 dict.getOrDefault<
word>(
"filmRegion",
"surfaceFilmProperties")
87Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField::
88inclinedFilmNusseltInletVelocityFvPatchVectorField
93 fixedValueFvPatchVectorField(fmfrpvf),
94 filmRegionName_(fmfrpvf.filmRegionName_),
95 GammaMean_(fmfrpvf.GammaMean_.clone()),
96 a_(fmfrpvf.a_.clone()),
97 omega_(fmfrpvf.omega_.clone())
101Foam::inclinedFilmNusseltInletVelocityFvPatchVectorField::
102inclinedFilmNusseltInletVelocityFvPatchVectorField
108 fixedValueFvPatchVectorField(fmfrpvf, iF),
109 filmRegionName_(fmfrpvf.filmRegionName_),
110 GammaMean_(fmfrpvf.GammaMean_.clone()),
111 a_(fmfrpvf.a_.clone()),
112 omega_(fmfrpvf.omega_.clone())
125 const label patchi = patch().index();
145 if (patch().size() && (
max(
mag(gTan)) < SMALL))
148 <<
"is designed to operate on patches inclined with respect to "
158 nTan /=
mag(nTan) + ROOTVSMALL;
169 const scalar t = db().time().timeOutputValue();
171 const scalar GMean = GammaMean_->value(t);
172 const scalar a = a_->value(t);
173 const scalar omega = omega_->value(t);
181 const scalarField rhop(
rho.boundaryField()[patchi].patchInternalField());
187 fixedValueFvPatchVectorField::updateCoeffs();
200 "surfaceFilmProperties",
203 GammaMean_->writeData(
os);
205 omega_->writeData(
os);
206 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...
const Boundary & boundaryField() const
Return const-reference to the boundary field.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Ostream & writeEntryIfDifferent(const word &key, const T &value1, const T &value2)
Write a keyword/value entry only when the two values differ.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
virtual bool write()
Write the output fields.
A FieldMapper for finite-volume patch fields.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Film velocity boundary condition for inclined films that imposes a sinusoidal perturbation on top of ...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
const Type & lookupObject(const word &name, const bool recursive=false) const
Base class for region models.
const Time & time() const
Return the reference to the time database.
Kinematic form of single-cell layer surface film model.
A class for handling words, derived from Foam::string.
const volScalarField & mu
OBJstream os(runTime.globalPath()/outputName)
#define makePatchTypeField(PatchTypeField, typePatchTypeField)
#define WarningInFunction
Report a warning using Foam::Warning.
constexpr scalar twoPi(2 *M_PI)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
scalarField Re(const UList< complex > &cf)
Extract real component.
dimensionedScalar sin(const dimensionedScalar &ds)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
dimensionedScalar cbrt(const dimensionedScalar &ds)