Loading...
Searching...
No Matches
localEulerDdtScheme< Type > Class Template Reference

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

#include <localEulerDdtScheme.H>

Inheritance diagram for localEulerDdtScheme< Type >:
Collaboration diagram for localEulerDdtScheme< Type >:

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.
 localEulerDdtScheme (const fvMesh &mesh)
 Construct from mesh.
 localEulerDdtScheme (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream.
const fvMeshmesh () const
 Return mesh reference.
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 > &)
tmp< surfaceScalarFieldfvcDdtUfCorr (const GeometricField< scalar, fvPatchField, volMesh > &U, const GeometricField< scalar, fvsPatchField, surfaceMesh > &Uf)
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &U, const surfaceScalarField &phi)
tmp< surfaceScalarFieldfvcDdtUfCorr (const volScalarField &rho, const volScalarField &U, const surfaceScalarField &Uf)
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &rho, const volScalarField &U, const surfaceScalarField &phi)
tmp< surfaceScalarFieldfvcDdtUfCorr (const volScalarField &U, const surfaceScalarField &Uf)
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &U, const surfaceScalarField &phi)
tmp< surfaceScalarFieldfvcDdtUfCorr (const volScalarField &rho, const volScalarField &U, const surfaceScalarField &Uf)
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.
 declareRunTimeSelectionTable (tmp, ddtScheme, Istream,(const fvMesh &mesh, Istream &schemeData),(mesh, schemeData))
 ddtScheme (const fvMesh &mesh)
 Construct from mesh.
 ddtScheme (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream.
virtual ~ddtScheme ()=default
 Destructor.
const fvMeshmesh () const
 Return mesh reference.
tmp< surfaceScalarFieldfvcDdtPhiCoeff (const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
tmp< surfaceScalarFieldfvcDdtPhiCoeffExperimental (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 > &rhoU, const fluxFieldType &phi, const volScalarField &rho)
Public Member Functions inherited from refCount
constexpr refCount () noexcept
 Default construct, initializing count to 0.
int use_count () const noexcept
 Return the current reference count.
bool unique () const noexcept
 Return true if the reference count is zero.
void operator++ () noexcept
 Increment the reference count.
void operator++ (int) noexcept
 Increment the reference count.
void operator-- () noexcept
 Decrement the reference count.
void operator-- (int) noexcept
 Decrement the reference count.
Public Member Functions inherited from ddtSchemeBase
 ddtSchemeBase ()
 ddtSchemeBase ()

Additional Inherited Members

Static Public Member Functions inherited from localEulerDdt
static bool enabled (const fvMesh &mesh)
 Return true if LTS is enabled.
static const volScalarFieldlocalRDeltaT (const fvMesh &mesh)
 Return the reciprocal of the local time-step.
static const surfaceScalarFieldlocalRDeltaTf (const fvMesh &mesh)
 Return the reciprocal of the local face time-step.
static tmp< volScalarFieldlocalRSubDeltaT (const fvMesh &mesh, const label nAlphaSubCycles)
 Calculate and return the reciprocal of the local sub-cycling.
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.
Static Public Attributes inherited from localEulerDdt
static word rDeltaTName
 Name of the reciprocal local time-step field.
static word rDeltaTfName
 Name of the reciprocal local face time-step field.
static word rSubDeltaTName
 Name of the reciprocal local sub-cycling time-step field.
Static Public Attributes inherited from ddtSchemeBase
static bool experimentalDdtCorr
 Flag to use experimental ddtCorr from org version Default is off for backwards compatibility.
Protected Member Functions inherited from ddtScheme< Type >
 ddtScheme (const ddtScheme &)=delete
 No copy construct.
void operator= (const ddtScheme &)=delete
 No copy assignment.
Protected Attributes inherited from ddtScheme< Type >
const fvMeshmesh_
scalar ddtPhiCoeff_
 Input for fvcDdtPhiCoeff.

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 130 of file localEulerDdtScheme.H.

Member Typedef Documentation

◆ fluxFieldType

template<class Type>
typedef ddtScheme<Type>::fluxFieldType fluxFieldType

Definition at line 253 of file localEulerDdtScheme.H.

Constructor & Destructor Documentation

◆ localEulerDdtScheme() [1/2]

template<class Type>
localEulerDdtScheme ( const fvMesh & mesh)
inline

Construct from mesh.

Definition at line 171 of file localEulerDdtScheme.H.

References ddtScheme< Type >::ddtScheme(), and mesh().

Here is the call graph for this function:

◆ localEulerDdtScheme() [2/2]

template<class Type>
localEulerDdtScheme ( const fvMesh & mesh,
Istream & is )
inline

Construct from mesh and Istream.

Definition at line 179 of file localEulerDdtScheme.H.

References ddtScheme< Type >::ddtScheme(), and mesh().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

template<class Type>
TypeName ( "localEuler" )

Runtime type information.

◆ mesh()

template<class Type>
const fvMesh & mesh ( ) const
inline

Return mesh reference.

Definition at line 190 of file localEulerDdtScheme.H.

References ddtScheme< Type >::mesh().

Referenced by fvcDdt(), fvcDdt(), fvcDdt(), fvcDdt(), fvcDdt(), fvcDdt(), fvcDdtPhiCorr(), fvcDdtPhiCorr(), fvcDdtUfCorr(), fvcDdtUfCorr(), localEulerDdtScheme(), and localEulerDdtScheme().

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

◆ fvcDdt() [1/6]

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

◆ fvcDdt() [2/6]

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

Implements ddtScheme< Type >.

Definition at line 77 of file localEulerDdtScheme.C.

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

Here is the call graph for this function:

◆ fvcDdt() [3/6]

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

Implements ddtScheme< Type >.

Definition at line 104 of file localEulerDdtScheme.C.

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

Here is the call graph for this function:

◆ fvcDdt() [4/6]

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

Implements ddtScheme< Type >.

Definition at line 132 of file localEulerDdtScheme.C.

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

Here is the call graph for this function:

◆ fvcDdt() [5/6]

template<class Type>
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 160 of file localEulerDdtScheme.C.

References alpha, mesh(), mesh, IOobject::name(), GeometricField< Type, PatchField, GeoMesh >::oldTime(), rho, and timeName.

Here is the call graph for this function:

◆ fvcDdt() [6/6]

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

Reimplemented from ddtScheme< Type >.

Definition at line 193 of file localEulerDdtScheme.C.

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

Here is the call graph for this function:

◆ fvmDdt() [1/4]

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

◆ fvmDdt() [2/4]

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

◆ fvmDdt() [3/4]

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

◆ fvmDdt() [4/4]

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

◆ fvcDdtUfCorr() [1/6]

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

Implements ddtScheme< Type >.

Definition at line 339 of file localEulerDdtScheme.C.

References Foam::fvc::dotInterpolate(), ddtScheme< Type >::fvcDdtPhiCoeff(), Foam::fvc::interpolate(), mesh(), mesh, timeName, U, and Uf.

Here is the call graph for this function:

◆ fvcDdtPhiCorr() [1/6]

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

Implements ddtScheme< Type >.

Definition at line 372 of file localEulerDdtScheme.C.

References Foam::fvc::dotInterpolate(), ddtScheme< Type >::fvcDdtPhiCoeff(), Foam::fvc::interpolate(), mesh(), mesh, phi, timeName, and U.

Here is the call graph for this function:

◆ fvcDdtUfCorr() [2/6]

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

◆ fvcDdtPhiCorr() [2/6]

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

◆ meshPhi()

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

◆ fvcDdtUfCorr() [3/6]

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

References U, and Uf.

◆ fvcDdtPhiCorr() [3/6]

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

References phi, and U.

◆ fvcDdtUfCorr() [4/6]

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

References rho, U, and Uf.

◆ fvcDdtPhiCorr() [4/6]

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

References phi, rho, and U.

◆ fvcDdtUfCorr() [5/6]

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

Definition at line 26 of file localEulerDdtSchemes.C.

◆ fvcDdtPhiCorr() [5/6]

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

Definition at line 26 of file localEulerDdtSchemes.C.

◆ fvcDdtUfCorr() [6/6]

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

Definition at line 26 of file localEulerDdtSchemes.C.

◆ fvcDdtPhiCorr() [6/6]

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

Definition at line 26 of file localEulerDdtSchemes.C.


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