This function object calculates and outputs information about the size distribution of the dispersed phase, such as the number density function or its moments. It is designed to be used exclusively with the population balance modeling functionality of the reactingEulerFoam solvers. It can be applied to a specific cellZone or the entire domain. More...
Public Types | |
enum | selectionModeTypes { rtCellZone, rtAll } |
Selection mode type enumeration. More... | |
enum | functionTypes { ftNdf, ftVdf, ftNc, ftMom } |
Function type enumeration. More... | |
enum | abszissaTypes { atDiameter, atVolume } |
abszissa type enumeration More... | |
Public Member Functions | |
TypeName ("sizeDistribution") | |
Runtime type information. More... | |
sizeDistribution (const word &name, const Time &runTime, const dictionary &dict) | |
Construct from Time and dictionary. More... | |
virtual | ~sizeDistribution () |
Destructor. More... | |
const dictionary & | dict () const |
Return the reference to the construction dictionary. More... | |
const labelList & | cellId () const |
Return the local list of cell IDs. More... | |
const fvMesh & | mesh () const |
Helper function to return the reference to the mesh. More... | |
virtual bool | read (const dictionary &dict) |
Read from dictionary. More... | |
virtual bool | execute () |
Execute. More... | |
virtual bool | write () |
Write. 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... | |
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... | |
![]() | |
writeFile (const objectRegistry &obr, const fileName &prefix, const word &name="undefined", const bool writeToFile=true) | |
Construct from objectRegistry, prefix, fileName. More... | |
writeFile (const objectRegistry &obr, const fileName &prefix, const word &name, const dictionary &dict, const bool writeToFile=true) | |
writeFile (const writeFile &wf) | |
Construct copy. More... | |
virtual | ~writeFile ()=default |
Destructor. More... | |
virtual OFstream & | file () |
Return access to the file (if only 1) More... | |
virtual bool | writeToFile () const |
Flag to allow writing to file. More... | |
virtual bool | canWriteHeader () const |
Flag to allow writing the header. More... | |
virtual label | charWidth () const |
Return width of character stream output. More... | |
virtual void | writeCommented (Ostream &os, const string &str) const |
Write a commented string to stream. More... | |
virtual void | writeTabbed (Ostream &os, const string &str) const |
Write a tabbed string to stream. More... | |
virtual void | writeHeader (Ostream &os, const string &str) const |
Write a commented header to stream. More... | |
virtual void | writeCurrentTime (Ostream &os) const |
Write the current time to stream. More... | |
virtual void | writeBreak (Ostream &os) const |
Write a break marker to the stream. More... | |
template<class Type > | |
void | writeHeaderValue (Ostream &os, const string &property, const Type &value) const |
Write a (commented) header property and value pair. More... | |
Static Public Attributes | |
static const Enum< selectionModeTypes > | selectionModeTypeNames_ |
Selection mode type names. More... | |
static const Enum< functionTypes > | functionTypeNames_ |
Function type names. More... | |
static const Enum< abszissaTypes > | abszissaTypeNames_ |
Abszissa type names. 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... | |
![]() | |
static label | addChars = 8 |
Additional characters for writing. More... | |
Protected Member Functions | |
void | initialise (const dictionary &dict) |
Initialise, e.g. cell addressing. More... | |
void | setCellZoneCells () |
Set cells to evaluate based on a cell zone. More... | |
scalar | volume () const |
Calculate and return volume of the evaluated cell zone. More... | |
void | combineFields (scalarField &field) |
Combine fields from all processor domains into single field. More... | |
tmp< scalarField > | filterField (const scalarField &field) const |
Filter field according to cellIds. More... | |
void | writeFileHeader (const label i=0) |
Output file header information. 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... | |
![]() | |
void | initStream (Ostream &os) const |
Initialise the output stream for writing. More... | |
fileName | baseFileDir () const |
Return the base directory for output. More... | |
fileName | baseTimeDir () const |
Return the base directory for the current time value. More... | |
virtual autoPtr< OFstream > | createFile (const word &name, scalar timeValue) const |
Return autoPtr to a new file for a given time. More... | |
virtual autoPtr< OFstream > | createFile (const word &name) const |
Return autoPtr to a new file using the simulation start time. More... | |
virtual void | resetFile (const word &name) |
Reset internal file pointer to new file with new name. More... | |
Omanip< int > | valueWidth (const label offset=0) const |
Return the value width when writing to stream with optional offset. More... | |
void | operator= (const writeFile &)=delete |
No copy assignment. More... | |
Protected Attributes | |
dictionary | dict_ |
Construction dictionary. More... | |
selectionModeTypes | selectionModeType_ |
Selection mode type. More... | |
word | selectionModeTypeName_ |
Name of selection. More... | |
functionTypes | functionType_ |
Function type. More... | |
abszissaTypes | abszissaType_ |
Abszissa type. More... | |
label | nCells_ |
Global number of cells. More... | |
labelList | cellId_ |
Local list of cell IDs. More... | |
scalar | volume_ |
Total volume of the evaluated selection. More... | |
bool | writeVolume_ |
Optionally write the volume of the sizeDistribution. More... | |
const Foam::diameterModels::populationBalanceModel & | popBal_ |
PopulationBalance. More... | |
List< scalar > | N_ |
Number concentrations. More... | |
label | momentOrder_ |
Write moments up to specified order with respect to abszissaType. More... | |
const Switch | normalize_ |
Normalization switch. More... | |
scalar | sumN_ |
Sum of number concentrations. More... | |
scalar | sumV_ |
Volumertic sum. 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... | |
![]() | |
const objectRegistry & | fileObr_ |
Reference to the region objectRegistry. More... | |
const fileName | prefix_ |
Prefix. More... | |
word | fileName_ |
Name of file. More... | |
autoPtr< OFstream > | filePtr_ |
File pointer. More... | |
label | writePrecision_ |
Write precision. More... | |
bool | writeToFile_ |
Flag to enable/disable writing to file. More... | |
bool | updateHeader_ |
bool | writtenHeader_ |
Flag to identify whether the header has been written. More... | |
bool | useUserTime_ |
scalar | startTime_ |
Start time value. 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... | |
This function object calculates and outputs information about the size distribution of the dispersed phase, such as the number density function or its moments. It is designed to be used exclusively with the population balance modeling functionality of the reactingEulerFoam solvers. It can be applied to a specific cellZone or the entire domain.
Example of function object specification:
box.all.numberDensity.volume.bubbles { type sizeDistribution; libs (reactingEulerFoamFunctionObjects); writeControl outputTime; writeInterval 1; log true; ... functionType numberDensity; abszissaType volume; selectionMode all; populationBalanceModel bubbles; normalize true; }
Property | Description | Required | Default value |
---|---|---|---|
type | type name: sizeDistribution | yes | |
functionType | numberDensity, volumeDensity, numberConcentration, | ||
moments | yes | ||
abszissaType | volume, diameter | yes | |
momentOrder | Write moment up to given order | no | 0 |
selectionMode | Evaluate for cellZone or entire mesh | yes | |
cellZone | Required if selectionMode is cellZone | ||
populationBalanceModel | Respective populationBalanceModel | yes | |
normalize | Normalization | no |
Definition at line 148 of file sizeDistribution.H.
enum selectionModeTypes |
Selection mode type enumeration.
Enumerator | |
---|---|
rtCellZone | |
rtAll |
Definition at line 159 of file sizeDistribution.H.
enum functionTypes |
Function type enumeration.
Enumerator | |
---|---|
ftNdf | |
ftVdf | |
ftNc | |
ftMom |
Definition at line 170 of file sizeDistribution.H.
enum abszissaTypes |
abszissa type enumeration
Enumerator | |
---|---|
atDiameter | |
atVolume |
Definition at line 183 of file sizeDistribution.H.
sizeDistribution | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Construct from Time and dictionary.
Definition at line 346 of file sizeDistribution.C.
References dict, Foam::name(), and Foam::read().
|
virtual |
Destructor.
Definition at line 387 of file sizeDistribution.C.
|
protected |
Initialise, e.g. cell addressing.
Definition at line 84 of file sizeDistribution.C.
References dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, Foam::Info, Foam::name(), Foam::nl, and Foam::fieldTypes::volume.
|
protected |
Set cells to evaluate based on a cell zone.
Definition at line 168 of file sizeDistribution.C.
References sizeDistribution::cellId_, polyMesh::cellZones(), sizeDistribution::dict(), sizeDistribution::dict_, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, ZoneMesh< ZoneType, MeshType >::findZoneID(), Foam::identity(), sizeDistribution::mesh(), ZoneMesh< ZoneType, MeshType >::names(), sizeDistribution::nCells_, Foam::nl, word::null, dictionary::readEntry(), Foam::returnReduce(), sizeDistribution::rtAll, sizeDistribution::rtCellZone, sizeDistribution::selectionModeType_, sizeDistribution::selectionModeTypeName_, and sizeDistribution::selectionModeTypeNames_.
|
protected |
Calculate and return volume of the evaluated cell zone.
Definition at line 214 of file sizeDistribution.C.
References Foam::gSum(), and mesh.
|
protected |
Combine fields from all processor domains into single field.
Definition at line 220 of file sizeDistribution.C.
References field(), Pstream::gatherList(), UPstream::master(), UPstream::myProcNo(), and UPstream::nProcs().
|
protected |
Filter field according to cellIds.
Definition at line 242 of file sizeDistribution.C.
References field().
|
protected |
Output file header information.
Definition at line 251 of file sizeDistribution.C.
References sizeGroup::d(), Foam::endl(), forAll, Foam::tab, dimensioned< Type >::value(), Foam::writeHeader(), and sizeGroup::x().
TypeName | ( | "sizeDistribution" | ) |
Runtime type information.
|
inline |
Return the reference to the construction dictionary.
Definition at line 288 of file sizeDistribution.H.
References sizeDistribution::dict_.
Referenced by sizeDistribution::setCellZoneCells().
|
inline |
Return the local list of cell IDs.
Definition at line 294 of file sizeDistribution.H.
References sizeDistribution::cellId_.
|
inline |
Helper function to return the reference to the mesh.
Definition at line 300 of file sizeDistribution.H.
References regionFunctionObject::obr_.
Referenced by sizeDistribution::setCellZoneCells().
|
virtual |
Read from dictionary.
Reimplemented from writeFile.
Definition at line 393 of file sizeDistribution.C.
References dict, regionFunctionObject::read(), and writeFile::read().
|
virtual |
|
virtual |
Write.
Implements functionObject.
Definition at line 415 of file sizeDistribution.C.
References Foam::constant::atomic::alpha, sizeGroup::d(), delta, Foam::endl(), forAll, velocityGroup::formFactor(), Log, UPstream::master(), mesh, Foam::name(), Foam::nl, diameterModel::phase(), Foam::pow(), Foam::sum(), Foam::tab, Foam::type(), dimensioned< Type >::value(), Foam::HashTableOps::values(), sizeGroup::VelocityGroup(), and sizeGroup::x().
|
static |
Selection mode type names.
Definition at line 166 of file sizeDistribution.H.
Referenced by sizeDistribution::setCellZoneCells().
|
static |
Function type names.
Definition at line 179 of file sizeDistribution.H.
|
static |
Abszissa type names.
Definition at line 190 of file sizeDistribution.H.
|
protected |
Construction dictionary.
Definition at line 198 of file sizeDistribution.H.
Referenced by sizeDistribution::dict(), and sizeDistribution::setCellZoneCells().
|
protected |
Selection mode type.
Definition at line 201 of file sizeDistribution.H.
Referenced by sizeDistribution::setCellZoneCells().
|
protected |
Name of selection.
Definition at line 204 of file sizeDistribution.H.
Referenced by sizeDistribution::setCellZoneCells().
|
protected |
Function type.
Definition at line 207 of file sizeDistribution.H.
|
protected |
Abszissa type.
Definition at line 210 of file sizeDistribution.H.
|
protected |
Global number of cells.
Definition at line 213 of file sizeDistribution.H.
Referenced by sizeDistribution::setCellZoneCells().
|
protected |
Local list of cell IDs.
Definition at line 216 of file sizeDistribution.H.
Referenced by sizeDistribution::cellId(), and sizeDistribution::setCellZoneCells().
|
protected |
Total volume of the evaluated selection.
Definition at line 219 of file sizeDistribution.H.
|
protected |
Optionally write the volume of the sizeDistribution.
Definition at line 222 of file sizeDistribution.H.
|
protected |
PopulationBalance.
Definition at line 225 of file sizeDistribution.H.
|
protected |
Number concentrations.
Definition at line 228 of file sizeDistribution.H.
|
protected |
Write moments up to specified order with respect to abszissaType.
Definition at line 231 of file sizeDistribution.H.
|
protected |
Normalization switch.
Definition at line 234 of file sizeDistribution.H.
|
protected |
Sum of number concentrations.
Definition at line 237 of file sizeDistribution.H.
|
protected |
Volumertic sum.
Definition at line 240 of file sizeDistribution.H.