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 &is)
 Construct from mesh and Istream. More...
 
virtual ~ddtScheme ()=default
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
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. More...
 
int use_count () const noexcept
 Return the current reference count. More...
 
bool unique () const noexcept
 Return true if the reference count is zero. More...
 
void operator++ () noexcept
 Increment the reference count. More...
 
void operator++ (int) noexcept
 Increment the reference count. More...
 
void operator-- () noexcept
 Decrement the reference count. More...
 
void operator-- (int) noexcept
 Decrement the reference count. More...
 
- 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. 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...
 
- Static Public Attributes inherited from ddtSchemeBase
static bool experimentalDdtCorr
 Flag to use experimental ddtCorr from org version Default is off for backwards compatibility. More...
 
- Protected Member Functions inherited from ddtScheme< Type >
 ddtScheme (const ddtScheme &)=delete
 No copy construct. More...
 
void operator= (const ddtScheme &)=delete
 No copy assignment. More...
 
- Protected Attributes inherited from ddtScheme< Type >
const fvMeshmesh_
 
scalar ddtPhiCoeff_
 Input for fvcDdtPhiCoeff. More...
 

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

Definition at line 253 of file localEulerDdtScheme.H.

Constructor & Destructor Documentation

◆ localEulerDdtScheme() [1/2]

localEulerDdtScheme ( const fvMesh mesh)
inline

Construct from mesh.

Definition at line 171 of file localEulerDdtScheme.H.

◆ localEulerDdtScheme() [2/2]

localEulerDdtScheme ( const fvMesh mesh,
Istream is 
)
inline

Construct from mesh and Istream.

Definition at line 179 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 190 of file localEulerDdtScheme.H.

References ddtScheme< Type >::mesh().

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 54 of file localEulerDdtScheme.C.

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

Here is the call 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 78 of file localEulerDdtScheme.C.

References 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

Implements ddtScheme< Type >.

Definition at line 105 of file localEulerDdtScheme.C.

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

Here is the call graph for this function:

◆ 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 133 of file localEulerDdtScheme.C.

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

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

◆ fvcDdt() [6/6]

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

Reimplemented from ddtScheme< Type >.

Definition at line 194 of file localEulerDdtScheme.C.

References 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

Implements ddtScheme< Type >.

Definition at line 340 of file localEulerDdtScheme.C.

References Foam::fvc::dotInterpolate(), Foam::fvc::interpolate(), mesh, U, and Uf.

Here is the call graph for this function:

◆ 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 373 of file localEulerDdtScheme.C.

References Foam::fvc::dotInterpolate(), Foam::fvc::interpolate(), mesh, phi, and U.

Here is the call 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

Implements ddtScheme< Type >.

Definition at line 405 of file localEulerDdtScheme.C.

References Foam::abort(), Foam::dimDensity, Foam::dimVelocity, Foam::fvc::dotInterpolate(), Foam::FatalError, FatalErrorInFunction, Foam::fvc::interpolate(), mesh, rho, U, and Uf.

Here is the call graph for this function:

◆ fvcDdtPhiCorr() [2/4]

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

Implements ddtScheme< Type >.

Definition at line 490 of file localEulerDdtScheme.C.

References Foam::abort(), Foam::dimArea, Foam::dimVelocity, Foam::fvc::dotInterpolate(), Foam::FatalError, FatalErrorInFunction, Foam::fvc::interpolate(), mesh, phi, rho, and U.

Here is the call graph for this function:

◆ meshPhi()

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

◆ 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: