SLTSDdtScheme< Type > Class Template Reference

Stabilised local time-step first-order Euler implicit/explicit ddt. The time-step is adjusted locally so that an advective equations remains diagonally dominant. More...

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

Public Types

typedef ddtScheme< Type >::fluxFieldType fluxFieldType
 
- Public Types inherited from ddtScheme< Type >
typedef SurfaceField< typename flux< Type >::typefluxFieldType
 

Public Member Functions

 TypeName ("SLTS")
 Runtime type information. More...
 
 SLTSDdtScheme (const fvMesh &mesh, Istream &is)
 Construct from mesh and Istream. More...
 
 SLTSDdtScheme (const SLTSDdtScheme &)=delete
 Disallow default bitwise copy construction. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< VolField< Type > > fvcDdt (const dimensioned< Type > &)
 
virtual tmp< VolField< Type > > fvcDdt (const VolField< Type > &)
 
virtual tmp< VolField< Type > > fvcDdt (const dimensionedScalar &, const VolField< Type > &)
 
virtual tmp< VolField< Type > > fvcDdt (const volScalarField &, const VolField< Type > &)
 
virtual tmp< VolField< Type > > fvcDdt (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &psi)
 
virtual tmp< fvMatrix< Type > > fvmDdt (const VolField< Type > &)
 
virtual tmp< fvMatrix< Type > > fvmDdt (const dimensionedScalar &, const VolField< Type > &)
 
virtual tmp< fvMatrix< Type > > fvmDdt (const volScalarField &, const VolField< Type > &)
 
virtual tmp< fvMatrix< Type > > fvmDdt (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &psi)
 
virtual tmp< fluxFieldTypefvcDdtUfCorr (const VolField< Type > &U, const SurfaceField< Type > &Uf)
 
virtual tmp< fluxFieldTypefvcDdtPhiCorr (const VolField< Type > &U, const fluxFieldType &phi)
 
virtual tmp< fluxFieldTypefvcDdtUfCorr (const volScalarField &rho, const VolField< Type > &U, const SurfaceField< Type > &rhoUf)
 
virtual tmp< fluxFieldTypefvcDdtPhiCorr (const volScalarField &rho, const VolField< Type > &U, const fluxFieldType &phi)
 
virtual tmp< fluxFieldTypefvcDdtUfCorr (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &U, const SurfaceField< Type > &Uf)
 
virtual tmp< fluxFieldTypefvcDdtPhiCorr (const volScalarField &alpha, const volScalarField &rho, const VolField< Type > &U, const fluxFieldType &phi)
 
virtual tmp< surfaceScalarFieldmeshPhi (const VolField< Type > &)
 
virtual tmp< scalarFieldmeshPhi (const VolField< Type > &, const label patchi)
 
void operator= (const SLTSDdtScheme &)=delete
 Disallow default bitwise assignment. More...
 
tmp< surfaceScalarFieldfvcDdtUfCorr (const VolField< scalar > &U, const SurfaceField< scalar > &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 &alpha, const volScalarField &rho, const volScalarField &U, const surfaceScalarField &Uf)
 
tmp< surfaceScalarFieldfvcDdtPhiCorr (const volScalarField &alpha, const volScalarField &rho, const volScalarField &U, const surfaceScalarField &phi)
 
- 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...
 
 ddtScheme (const ddtScheme &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~ddtScheme ()
 Destructor. More...
 
const fvMeshmesh () const
 Return mesh reference. More...
 
virtual tmp< SurfaceField< Type > > fvcDdt (const SurfaceField< Type > &)
 
virtual tmp< surfaceScalarFieldfvcDdtPhiCoeff (const VolField< Type > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
 
virtual tmp< surfaceScalarFieldfvcDdtPhiCoeff (const VolField< Type > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr, const volScalarField &rho)
 
virtual tmp< surfaceScalarFieldfvcDdtPhiCoeff (const VolField< Type > &U, const fluxFieldType &phi)
 
virtual tmp< surfaceScalarFieldfvcDdtPhiCoeff (const VolField< Type > &U, const fluxFieldType &phi, const volScalarField &rho)
 
void operator= (const ddtScheme &)=delete
 Disallow default bitwise assignment. More...
 
- 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...
 
void operator= (const refCount &)=delete
 Disallow bitwise assignment. More...
 

Additional Inherited Members

- 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...
 
- Protected Member Functions inherited from refCount
 refCount ()
 Construct null initialising count to 0. More...
 
 refCount (const refCount &)=delete
 Disallow copy. More...
 
- Protected Attributes inherited from ddtScheme< Type >
const fvMeshmesh_
 

Detailed Description

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

Stabilised local time-step first-order Euler implicit/explicit ddt. The time-step is adjusted locally so that an advective equations remains diagonally dominant.

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 63 of file SLTSDdtScheme.H.

Member Typedef Documentation

◆ fluxFieldType

Definition at line 171 of file SLTSDdtScheme.H.

Constructor & Destructor Documentation

◆ SLTSDdtScheme() [1/2]

SLTSDdtScheme ( const fvMesh mesh,
Istream is 
)
inline

Construct from mesh and Istream.

Definition at line 98 of file SLTSDdtScheme.H.

◆ SLTSDdtScheme() [2/2]

SLTSDdtScheme ( const SLTSDdtScheme< Type > &  )
delete

Disallow default bitwise copy construction.

Member Function Documentation

◆ TypeName()

TypeName ( "SLTS"  )

Runtime type information.

◆ mesh()

const fvMesh& mesh ( ) const
inline

Return mesh reference.

Definition at line 113 of file SLTSDdtScheme.H.

References ddtScheme< Type >::mesh().

Here is the call graph for this function:

◆ fvcDdt() [1/5]

◆ fvcDdt() [2/5]

tmp< VolField< Type > > fvcDdt ( const VolField< Type > &  vf)
virtual

◆ fvcDdt() [3/5]

tmp< VolField< Type > > fvcDdt ( const dimensionedScalar rho,
const VolField< Type > &  vf 
)
virtual

◆ fvcDdt() [4/5]

tmp< VolField< Type > > fvcDdt ( const volScalarField rho,
const VolField< Type > &  vf 
)
virtual

◆ fvcDdt() [5/5]

tmp< VolField< Type > > fvcDdt ( const volScalarField alpha,
const volScalarField rho,
const VolField< Type > &  psi 
)
virtual

◆ fvmDdt() [1/4]

tmp< fvMatrix< Type > > fvmDdt ( const VolField< Type > &  vf)
virtual

◆ fvmDdt() [2/4]

tmp< fvMatrix< Type > > fvmDdt ( const dimensionedScalar rho,
const VolField< Type > &  vf 
)
virtual

◆ fvmDdt() [3/4]

tmp< fvMatrix< Type > > fvmDdt ( const volScalarField rho,
const VolField< Type > &  vf 
)
virtual

◆ fvmDdt() [4/4]

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

◆ fvcDdtUfCorr() [1/6]

tmp< typename SLTSDdtScheme< Type >::fluxFieldType > fvcDdtUfCorr ( const VolField< Type > &  U,
const SurfaceField< Type > &  Uf 
)
virtual

Implements ddtScheme< Type >.

Definition at line 546 of file SLTSDdtScheme.C.

References Foam::fvc::dotInterpolate(), Foam::fvc::interpolate(), IOobject::name(), Foam::compressible::New(), OldTimeField< FieldType >::oldTime(), and U.

Here is the call graph for this function:

◆ fvcDdtPhiCorr() [1/6]

tmp< typename SLTSDdtScheme< Type >::fluxFieldType > fvcDdtPhiCorr ( const VolField< Type > &  U,
const fluxFieldType phi 
)
virtual

Implements ddtScheme< Type >.

Definition at line 571 of file SLTSDdtScheme.C.

References Foam::fvc::dotInterpolate(), Foam::fvc::interpolate(), IOobject::name(), Foam::compressible::New(), OldTimeField< FieldType >::oldTime(), and U.

Here is the call graph for this function:

◆ fvcDdtUfCorr() [2/6]

tmp< typename SLTSDdtScheme< Type >::fluxFieldType > fvcDdtUfCorr ( const volScalarField rho,
const VolField< Type > &  U,
const SurfaceField< Type > &  rhoUf 
)
virtual

◆ fvcDdtPhiCorr() [2/6]

tmp< typename SLTSDdtScheme< Type >::fluxFieldType > fvcDdtPhiCorr ( const volScalarField rho,
const VolField< Type > &  U,
const fluxFieldType phi 
)
virtual

◆ fvcDdtUfCorr() [3/6]

virtual tmp<fluxFieldType> fvcDdtUfCorr ( const volScalarField alpha,
const volScalarField rho,
const VolField< Type > &  U,
const SurfaceField< Type > &  Uf 
)
inlinevirtual

Implements ddtScheme< Type >.

Definition at line 199 of file SLTSDdtScheme.H.

References NotImplemented, and GeometricField< Type, PatchField, GeoMesh >::null().

Here is the call graph for this function:

◆ fvcDdtPhiCorr() [3/6]

virtual tmp<fluxFieldType> fvcDdtPhiCorr ( const volScalarField alpha,
const volScalarField rho,
const VolField< Type > &  U,
const fluxFieldType phi 
)
inlinevirtual

Implements ddtScheme< Type >.

Definition at line 211 of file SLTSDdtScheme.H.

References NotImplemented, and GeometricField< Type, PatchField, GeoMesh >::null().

Here is the call graph for this function:

◆ meshPhi() [1/2]

tmp< surfaceScalarField > meshPhi ( const VolField< Type > &  )
virtual

Implements ddtScheme< Type >.

Definition at line 734 of file SLTSDdtScheme.C.

References Foam::dimTime, Foam::dimVolume, and GeometricField< Type, PatchField, GeoMesh >::New().

Here is the call graph for this function:

◆ meshPhi() [2/2]

tmp< scalarField > meshPhi ( const VolField< Type > &  ,
const label  patchi 
)
virtual

Implements ddtScheme< Type >.

Definition at line 749 of file SLTSDdtScheme.C.

References boundary(), and patchi.

Here is the call graph for this function:

◆ operator=()

void operator= ( const SLTSDdtScheme< Type > &  )
delete

Disallow default bitwise assignment.

◆ fvcDdtUfCorr() [4/6]

tmp< surfaceScalarField > fvcDdtUfCorr ( const VolField< scalar > &  U,
const SurfaceField< scalar > &  Uf 
)

◆ fvcDdtPhiCorr() [4/6]

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

◆ fvcDdtUfCorr() [5/6]

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

◆ fvcDdtPhiCorr() [5/6]

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

◆ fvcDdtUfCorr() [6/6]

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

◆ fvcDdtPhiCorr() [6/6]

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

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