70 #ifndef cellCoBlended_H 71 #define cellCoBlended_H 154 if (Co1_ < 0 || Co2_ < 0 || Co1_ >= Co2_)
157 <<
"coefficients = " << Co1_ <<
" and " << Co2_
158 <<
" should be > 0 and Co2 > Co1" 185 if (Co1_ < 0 || Co2_ < 0 || Co1_ >= Co2_)
188 <<
"coefficients = " << Co1_ <<
" and " << Co2_
189 <<
" should be > 0 and Co2 > Co1" 211 mesh.objectRegistry::template lookupObject<volScalarField>
220 "cellCoBlended::blendingFactor()" 221 ) <<
"dimensions of faceFlux are not correct" 235 zeroGradientFvPatchScalarField::typeName
245 Co.correctBoundaryConditions();
251 vf.
name() +
"BlendingFactor",
277 bf*tScheme1_().weights(vf)
278 + (scalar(1.0) - bf)*tScheme2_().weights(vf);
293 bf*tScheme1_().interpolate(vf)
294 + (scalar(1.0) - bf)*tScheme2_().interpolate(vf);
301 return tScheme1_().corrected() || tScheme2_().corrected();
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &vf, const surfaceScalarField &faceFlux, Istream &schemeData)
static tmp< surfaceInterpolationScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return new tmp interpolation scheme.
tmp< surfaceScalarField > weights(const GeometricField< Type, fvPatchField, volMesh > &vf) const
Return the interpolation weighting factors.
Mesh data needed to do the Finite Volume discretisation.
dimensioned< scalar > mag(const dimensioned< Type > &)
const DimensionedField< scalar, volMesh > & V() const
Return cell volumes.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
tmp< GeometricField< Type, fvPatchField, volMesh > > surfaceSum(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
const dimensionSet dimArea(sqr(dimLength))
A class for handling words, derived from string.
static word timeName(const scalar, const int precision=precision_)
Return time name of given scalar time.
errorManipArg< error, int > exit(error &err, const int errNo=1)
TypeName("cellCoBlended")
Runtime type information.
const dimensionSet dimDensity
Two-scheme cell-based Courant number based blending differencing scheme.
const Time & time() const
Return the top-level database.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
scalar deltaTValue() const
Return time step value.
Surface integrate surfaceField creating a volField. Surface sum a surfaceField creating a volField...
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &vf) const
Return the face-interpolate of the given cell field.
Abstract base class for surface interpolation schemes.
const fvMesh & mesh() const
Return mesh reference.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
bool readScalar(const char *buf, doubleScalar &s)
Read whole of buf as a scalar. Return true if succesful.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
virtual bool corrected() const
Return true if this scheme uses an explicit correction.
const dimensionSet & dimensions() const
Return dimensions.
const word & name() const
Return name.
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
Base class for blended schemes to provide access to the blending factor surface field.
virtual tmp< surfaceScalarField > blendingFactor(const GeometricField< Type, fvPatchField, volMesh > &vf) const
Return the face-based blending factor.
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
const dimensionSet dimVelocity
#define FatalIOErrorIn(functionName, ios)
Report an error message using Foam::FatalIOError.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A class for managing temporary objects.
conserve internalField()+
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > correction(const GeometricField< Type, fvPatchField, volMesh > &vf) const
Return the explicit correction to the face-interpolate.