scalarTransport Class Reference

Evolves a passive scalar transport equation. More...

Inheritance diagram for scalarTransport:
Collaboration diagram for scalarTransport:

Public Types

enum class  diffusivityType { none , constant , viscosity }
 Enumeration defining the type of the diffusivity. More...
 

Public Member Functions

 TypeName ("scalarTransport")
 Runtime type information. More...
 
 scalarTransport (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 scalarTransport (const scalarTransport &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~scalarTransport ()
 Destructor. More...
 
virtual bool read (const dictionary &)
 Read the scalarTransport data. More...
 
virtual wordList fields () const
 Return the list of fields required. More...
 
virtual bool executeAtStart () const
 Do not execute at the start of the run. More...
 
virtual bool execute ()
 Calculate the scalarTransport. More...
 
virtual bool write ()
 Write the updated scalar field. More...
 
void operator= (const scalarTransport &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from fvMeshFunctionObject
 TypeName ("fvMeshFunctionObject")
 Runtime type information. More...
 
 fvMeshFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 fvMeshFunctionObject (const word &name, const objectRegistry &obr)
 Construct from the region objectRegistry. More...
 
 fvMeshFunctionObject (const fvMeshFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~fvMeshFunctionObject ()
 Destructor. More...
 
const fvMeshmesh () const
 Return a reference to the mesh. More...
 
void operator= (const fvMeshFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from regionFunctionObject
 TypeName ("regionFunctionObject")
 Runtime type information. More...
 
 regionFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 regionFunctionObject (const word &name, const objectRegistry &obr)
 Construct from the region objectRegistry. More...
 
 regionFunctionObject (const regionFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~regionFunctionObject ()
 Destructor. More...
 
void operator= (const regionFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from objectRegistryFunctionObject
 TypeName ("objectRegistryFunctionObject")
 Runtime type information. More...
 
 objectRegistryFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 Construct from an objectRegistry and dictionary. More...
 
 objectRegistryFunctionObject (const word &name, const objectRegistry &obr)
 Construct from an objectRegistry. More...
 
 objectRegistryFunctionObject (const objectRegistryFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~objectRegistryFunctionObject ()
 Destructor. More...
 
void operator= (const objectRegistryFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from functionObject
 ClassName ("functionObject")
 
virtual const wordtype () const =0
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, functionObject, dictionary,(const word &name, const Time &runTime, const dictionary &dict),(name, runTime, dict))
 
 functionObject (const word &name, const Time &runTime)
 Construct from components. More...
 
 functionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from dictionary. More...
 
autoPtr< functionObjectclone () const
 Return clone. More...
 
 functionObject (const functionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~functionObject ()
 Destructor. More...
 
const wordname () const
 Return the name of this functionObject. More...
 
virtual bool end ()
 Called when Time::run() determines that the time-loop exits. More...
 
virtual scalar timeToNextAction ()
 Called by Time::adjustTimeStep(). Allows the functionObject to. More...
 
virtual scalar maxDeltaT () const
 Return the maximum time-step for stable operation. More...
 
virtual void movePoints (const polyMesh &mesh)
 Update topology using the given map. More...
 
virtual void topoChange (const polyTopoChangeMap &map)
 Update topology using the given map. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 
virtual void distribute (const polyDistributionMap &)
 Redistribute or update using the given distribution map. More...
 
void operator= (const functionObject &)=delete
 Disallow default bitwise assignment. More...
 

Static Public Attributes

static const NamedEnum< diffusivityType, 3 > diffusivityTypeNames_
 Diffusivity type names. More...
 
- Static Public Attributes inherited from functionObject
static bool postProcess
 Global post-processing mode switch. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from functionObject
static autoPtr< functionObjectNew (const word &name, const Time &, const dictionary &)
 Select from dictionary, based on its "type" entry. More...
 
- Public Attributes inherited from functionObject
Switch log
 Switch write log to Info. More...
 
Switch executeAtStart_
 Switch execute at start time. More...
 
- Protected Member Functions inherited from objectRegistryFunctionObject
template<class ObjectType >
bool foundObject (const word &fieldName) const
 Find field in the objectRegistry. More...
 
template<class ObjectType >
void cannotFindObject (const word &fieldName)
 Prints a warning message that fieldName cannot be found. More...
 
void cannotFindObject (const word &fieldName)
 Prints a warning message that fieldName cannot be found. More...
 
void cannotFindObjects (const wordList &fieldNames)
 Prints a warning message that fieldNames cannot be found. More...
 
template<class ObjectType >
const ObjectType & lookupObject (const word &fieldName) const
 Lookup object from the objectRegistry. More...
 
template<class ObjectType >
ObjectType & lookupObjectRef (const word &fieldName)
 Lookup non-const object reference from the objectRegistry. More...
 
template<class ObjectType >
ObjectType & store (const tmp< ObjectType > &tfield)
 Store the given field in the objectRegistry. More...
 
template<class ObjectType >
ObjectType & store (const word &fieldName, const tmp< ObjectType > &tfield, bool cacheable=false)
 Store the given field in the objectRegistry under the given name. More...
 
bool writeObject (const word &fieldName)
 Write field if present in objectRegistry. More...
 
bool clearObject (const word &fieldName)
 Clear field from the objectRegistry if present. More...
 
- Protected Attributes inherited from fvMeshFunctionObject
const fvMeshmesh_
 Reference to the fvMesh. More...
 
- Protected Attributes inherited from objectRegistryFunctionObject
const objectRegistryobr_
 Reference to the objectRegistry. More...
 
- Protected Attributes inherited from functionObject
const Timetime_
 Reference to time. More...
 

Detailed Description

Evolves a passive scalar transport equation.

  • To specify the field name set the field entry
  • To employ the same numerical schemes as another field set the schemesField entry,
  • The diffusivity entry can be set to none, constant, viscosity
  • A constant diffusivity is specified with the D entry,
  • If a momentum transport model is available and the viscosity diffusivity option specified an effective diffusivity may be constructed from the laminar and turbulent viscosities using the diffusivity coefficients alphal and alphat:
          D = alphal*nu + alphat*nut

Example:

    #includeFunc scalarTransport(T, alphal=1, alphat=1)

For incompressible flow the passive scalar may optionally be solved with the MULES limiter and sub-cycling or semi-implicit in order to maintain boundedness, particularly if a compressive, PLIC or MPLIC convection scheme is used.

Example:

    #includeFunc scalarTransport(tracer, diffusivity=none)

with scheme specification:
    div(phi,tracer)     Gauss interfaceCompression vanLeer 1;

and solver specification:
    tracer
    {
        nCorr      1;
        nSubCycles 3;

        MULESCorr       no;
        nLimiterIter    5;
        applyPrevCorr   yes;

        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance       1e-8;
        relTol          0;

        diffusivity
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-8;
            relTol          0;
        }
    }
See also
Foam::functionObjects::fvMeshFunctionObject
Source files

Definition at line 109 of file scalarTransport.H.

Member Enumeration Documentation

◆ diffusivityType

enum diffusivityType
strong

Enumeration defining the type of the diffusivity.

Enumerator
none 
constant 
viscosity 

Definition at line 116 of file scalarTransport.H.

Constructor & Destructor Documentation

◆ scalarTransport() [1/2]

scalarTransport ( const word name,
const Time runTime,
const dictionary dict 
)

◆ scalarTransport() [2/2]

scalarTransport ( const scalarTransport )
delete

Disallow default bitwise copy construction.

◆ ~scalarTransport()

~scalarTransport ( )
virtual

Destructor.

Definition at line 164 of file scalarTransport.C.

Member Function Documentation

◆ TypeName()

TypeName ( "scalarTransport"  )

Runtime type information.

◆ read()

bool read ( const dictionary dict)
virtual

Read the scalarTransport data.

Reimplemented from objectRegistryFunctionObject.

Definition at line 170 of file scalarTransport.C.

References dict, objectRegistryFunctionObject::read(), and viscosity().

Referenced by scalarTransport::scalarTransport().

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

◆ fields()

Foam::wordList fields ( ) const
virtual

Return the list of fields required.

Implements functionObject.

Definition at line 205 of file scalarTransport.C.

◆ executeAtStart()

virtual bool executeAtStart ( ) const
inlinevirtual

Do not execute at the start of the run.

Reimplemented from functionObject.

Definition at line 214 of file scalarTransport.H.

◆ execute()

◆ write()

bool write ( )
virtual

Write the updated scalar field.

Implements functionObject.

Definition at line 639 of file scalarTransport.C.

◆ operator=()

void operator= ( const scalarTransport )
delete

Disallow default bitwise assignment.

Member Data Documentation

◆ diffusivityTypeNames_

Initial value:
{
"none",
"constant",
"viscosity"
}

Diffusivity type names.

Definition at line 124 of file scalarTransport.H.

Referenced by phaseScalarTransport::read().


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