This function object calculates and outputs the blended interfacial forces acting on a given phase, i.e. drag, virtual mass, lift, wall-lubrication and turbulent dispersion. Note that it works only in run-time processing mode and in combination with the reactingEulerFoam solvers. More...
Public Member Functions | |
TypeName ("phaseForces") | |
Runtime type information. More... | |
phaseForces (const word &name, const Time &runTime, const dictionary &) | |
Construct from Time and dictionary. More... | |
virtual | ~phaseForces () |
Destructor. More... | |
virtual bool | read (const dictionary &dict) |
Read the input data. More... | |
virtual bool | execute () |
Calculate the force fields. More... | |
virtual bool | write () |
Write the force fields. More... | |
template<class modelType > | |
Foam::tmp< Foam::volVectorField > | nonDragForce (const phasePair &pair) const |
![]() | |
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... | |
virtual | ~fvMeshFunctionObject ()=default |
Destructor. 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... | |
virtual | ~regionFunctionObject ()=default |
Destructor. More... | |
template<class ObjectType > | |
const ObjectType * | lookupObjectPtr (const word &fieldName) const |
Deprecated(2018-10) More... | |
template<class ObjectType > | |
ObjectType * | lookupObjectRefPtr (const word &fieldName) const |
Deprecated(2018-10) More... | |
![]() | |
stateFunctionObject (const word &name, const Time &runTime) | |
Construct from components. More... | |
virtual | ~stateFunctionObject ()=default |
Destructor. More... | |
dictionary & | propertyDict () |
Return access to the property dictionary. More... | |
bool | foundProperty (const word &entryName) const |
Return true if the property exists. More... | |
void | clearTrigger () |
Remove the trigger index from the properties. More... | |
label | getTrigger () const |
Get the current trigger index. More... | |
bool | setTrigger (const label triggeri, bool increaseOnly=true) |
Set the trigger index. Normally only if greater than current. More... | |
bool | getDict (const word &entryName, dictionary &dict) const |
Set dictionary, return true if set. More... | |
bool | getObjectDict (const word &objectName, const word &entryName, dictionary &dict) const |
Set dictionary from named object, return true if set. More... | |
template<class Type > | |
Type | getProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const |
Retrieve generic property. More... | |
template<class Type > | |
bool | getProperty (const word &entryName, Type &value) const |
Set generic property, return true if set. More... | |
template<class Type > | |
void | setProperty (const word &entryName, const Type &value) |
Add generic property. More... | |
template<class Type > | |
Type | getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
Retrieve generic property from named object. More... | |
template<class Type > | |
bool | getObjectProperty (const word &objectName, const word &entryName, Type &value) const |
Set generic property from named object, return true if set. More... | |
template<class Type > | |
void | setObjectProperty (const word &objectName, const word &entryName, const Type &value) |
Add generic property from named object. More... | |
template<class Type > | |
void | setResult (const word &entryName, const Type &value) |
Add result. More... | |
template<class Type > | |
void | setObjectResult (const word &objectName, const word &entryName, const Type &value) |
Add result from named object. More... | |
template<class Type > | |
Type | getResult (const word &entryName, const Type &defaultValue=Type(Zero)) const |
Retrieve result. More... | |
template<class Type > | |
Type | getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
Retrieve result from named object. More... | |
template<class Type > | |
bool | getObjectResult (const word &objectName, const word &entryName, Type &value) const |
Set result from named object, return true if set. More... | |
word | resultType (const word &entryName) const |
Retrieve the result type. More... | |
word | objectResultType (const word &objectName, const word &entryName) const |
Return the type of result. More... | |
wordList | objectResultEntries () const |
Retrieve the result entries. More... | |
wordList | objectResultEntries (const word &objectName) const |
Return result entries for named object. More... | |
void | writeResultEntries (Ostream &os) const |
Write the results entries for all objects to stream. More... | |
void | writeResultEntries (const word &objectName, Ostream &os) const |
Write the results entries for named object to stream. More... | |
void | writeAllResultEntries (Ostream &os) const |
Write the results entries for all objects to stream. More... | |
![]() | |
timeFunctionObject (const word &name, const Time &runTime) | |
Construct from Time. More... | |
virtual | ~timeFunctionObject ()=default |
Destructor. More... | |
const Time & | time () const |
Return time database. More... | |
objectRegistry & | storedObjects () |
const objectRegistry & | storedObjects () const |
![]() | |
declareRunTimeSelectionTable (autoPtr, functionObject, dictionary,(const word &name, const Time &runTime, const dictionary &dict),(name, runTime, dict)) | |
functionObject (const word &name, const bool withNamePrefix=defaultUseNamePrefix) | |
Construct from components. More... | |
autoPtr< functionObject > | clone () const |
Return clone. More... | |
virtual | ~functionObject ()=default |
Destructor. More... | |
virtual const word & | type () const =0 |
Runtime type information. More... | |
const word & | name () const noexcept |
Return the name of this functionObject. More... | |
bool | useNamePrefix () const noexcept |
Return the flag for adding a scoping name prefix. More... | |
bool | useNamePrefix (bool on) noexcept |
Modify the flag for adding a scoping name prefix. More... | |
virtual bool | execute (const label subIndex) |
Execute using the specified subIndex. More... | |
virtual bool | end () |
Called when Time::run() determines that the time-loop exits. More... | |
virtual bool | adjustTimeStep () |
Called at the end of Time::adjustDeltaT() if adjustTime is true. More... | |
virtual bool | filesModified () const |
Did any file get changed during execution? More... | |
virtual void | updateMesh (const mapPolyMesh &mpm) |
Update for changes of mesh. More... | |
virtual void | movePoints (const polyMesh &mesh) |
Update for changes of mesh. More... | |
Protected Member Functions | |
template<class modelType > | |
tmp< volVectorField > | nonDragForce (const phasePair &key) const |
Evaluate and return non-drag force. More... | |
![]() | |
fvMeshFunctionObject (const fvMeshFunctionObject &)=delete | |
No copy construct. More... | |
void | operator= (const fvMeshFunctionObject &)=delete |
No copy assignment. More... | |
![]() | |
virtual const objectRegistry & | obr () const |
The region or sub-region registry being used. More... | |
template<class ObjectType > | |
bool | foundObject (const word &fieldName) const |
Find object (eg, a field) in the (sub) objectRegistry. More... | |
template<class ObjectType > | |
const ObjectType * | cfindObject (const word &fieldName) const |
template<class ObjectType > | |
const ObjectType * | findObject (const word &fieldName) const |
template<class ObjectType > | |
ObjectType * | findObject (const word &fieldName) |
template<class ObjectType > | |
ObjectType * | getObjectPtr (const word &fieldName) const |
template<class ObjectType > | |
const ObjectType & | lookupObject (const word &fieldName) const |
Lookup and return object (eg, a field) from the (sub) objectRegistry. More... | |
template<class ObjectType > | |
ObjectType & | lookupObjectRef (const word &fieldName) const |
Lookup and return object (eg, a field) from the (sub) objectRegistry. More... | |
template<class ObjectType > | |
bool | store (word &fieldName, const tmp< ObjectType > &tfield, bool cacheable=false) |
Store the field in the (sub) objectRegistry under the given name. More... | |
template<class ObjectType > | |
bool | storeInDb (const word &fieldName, const tmp< ObjectType > &tfield, const objectRegistry &obr) |
Store the field in an optional objectRegistry under the given name. More... | |
bool | writeObject (const word &fieldName) |
Write field if present in the (sub) objectRegistry. More... | |
bool | clearObject (const word &fieldName) |
Clear field from the (sub) objectRegistry if present. More... | |
void | clearObjects (const wordList &objNames) |
Clear fields from the (sub) objectRegistry if present. More... | |
regionFunctionObject (const regionFunctionObject &)=delete | |
No copy construct. More... | |
void | operator= (const regionFunctionObject &)=delete |
No copy assignment. More... | |
![]() | |
const functionObjects::properties & | stateDict () const |
Return a const reference to the state dictionary. More... | |
functionObjects::properties & | stateDict () |
Return non-const access to the state dictionary. More... | |
stateFunctionObject (const stateFunctionObject &)=delete | |
No copy construct. More... | |
void | operator= (const stateFunctionObject &)=delete |
No copy assignment. More... | |
![]() | |
void | clearOutputObjects (const wordList &objNames) |
Remove specified items from "functionObjectObjects". More... | |
timeFunctionObject (const timeFunctionObject &)=delete | |
No copy construct. More... | |
void | operator= (const timeFunctionObject &)=delete |
No copy assignment. More... | |
![]() | |
word | scopedName (const word &name) const |
Return a scoped (prefixed) name. More... | |
Protected Attributes | |
HashPtrTable< volVectorField > | forceFields_ |
const phaseModel & | phase_ |
Phase for which forces are evaluated. More... | |
const phaseSystem & | fluid_ |
Constant access to phaseSystem. More... | |
![]() | |
const fvMesh & | mesh_ |
Reference to the fvMesh. More... | |
![]() | |
word | subRegistryName_ |
Name for alternative object registry. More... | |
const objectRegistry & | obr_ |
Reference to the region objectRegistry. More... | |
const objectRegistry * | obrPtr_ |
Pointer to alternative (eg, sub-region) objectRegistry. More... | |
![]() | |
const Time & | time_ |
Reference to the time database. More... | |
Additional Inherited Members | |
![]() | |
static autoPtr< functionObject > | New (const word &name, const Time &runTime, const dictionary &dict) |
Select from dictionary, based on its "type" entry. More... | |
![]() | |
bool | log |
Flag to write log into Info. More... | |
![]() | |
static int | debug |
Flag to execute debug content. More... | |
static bool | postProcess |
Global post-processing mode switch. More... | |
static bool | defaultUseNamePrefix |
Global default for useNamePrefix. More... | |
static word | outputPrefix |
Directory prefix. More... | |
This function object calculates and outputs the blended interfacial forces acting on a given phase, i.e. drag, virtual mass, lift, wall-lubrication and turbulent dispersion. Note that it works only in run-time processing mode and in combination with the reactingEulerFoam solvers.
For a simulation involving more than two phases, the accumulated force is calculated by looping over all phasePairs involving that phase. The fields are stored in the database so that they can be processed further, e.g. with the fieldAveraging functionObject.
Example of function object specification:
phaseForces.water { type phaseForces; libs (reactingEulerFoamFunctionObjects); writeControl writeTime; writeInterval 1; ... phaseName water; }
Property | Description | Required | Default value |
---|---|---|---|
type | type name: phaseForces | yes | |
phaseName | Name of evaluated phase | yes |
Definition at line 103 of file phaseForces.H.
phaseForces | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Construct from Time and dictionary.
Definition at line 72 of file phaseForces.C.
References phasePair::contains(), dict, Foam::dimForce, Foam::dimVolume, forAllConstIter, IOobject::groupName(), phasePairKey::ordered(), and Foam::read().
|
virtual |
Destructor.
Definition at line 214 of file phaseForces.C.
|
protected |
Evaluate and return non-drag force.
TypeName | ( | "phaseForces" | ) |
Runtime type information.
|
virtual |
Read the input data.
Reimplemented from regionFunctionObject.
Definition at line 220 of file phaseForces.C.
References dict, and regionFunctionObject::read().
|
virtual |
Calculate the force fields.
Implements functionObject.
Definition at line 228 of file phaseForces.C.
References phasePair::contains(), phaseModel::DUDt(), forAllConstIter, forAllIter, phasePairKey::ordered(), phasePair::otherPhase(), Foam::type(), and phaseModel::U().
|
virtual |
Write the force fields.
Implements functionObject.
Definition at line 292 of file phaseForces.C.
References forAllIter, and Foam::name().
Foam::tmp<Foam::volVectorField> nonDragForce | ( | const phasePair & | pair | ) | const |
Definition at line 53 of file phaseForces.C.
References phaseForces::fluid_, phaseSystem::lookupBlendedSubModel(), phasePair::phase1(), and phaseForces::phase_.
|
protected |
Definition at line 120 of file phaseForces.H.
|
protected |
Phase for which forces are evaluated.
Definition at line 123 of file phaseForces.H.
Referenced by phaseForces::nonDragForce().
|
protected |
Constant access to phaseSystem.
Definition at line 126 of file phaseForces.H.
Referenced by phaseForces::nonDragForce().