Evolves a passive scalar transport equation within one phase of a multiphase simulation. The scalar is considered to be a phase-intensive property; i.e., its value represents an amount per-unit of the phase. In addition to the scalar, the function also writes out the product of the volume fraction and the scalar, as this provides a phase-extensive field which is often more convenient to post-process. More...
Public Member Functions | |
TypeName ("phaseScalarTransport") | |
Runtime type information. More... | |
phaseScalarTransport (const word &name, const Time &runTime, const dictionary &dict) | |
Construct from Time and dictionary. More... | |
virtual | ~phaseScalarTransport () |
Destructor. More... | |
virtual bool | read (const dictionary &) |
Read the settings from the given dictionary. More... | |
virtual wordList | fields () const |
Return the list of fields required. More... | |
virtual bool | execute () |
Solve for the evolution of the field. More... | |
virtual bool | write () |
Do nothing. The field is registered and written automatically. More... | |
![]() | |
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... | |
![]() | |
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... | |
![]() | |
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, const Time &runTime) | |
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 | 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... | |
Additional Inherited Members | |
![]() | |
static autoPtr< functionObject > | New (const word &name, const Time &, const dictionary &) |
Select from dictionary, based on its "type" entry. More... | |
![]() | |
Switch | log |
Switch write log to Info. More... | |
Switch | executeAtStart_ |
Switch write log to Info. More... | |
![]() | |
static bool | postProcess |
Global post-processing mode switch. More... | |
![]() | |
labelHashSet | patchSet (const dictionary &, const bool optional=false) const |
Return the patch set corresponding to the patch selection entries. More... | |
![]() | |
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 > | |
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... | |
![]() | |
const fvMesh & | mesh_ |
Reference to the fvMesh. More... | |
![]() | |
const objectRegistry & | obr_ |
Reference to the region objectRegistry. More... | |
![]() | |
const Time & | time_ |
Reference to time. More... | |
Evolves a passive scalar transport equation within one phase of a multiphase simulation. The scalar is considered to be a phase-intensive property; i.e., its value represents an amount per-unit of the phase. In addition to the scalar, the function also writes out the product of the volume fraction and the scalar, as this provides a phase-extensive field which is often more convenient to post-process.
Most entries are the same as for the scalarTransport
function. Refer to its documentation for details. Entries specific to this function are detailed below. Note that the phase-name will be determined by stripping the extension from the supplied field name.
If the solver does not provide an alphaPhi
flux, or that flux is for some reason unreliable, then the solveAlphaPhi
switch can be used to make this function solve a pressure-like equation from which alphaPhi
is recovered.
Property | Description | Req'd? | Default |
---|---|---|---|
alpha | Name of the volume-fraction field | no | alpha.<phase-name> |
alphaPhi | Name of the phase-flux field | no | alphaPhi.<phase-name> |
solveAlphaPhi | Solve for the alphaPhi flux, rather than looking it up | no | false |
p | Name of the pressure field | no | p |
residualAlpha | Small volume fraction used to stabilise the solution | no | rootSmall |
writeAlphaField | Also write out alpha multiplied by the field | no | true |
Example specification for incompressibleVoF:
phaseScalarTransport1 { type phaseScalarTransport; libs ("libsolverFunctionObjects.so"); field s.water; }
Example specification for multiphaseEuler:
phaseScalarTransport1 { type phaseScalarTransport; libs ("libsolverFunctionObjects.so"); field s.water; alphaPhi alphaRhoPhi.water; rho rho.water; }
Definition at line 140 of file phaseScalarTransport.H.
phaseScalarTransport | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Construct from Time and dictionary.
Definition at line 276 of file phaseScalarTransport.C.
References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, word::null, and phaseScalarTransport::read().
|
virtual |
Destructor.
Definition at line 316 of file phaseScalarTransport.C.
TypeName | ( | "phaseScalarTransport" | ) |
Runtime type information.
|
virtual |
Read the settings from the given dictionary.
Reimplemented from regionFunctionObject.
Definition at line 322 of file phaseScalarTransport.C.
References dict, IOobject::groupName(), regionFunctionObject::read(), and Foam::typedName().
Referenced by phaseScalarTransport::phaseScalarTransport().
|
virtual |
Return the list of fields required.
Implements functionObject.
Definition at line 362 of file phaseScalarTransport.C.
|
virtual |
Solve for the evolution of the field.
Implements functionObject.
Definition at line 368 of file phaseScalarTransport.C.
References alpha(), IOobject::AUTO_WRITE, fvConstraints::constrain(), D, Foam::fvc::ddt(), Foam::fvm::ddt(), DimensionedField< Type, GeoMesh >::dimensions(), Foam::dimMass, Foam::dimTime, Foam::dimVolume, Foam::fvm::div(), Foam::endl(), fvConstraints(), fvModels(), Foam::Info, Foam::fvc::interpolate(), Foam::fvm::laplacian(), IOobject::name(), dimensioned< Type >::name(), dictionary::New(), IOobject::NO_READ, PhiDimensionErrorInFunction, fvMatrix< Type >::relax(), rho, fvMatrix< Type >::solve(), fvModels::source(), Foam::type(), and Foam::Zero.
|
virtual |
Do nothing. The field is registered and written automatically.
Implements functionObject.
Definition at line 502 of file phaseScalarTransport.C.