Public Types | Public Member Functions | List of all members
localEulerDdtScheme< Type > Class Template Reference

Local time-step first-order Euler implicit/explicit ddt. More...

Inheritance diagram for localEulerDdtScheme< Type >:
Inheritance graph
[legend]
Collaboration diagram for localEulerDdtScheme< Type >:
Collaboration graph
[legend]

Public Types

typedef ddtScheme< Type >::fluxFieldType fluxFieldType
 
- Public Types inherited from ddtScheme< Type >
typedef GeometricField< typename flux< Type >::type, fvsPatchField, surfaceMeshfluxFieldType
 

Public Member Functions

 TypeName ("localEuler")
 Runtime type information. More...
 
 localEulerDdtScheme (const fvMesh &mesh)
 Construct from mesh. More...
 
 localEulerDdtScheme (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt (const dimensioned< Type > &)
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt (const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt (const dimensionedScalar &, const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt (const volScalarField &, const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &psi)
 
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > fvcDdt (const GeometricField< Type, fvsPatchField, surfaceMesh > &)
 
tmp< fvMatrix< Type > > fvmDdt (const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< fvMatrix< Type > > fvmDdt (const dimensionedScalar &, const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< fvMatrix< Type > > fvmDdt (const volScalarField &, const GeometricField< Type, fvPatchField, volMesh > &)
 
tmp< fvMatrix< Type > > fvmDdt (const volScalarField &alpha, const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &psi)
 
tmp< fluxFieldTypefvcDdtUfCorr (const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)
 
tmp< fluxFieldTypefvcDdtPhiCorr (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)
 
tmp< fluxFieldTypefvcDdtUfCorr (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)
 
tmp< fluxFieldTypefvcDdtPhiCorr (const volScalarField &rho, const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)
 
tmp< surfaceScalarFieldmeshPhi (const GeometricField< Type, fvPatchField, volMesh > &)
 
template<>
tmp< surfaceScalarFieldfvcDdtUfCorr (const GeometricField< scalar, fvPatchField, volMesh > &U, const GeometricField< scalar, fvsPatchField, surfaceMesh > &Uf)
 
template<>
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &U, const surfaceScalarField &phi)
 
template<>
tmp< surfaceScalarFieldfvcDdtUfCorr (const volScalarField &rho, const volScalarField &U, const surfaceScalarField &Uf)
 
template<>
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &rho, const volScalarField &U, const surfaceScalarField &phi)
 
- Public Member Functions inherited from localEulerDdt
 localEulerDdt ()
 
- Public Member Functions inherited from ddtScheme< Type >
virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (tmp, ddtScheme, Istream,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
 
 ddtScheme (const fvMesh &mesh)
 Construct from mesh. More...
 
 ddtScheme (const fvMesh &mesh, Istream &)
 Construct from mesh and Istream. More...
 
virtual ~ddtScheme ()
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
tmp< surfaceScalarFieldfvcDdtPhiCoeff (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
 
tmp< surfaceScalarFieldfvcDdtPhiCoeff (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr, const volScalarField &rho)
 
tmp< surfaceScalarFieldfvcDdtPhiCoeff (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)
 
tmp< surfaceScalarFieldfvcDdtPhiCoeff (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const volScalarField &rho)
 
- Public Member Functions inherited from refCount
int count () const
 Return the current reference count. More...
 
bool unique () const
 Return true if the reference count is zero. More...
 
void operator++ ()
 Increment the reference count. More...
 
void operator++ (int)
 Increment the reference count. More...
 
void operator-- ()
 Decrement the reference count. More...
 
void operator-- (int)
 Decrement the reference count. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from localEulerDdt
static bool enabled (const fvMesh &mesh)
 Return true if LTS is enabled. More...
 
static const volScalarFieldlocalRDeltaT (const fvMesh &mesh)
 Return the reciprocal of the local time-step. More...
 
static const surfaceScalarFieldlocalRDeltaTf (const fvMesh &mesh)
 Return the reciprocal of the local face time-step. More...
 
static tmp< volScalarFieldlocalRSubDeltaT (const fvMesh &mesh, const label nAlphaSubCycles)
 Calculate and return the reciprocal of the local sub-cycling. More...
 
- Static Public Member Functions inherited from ddtScheme< Type >
static tmp< ddtScheme< Type > > New (const fvMesh &mesh, Istream &schemeData)
 Return a pointer to a new ddtScheme created on freestore. More...
 
- Static Public Attributes inherited from localEulerDdt
static word rDeltaTName
 Name of the reciprocal local time-step field. More...
 
static word rDeltaTfName
 Name of the reciprocal local face time-step field. More...
 
static word rSubDeltaTName
 Name of the reciprocal local sub-cycling time-step field. More...
 
- Protected Member Functions inherited from ddtScheme< Type >
 ddtScheme (const ddtScheme &)
 Disallow copy construct. More...
 
void operator= (const ddtScheme &)
 Disallow default bitwise assignment. More...
 
- Protected Member Functions inherited from refCount
 refCount ()
 Construct null initializing count to 0. More...
 
- Protected Attributes inherited from ddtScheme< Type >
const fvMeshmesh_
 

Detailed Description

template<class Type>
class Foam::fv::localEulerDdtScheme< Type >

Local time-step first-order Euler implicit/explicit ddt.

The reciprocal of the local time-step field is looked-up from the database.

This scheme should only be used for steady-state computations using transient codes where local time-stepping is preferably to under-relaxation for transport consistency reasons.

See also
Foam::fv::CoEulerDdtScheme
Source files

Definition at line 112 of file localEulerDdtScheme.H.

Member Typedef Documentation

◆ fluxFieldType

Definition at line 219 of file localEulerDdtScheme.H.

Constructor & Destructor Documentation

◆ localEulerDdtScheme() [1/2]

localEulerDdtScheme ( const fvMesh mesh)
inline

Construct from mesh.

Definition at line 141 of file localEulerDdtScheme.H.

◆ localEulerDdtScheme() [2/2]

localEulerDdtScheme ( const fvMesh mesh,
Istream is 
)
inline

Construct from mesh and Istream.

Definition at line 147 of file localEulerDdtScheme.H.

Member Function Documentation

◆ TypeName()

TypeName ( "localEuler"  )

Runtime type information.

◆ mesh()

const fvMesh& mesh ( ) const
inline

Return mesh reference.

Definition at line 156 of file localEulerDdtScheme.H.

References Foam::constant::atomic::alpha, ddtScheme< Type >::mesh(), psi, and rho.

Here is the call graph for this function:

◆ fvcDdt() [1/6]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt ( const dimensioned< Type > &  dt)
virtual

Implements ddtScheme< Type >.

Definition at line 59 of file localEulerDdtScheme.C.

References dimensioned< Type >::dimensions(), Foam::dimTime, mesh, dimensioned< Type >::name(), and Foam::Zero.

Referenced by localEulerDdtScheme< Type >::fvcDdt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fvcDdt() [2/6]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt ( const GeometricField< Type, fvPatchField, volMesh > &  vf)
virtual

Implements ddtScheme< Type >.

Definition at line 91 of file localEulerDdtScheme.C.

References localEulerDdtScheme< Type >::fvcDdt(), mesh, IOobject::name(), and GeometricField< Type, PatchField, GeoMesh >::oldTime().

Here is the call graph for this function:

◆ fvcDdt() [3/6]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt ( const dimensionedScalar rho,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

◆ fvcDdt() [4/6]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt ( const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

Implements ddtScheme< Type >.

Definition at line 146 of file localEulerDdtScheme.C.

References localEulerDdtScheme< Type >::fvcDdt(), mesh, IOobject::name(), and GeometricField< Type, PatchField, GeoMesh >::oldTime().

Here is the call graph for this function:

◆ fvcDdt() [5/6]

tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt ( const volScalarField alpha,
const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  psi 
)
virtual

Implements ddtScheme< Type >.

Definition at line 174 of file localEulerDdtScheme.C.

References localEulerDdtScheme< Type >::fvcDdt(), mesh, IOobject::name(), and GeometricField< Type, PatchField, GeoMesh >::oldTime().

Here is the call graph for this function:

◆ fvcDdt() [6/6]

tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > fvcDdt ( const GeometricField< Type, fvsPatchField, surfaceMesh > &  sf)
virtual

Reimplemented from ddtScheme< Type >.

Definition at line 207 of file localEulerDdtScheme.C.

References localEulerDdtScheme< Type >::fvmDdt(), mesh, IOobject::name(), and GeometricField< Type, PatchField, GeoMesh >::oldTime().

Here is the call graph for this function:

◆ fvmDdt() [1/4]

tmp< fvMatrix< Type > > fvmDdt ( const GeometricField< Type, fvPatchField, volMesh > &  vf)
virtual

◆ fvmDdt() [2/4]

tmp< fvMatrix< Type > > fvmDdt ( const dimensionedScalar rho,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

◆ fvmDdt() [3/4]

tmp< fvMatrix< Type > > fvmDdt ( const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  vf 
)
virtual

◆ fvmDdt() [4/4]

tmp< fvMatrix< Type > > fvmDdt ( const volScalarField alpha,
const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  psi 
)
virtual

◆ fvcDdtUfCorr() [1/4]

tmp< typename localEulerDdtScheme< Type >::fluxFieldType > fvcDdtUfCorr ( const GeometricField< Type, fvPatchField, volMesh > &  U,
const GeometricField< Type, fvsPatchField, surfaceMesh > &  Uf 
)
virtual

◆ fvcDdtPhiCorr() [1/4]

tmp< typename localEulerDdtScheme< Type >::fluxFieldType > fvcDdtPhiCorr ( const GeometricField< Type, fvPatchField, volMesh > &  U,
const fluxFieldType phi 
)
virtual

Implements ddtScheme< Type >.

Definition at line 386 of file localEulerDdtScheme.C.

References Foam::fvc::dotInterpolate(), localEulerDdtScheme< Type >::fvcDdtUfCorr(), Foam::fvc::interpolate(), mesh, IOobject::name(), and GeometricField< Type, PatchField, GeoMesh >::oldTime().

Referenced by localEulerDdtScheme< Type >::fvcDdtUfCorr().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fvcDdtUfCorr() [2/4]

tmp< typename localEulerDdtScheme< Type >::fluxFieldType > fvcDdtUfCorr ( const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  U,
const GeometricField< Type, fvsPatchField, surfaceMesh > &  Uf 
)
virtual

◆ fvcDdtPhiCorr() [2/4]

tmp< typename localEulerDdtScheme< Type >::fluxFieldType > fvcDdtPhiCorr ( const volScalarField rho,
const GeometricField< Type, fvPatchField, volMesh > &  U,
const fluxFieldType phi 
)
virtual

◆ meshPhi()

tmp< surfaceScalarField > meshPhi ( const GeometricField< Type, fvPatchField, volMesh > &  )
virtual

Implements ddtScheme< Type >.

Definition at line 593 of file localEulerDdtScheme.C.

References Foam::dimTime, Foam::dimVolume, mesh, IOobject::NO_READ, IOobject::NO_WRITE, and timeName.

Referenced by localEulerDdtScheme< Type >::fvcDdtPhiCorr().

Here is the caller graph for this function:

◆ fvcDdtUfCorr() [3/4]

tmp< surfaceScalarField > fvcDdtUfCorr ( const GeometricField< scalar, fvPatchField, volMesh > &  U,
const GeometricField< scalar, fvsPatchField, surfaceMesh > &  Uf 
)

◆ fvcDdtPhiCorr() [3/4]

tmp< surfaceScalarField > fvcDdtPhiCorr ( const volScalarField U,
const surfaceScalarField phi 
)

◆ fvcDdtUfCorr() [4/4]

tmp< surfaceScalarField > fvcDdtUfCorr ( const volScalarField rho,
const volScalarField U,
const surfaceScalarField Uf 
)

◆ fvcDdtPhiCorr() [4/4]

tmp< surfaceScalarField > fvcDdtPhiCorr ( const volScalarField rho,
const volScalarField U,
const surfaceScalarField phi 
)

The documentation for this class was generated from the following files: