114 virtual const word&
type()
const = 0;
313#define makeFvDdtTypeScheme(SS, Type) \
314 defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0); \
320 ddtScheme<Type>::addIstreamConstructorToTable<SS<Type>> \
321 add##SS##Type##IstreamConstructorToTable_; \
325#define makeFvDdtScheme(SS) \
327makeFvDdtTypeScheme(SS, scalar) \
328makeFvDdtTypeScheme(SS, vector) \
329makeFvDdtTypeScheme(SS, sphericalTensor) \
330makeFvDdtTypeScheme(SS, symmTensor) \
331makeFvDdtTypeScheme(SS, tensor) \
339tmp<surfaceScalarField> SS<scalar>::fvcDdtUfCorr \
341 const volScalarField& U, \
342 const surfaceScalarField& Uf \
346 return surfaceScalarField::null(); \
350tmp<surfaceScalarField> SS<scalar>::fvcDdtPhiCorr \
352 const volScalarField& U, \
353 const surfaceScalarField& phi \
357 return surfaceScalarField::null(); \
361tmp<surfaceScalarField> SS<scalar>::fvcDdtUfCorr \
363 const volScalarField& rho, \
364 const volScalarField& U, \
365 const surfaceScalarField& Uf \
369 return surfaceScalarField::null(); \
373tmp<surfaceScalarField> SS<scalar>::fvcDdtPhiCorr \
375 const volScalarField& rho, \
376 const volScalarField& U, \
377 const surfaceScalarField& phi \
381 return surfaceScalarField::null(); \
Generic GeometricField class.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Generic dimensioned Type class.
Mesh data needed to do the Finite Volume discretisation.
Non-templated base class for ddt schemes.
static bool experimentalDdtCorr
Abstract base class for ddt schemes.
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const volScalarField &, const GeometricField< Type, fvPatchField, volMesh > &)=0
ddtScheme(const ddtScheme &)=delete
No copy construct.
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const dimensionedScalar &, const GeometricField< Type, fvPatchField, volMesh > &)=0
virtual ~ddtScheme()=default
Destructor.
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const GeometricField< Type, fvPatchField, volMesh > &)=0
scalar ddtPhiCoeff_
Input for fvcDdtPhiCoeff.
static tmp< ddtScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return a pointer to a new ddtScheme created on freestore.
virtual tmp< fluxFieldType > fvcDdtPhiCorr(const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)=0
virtual tmp< fvMatrix< Type > > fvmDdt(const dimensionedScalar &, const GeometricField< Type, fvPatchField, volMesh > &)=0
ddtScheme(const fvMesh &mesh, Istream &is)
Construct from mesh and Istream.
declareRunTimeSelectionTable(tmp, ddtScheme, Istream,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
virtual tmp< surfaceScalarField > meshPhi(const GeometricField< Type, fvPatchField, volMesh > &)=0
virtual tmp< fluxFieldType > fvcDdtUfCorr(const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)=0
virtual tmp< fvMatrix< Type > > fvmDdt(const GeometricField< Type, fvPatchField, volMesh > &)=0
virtual tmp< fvMatrix< Type > > fvmDdt(const volScalarField &, const GeometricField< Type, fvPatchField, volMesh > &)=0
tmp< surfaceScalarField > fvcDdtPhiCoeffExperimental(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
const fvMesh & mesh() const
Return mesh reference.
void operator=(const ddtScheme &)=delete
No copy assignment.
virtual tmp< fluxFieldType > fvcDdtPhiCorr(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)=0
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const dimensioned< Type > &)=0
virtual tmp< fluxFieldType > fvcDdtUfCorr(const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)=0
tmp< surfaceScalarField > fvcDdtPhiCoeff(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
virtual const word & type() const =0
Runtime type information.
ddtScheme(const fvMesh &mesh)
Construct from mesh.
GeometricField< typename flux< Type >::type, fvsPatchField, surfaceMesh > fluxFieldType
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
Reference counter for various OpenFOAM components.
Mesh data needed to do the Finite Volume discretisation.
A class for managing temporary objects.
type
Volume classification types.
A class for handling words, derived from Foam::string.
autoPtr< surfaceVectorField > Uf
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)