51 this->refValue() =
Zero;
52 this->refGrad() =
Zero;
53 this->valueFraction() = 0.0;
71 if (dict.
found(
"value"))
83 this->refValue() = *
this;
84 this->refGrad() =
Zero;
85 this->valueFraction() = 0.0;
89 dict.
lookup(
"fieldInf") >> fieldInf_;
96 ) <<
"unphysical lInf specified (lInf < 0)" <<
nl 97 <<
" on patch " << this->patch().name()
98 <<
" of field " << this->internalField().name()
99 <<
" in file " << this->internalField().objectPath()
116 phiName_(ptf.phiName_),
117 rhoName_(ptf.rhoName_),
118 fieldInf_(ptf.fieldInf_),
131 phiName_(ptpsf.phiName_),
132 rhoName_(ptpsf.rhoName_),
133 fieldInf_(ptpsf.fieldInf_),
145 this->db().objectRegistry::template lookupObject<surfaceScalarField>
149 this->patch().template lookupPatchField<surfaceScalarField, scalar>
157 this->patch().template lookupPatchField<volScalarField, scalar>
162 return phip/(rhop*this->patch().magSf());
166 return phip/this->patch().magSf();
179 const fvMesh&
mesh = this->internalField().mesh();
183 mesh.
ddtScheme(this->internalField().name())
185 scalar deltaT = this->db().time().deltaTValue();
188 this->db().objectRegistry::template
189 lookupObject<GeometricField<Type, fvPatchField, volMesh>>
191 this->internalField().name()
221 this->valueFraction() = (1.0 +
k)/(1.0 + alpha + k);
232 this->valueFraction() = (1.5 +
k)/(1.5 + alpha + k);
240 fv::localEulerDdt::localRDeltaT(mesh);
256 this->valueFraction() = (1.0 +
k)/(1.0 + alpha + k);
262 <<
" on patch " << this->patch().name()
263 <<
" of field " << this->internalField().name()
264 <<
" in file " << this->internalField().objectPath()
278 this->valueFraction() = 1.0/(1.0 +
alpha);
288 this->valueFraction() = 1.5/(1.5 +
alpha);
296 fv::localEulerDdt::localRDeltaT(mesh);
306 this->valueFraction() = 1.0/(1.0 +
alpha);
312 <<
"\n on patch " << this->patch().name()
313 <<
" of field " << this->internalField().name()
314 <<
" in file " << this->internalField().objectPath()
328 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
329 writeEntryIfDifferent<word>(os,
"rho",
"rho", rhoName_);
Local time-step first-order Euler implicit/explicit ddt.
Second-oder Crank-Nicolson implicit ddt using the current and previous time-step fields as well as th...
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
const GeometricField< Type, PatchField, GeoMesh > & oldTime() const
Return old time field.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
void size(const label)
Override size to be inconsistent with allocated storage.
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
This boundary condition provides a base class for 'mixed' type boundary conditions, i.e. conditions that mix fixed value and patch-normal gradient conditions.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
ITstream & ddtScheme(const word &name) const
label k
Boltzmann constant.
Macros for easy insertion into run-time selection tables.
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
const dimensionSet & dimensions() const
Return dimensions.
Pre-declare SubField and related Field type.
A class for handling words, derived from string.
advectiveFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &)
Construct from patch and internal field.
Foam::fvPatchFieldMapper.
bool readIfPresent(const word &, T &, bool recursive=false, bool patternMatch=true) const
Find an entry if present, and assign to T.
void write(std::ostream &os, const bool binary, List< floatScalar > &fField)
Write floats ascii or binary.
Second-order backward-differencing ddt using the current and two previous time-step values...
virtual tmp< scalarField > advectionSpeed() const
Calculate and return the advection speed at the boundary.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void write(Ostream &) const
Write.
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
const dimensionSet dimMassFlux
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Mesh data needed to do the Finite Volume discretisation.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
This boundary condition provides an advective outflow condition, based on solving DDt(W...
A class for managing temporary objects.
Basic first-order Euler implicit/explicit ddt using only the current and previous time-step values...
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.