50 this->db().time().userUnits(),
60 this->db().time().userUnits(),
65 phiName_(
dict.lookupOrDefault<
word>(
"phi",
"phi"))
67 if (
dict.found(
"value"))
95 inletValueAbove_(ptf.inletValueAbove_, false),
96 inletValueBelow_(ptf.inletValueBelow_, false),
97 phiName_(ptf.phiName_)
109 inletValueAbove_(ptf.inletValueAbove_, false),
110 inletValueBelow_(ptf.inletValueBelow_, false),
111 phiName_(ptf.phiName_)
126 this->patch().template lookupPatchField<surfaceScalarField, scalar>
131 const scalar t = this->db().time().value();
135 const pointField& localPoints = this->patch().patch().localPoints();
141 waves.
height(t, this->patch().Cf()),
142 waves.
height(t, localPoints),
143 Field<Type>(this->size(), inletValueAbove_->value(t)),
145 Field<Type>(this->size(), inletValueBelow_->value(t)),
149 this->valueFraction() = 1 -
pos0(phip);
162 this->db().time().userUnits(),
169 this->db().time().userUnits(),
173 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
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...
const dimensionSet & dimensions() const
Return dimensions.
Pre-declare SubField and related Field type.
Run-time selectable general function of one variable.
void size(const label)
Override size to be inconsistent with allocated storage.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of keyword definitions, which are a keyword followed by any number of values (e....
Abstract base class for field mapping.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void write(Ostream &) const
Write.
virtual tmp< Field< Type > > patchInternalField() const
Return internal field next to patch as patch field.
virtual void operator=(const UList< Type > &)
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
This boundary condition provides a base class for 'mixed' type boundary conditions,...
virtual Field< Type > & refValue()
virtual scalarField & valueFraction()
virtual Field< Type > & refGrad()
This boundary condition provides an inlet-outlet condition with differing inlet values on either side...
virtual void write(Ostream &) const
Write.
waveInletOutletFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
A wrapper around a list of wave models. Superimposes the modelled values of elevation and velocity....
virtual tmp< scalarField > height(const scalar t, const vectorField &p) const
Get the height above the waves at a given time and global positions.
static const waveSuperposition & New(const objectRegistry &db)
Return a reference to the wave model on the given database,.
A class for handling words, derived from string.
autoPtr< CompressibleMomentumTransportModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const viscosity &viscosity)
dimensionedScalar pos0(const dimensionedScalar &ds)
const HashTable< dimensionSet > & dimensions()
Get the table of dimension sets.
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
tmp< Field< Type > > levelSetAverage(const fvMesh &mesh, const scalarField &levelC, const scalarField &levelP, const Field< Type > &positiveC, const Field< Type > &positiveP, const Field< Type > &negativeC, const Field< Type > &negativeP)
Calculate the average value of two fields, one on each side of a level set.