Evolves a passive scalar transport equation. More...
Public Types | |
enum | diffusionType { none, constant, viscosity } |
Enumeration defining the type of the diffusion. 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 | execute () |
Calculate the scalarTransport. More... | |
virtual bool | write () |
Do nothing. 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, const dictionary &dict) | |
Construct from the region objectRegistry and dictionary. More... | |
fvMeshFunctionObject (const fvMeshFunctionObject &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~fvMeshFunctionObject () |
Destructor. 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, const dictionary &dict) | |
Construct from the region objectRegistry and dictionary. 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 functionObject | |
ClassName ("functionObject") | |
virtual const word & | type () 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) | |
Construct from components. More... | |
autoPtr< functionObject > | clone () const |
Return clone. More... | |
functionObject (const functionObject &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~functionObject () |
Destructor. More... | |
const word & | name () const |
Return the name of this functionObject. More... | |
virtual bool | executeAtStart () const |
Return true if the functionObject should be executed at the start. More... | |
virtual bool | end () |
Called when Time::run() determines that the time-loop exits. More... | |
virtual scalar | timeToNextWrite () |
Called by Time::adjustTimeStep(). Allows the functionObject to. 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... | |
void | operator= (const functionObject &)=delete |
Disallow default bitwise assignment. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from functionObject | |
static autoPtr< functionObject > | New (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 write log to Info. More... | |
Static Public Attributes inherited from functionObject | |
static bool | postProcess |
Global post-processing mode switch. More... | |
Protected Member Functions inherited from regionFunctionObject | |
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... | |
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 > | |
bool | store (const tmp< ObjectType > &tfield) |
Store the given field in the objectRegistry. More... | |
template<class ObjectType > | |
bool | 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 fvMesh & | mesh_ |
Reference to the fvMesh. More... | |
Protected Attributes inherited from regionFunctionObject | |
const Time & | time_ |
Reference to the Time. More... | |
const objectRegistry & | obr_ |
Reference to the region objectRegistry. More... | |
Evolves a passive scalar transport equation.
- To specify the field name set the field
entry
schemesField
entry,diffusivity
entry can be set to none
, constant
, viscosity
D
entry,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, diffusion=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; diffusion { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-8; relTol 0; } }
Definition at line 109 of file scalarTransport.H.
|
strong |
Enumeration defining the type of the diffusion.
Enumerator | |
---|---|
none | |
constant | |
viscosity |
Definition at line 116 of file scalarTransport.H.
scalarTransport | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Construct from Time and dictionary.
Definition at line 117 of file scalarTransport.C.
References IOobject::AUTO_WRITE, Foam::endl(), dictionary::found(), IOobject::groupName(), typeIOobject< Type >::headerOk(), Foam::Info, Foam::fvc::interpolate(), dictionary::lookupOrDefault(), phi, Foam::read(), IOobject::READ_IF_PRESENT, and Time::timeName().
Referenced by NamedEnum< compressibleField, 8 >::names().
|
delete |
Disallow default bitwise copy construction.
|
virtual |
Destructor.
Definition at line 195 of file scalarTransport.C.
TypeName | ( | "scalarTransport" | ) |
Runtime type information.
|
virtual |
Read the scalarTransport data.
Reimplemented from regionFunctionObject.
Definition at line 201 of file scalarTransport.C.
References dictionary::lookup(), dictionary::lookupOrDefault(), regionFunctionObject::read(), dictionary::readIfPresent(), and viscosity().
|
virtual |
Return the list of fields required.
Implements functionObject.
Definition at line 232 of file scalarTransport.C.
|
virtual |
Calculate the scalarTransport.
Implements functionObject.
Definition at line 238 of file scalarTransport.C.
References cnCoeff, Foam::compressionSchemes, fvConstraints::constrain(), Foam::MULES::correct(), Foam::fvc::ddt(), Foam::fvm::ddt(), DimensionedField< Type, GeoMesh >::dimensions(), Foam::dimMass, Foam::dimTime, Foam::dimVolume, Foam::fvm::div(), localEulerDdt::enabled(), Foam::endl(), Foam::exit(), Foam::MULES::explicitSolve(), Foam::FatalError, FatalErrorInFunction, Foam::fvc::flux(), fvMatrix< Type >::flux(), HashTable< T, Key, Hash >::found(), fvConstraints, fvModels, Foam::fvc::grad(), Foam::Info, Foam::fvc::interpolate(), Foam::isType(), Foam::fvm::laplacian(), localEulerDdt::localRSubDeltaT(), dictionary::lookup(), dictionary::lookupOrDefault(), LTS, Foam::mag(), Foam::max(), Foam::min(), MULESCorr(), nCorr, dictionary::New(), GeometricField< scalar, fvsPatchField, surfaceMesh >::New(), Foam::nl, ocCoeff, GeometricField< Type, PatchField, GeoMesh >::oldTime(), phi, phiCN(), tmp< T >::ref(), GeometricField< Type, PatchField, GeoMesh >::ref(), rho, fvMatrix< Type >::solve(), dictionary::subDict(), and Foam::type().
|
virtual |
Do nothing.
The volScalarField is registered and written automatically
Implements functionObject.
Definition at line 635 of file scalarTransport.C.
|
delete |
Disallow default bitwise assignment.