Go to the documentation of this file.
43 fixedValueFvPatchVectorField(
p, iF),
44 filmRegionName_(
"surfaceFilmProperties"),
60 fixedValueFvPatchVectorField(ptf,
p, iF, mapper),
61 filmRegionName_(ptf.filmRegionName_),
62 GammaMean_(ptf.GammaMean_.clone()),
64 omega_(ptf.omega_.clone())
76 fixedValueFvPatchVectorField(
p, iF,
dict),
79 dict.getOrDefault<
word>(
"filmRegion",
"surfaceFilmProperties")
93 fixedValueFvPatchVectorField(fmfrpvf),
94 filmRegionName_(fmfrpvf.filmRegionName_),
95 GammaMean_(fmfrpvf.GammaMean_.clone()),
96 a_(fmfrpvf.a_.clone()),
97 omega_(fmfrpvf.omega_.clone())
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();
129 const regionModels::regionModel& region =
130 db().time().lookupObject<regionModels::regionModel>(filmRegionName_);
132 const regionModels::surfaceFilmModels::kinematicSingleLayer& film =
135 const regionModels::surfaceFilmModels::kinematicSingleLayer&
148 <<
"is designed to operate on patches inclined with respect to "
155 const vectorField nHatp(nHat.boundaryField()[patchi].patchInternalField());
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);
178 const scalarField mup(
mu.boundaryField()[patchi].patchInternalField());
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);
217 inclinedFilmNusseltInletVelocityFvPatchVectorField
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void write(Ostream &) const
Ostream & writeEntryIfDifferent(const word &key, const T &value1, const T &value2)
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
virtual void write(Ostream &) const
A class for handling words, derived from Foam::string.
const dimensionedScalar mu
const dimensionedScalar G
dimensionedScalar sin(const dimensionedScalar &ds)
virtual void updateCoeffs()
const Time & time() const
Kinematic form of single-cell layer surface film model.
Ostream & endl(Ostream &os)
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
Base class for region models.
Field< vector > vectorField
Specialisation of Field<T> for vector.
Generic templated field type.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
inclinedFilmNusseltInletVelocityFvPatchVectorField(const fvPatch &, const DimensionedField< vector, volMesh > &)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
const Type & lookupObject(const word &name, const bool recursive=false) const
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
label max(const labelHashSet &set, label maxValue=labelMin)
constexpr scalar twoPi(2 *M_PI)
Film velocity boundary condition for inclined films that imposes a sinusoidal perturbation on top of ...
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
OBJstream os(runTime.globalPath()/outputName)
Macros for easy insertion into run-time selection tables.
GeometricField< vector, fvPatchField, volMesh > volVectorField
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
fvPatchField< vector > fvPatchVectorField
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
scalarField Re(const UList< complex > &cf)
Foam::fvPatchFieldMapper.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
dimensionedScalar cbrt(const dimensionedScalar &ds)
Generic GeometricField class.
#define WarningInFunction
const Boundary & boundaryField() const
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...