Computes linear/angular momentum, reporting integral values and optionally writing the fields. More...
Public Member Functions | |
TypeName ("momentum") | |
Runtime type information. More... | |
momentum (const word &name, const Time &runTime, const dictionary &dict, const bool readFields=true) | |
Construct from Time and dictionary. More... | |
momentum (const word &name, const objectRegistry &obr, const dictionary &dict, const bool readFields=true) | |
Construct from objectRegistry and dictionary. More... | |
momentum (const momentum &)=delete | |
No copy construct. More... | |
void | operator= (const momentum &)=delete |
No copy assignment. More... | |
virtual | ~momentum ()=default |
Destructor. More... | |
virtual bool | read (const dictionary &) |
Read the momentum data. More... | |
virtual bool | execute () |
Calculate and report the integral momentum. More... | |
virtual bool | write () |
Write the momentum, possibly angular momentum and velocity. More... | |
virtual void | updateMesh (const mapPolyMesh &) |
Update for changes of mesh. More... | |
virtual void | movePoints (const polyMesh &) |
Update for mesh point-motion. More... | |
template<class GeoField > | |
Foam::autoPtr< GeoField > | newField (const word &baseName, const dimensionSet &dims, bool registerObject) const |
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... | |
virtual | ~fvMeshFunctionObject ()=default |
Destructor. 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... | |
virtual | ~regionFunctionObject ()=default |
Destructor. More... | |
virtual bool | read (const dictionary &dict) |
Read optional controls. 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... | |
Public Member Functions inherited from stateFunctionObject | |
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) |
Set new trigger index. 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... | |
Public Member Functions inherited from timeFunctionObject | |
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 |
Public Member Functions inherited from functionObject | |
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 | read (const dictionary &dict) |
Read and set the function object if its data have changed. More... | |
virtual bool | execute ()=0 |
Called at each ++ or += of the time-loop. More... | |
virtual bool | execute (const label subIndex) |
Execute using the specified subIndex. More... | |
virtual bool | write ()=0 |
Called at each ++ or += of the time-loop. 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... | |
Public Member Functions inherited from volRegion | |
TypeName ("volRegion") | |
Run-time type information. More... | |
volRegion (const fvMesh &mesh, const dictionary &dict) | |
Construct from fvMesh and dictionary. More... | |
virtual | ~volRegion ()=default |
Destructor. More... | |
regionTypes | regionType () const noexcept |
The region type. More... | |
const labelList & | cellIDs () const |
Return the local list of cell IDs. More... | |
label | nCells () const |
Return the total number of cells selected in the region. More... | |
scalar | V () const |
Return total volume of the selected region. More... | |
bool | update () |
Update the cached values as required. More... | |
virtual bool | read (const dictionary &dict) |
Read from dictionary. More... | |
virtual void | updateMesh (const mapPolyMesh &) |
Update for changes of mesh. More... | |
virtual void | movePoints (const polyMesh &) |
Update for mesh point-motion. More... | |
Public Member Functions inherited from writeFile | |
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 bool | read (const dictionary &dict) |
Read. 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... | |
template<class Type > | |
void | writeValue (Ostream &os, const Type &val) const |
Write a given value to stream with the space delimiter. More... | |
Protected Member Functions | |
void | initialise () |
Initialise the fields. More... | |
virtual void | writeFileHeader (Ostream &os) |
Output file header information. More... | |
void | writeValues (Ostream &os) |
Write momentum data. More... | |
Protected Member Functions inherited from fvMeshFunctionObject | |
fvMeshFunctionObject (const fvMeshFunctionObject &)=delete | |
No copy construct. More... | |
void | operator= (const fvMeshFunctionObject &)=delete |
No copy assignment. More... | |
Protected Member Functions inherited from regionFunctionObject | |
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... | |
Protected Member Functions inherited from stateFunctionObject | |
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... | |
Protected Member Functions inherited from timeFunctionObject | |
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... | |
Protected Member Functions inherited from functionObject | |
word | scopedName (const word &name) const |
Return a scoped (prefixed) name. More... | |
Protected Member Functions inherited from volRegion | |
bool | useAllCells () const noexcept |
Use all cells, not the cellIDs. More... | |
void | writeFileHeader (const writeFile &wf, Ostream &file) const |
Output file header information. More... | |
Protected Member Functions inherited from writeFile | |
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 | |
vector | sumMomentum_ |
Integral (linear) momentum. More... | |
vector | sumAngularMom_ |
Integral angular momentum. More... | |
word | UName_ |
The velocity field name (optional) More... | |
word | pName_ |
The pressure field name (optional) More... | |
word | rhoName_ |
The density field name (optional) More... | |
scalar | rhoRef_ |
Reference density (for incompressible) More... | |
coordSystem::cylindrical | csys_ |
Coordinate system for evaluating angular momentum. More... | |
bool | hasCsys_ |
Are we using the cylindrical coordinate system? More... | |
bool | writeMomentum_ |
Write fields flag. More... | |
bool | writeVelocity_ |
Write fields flag. More... | |
bool | writePosition_ |
Write fields flag. More... | |
bool | initialised_ |
Initialised flag. More... | |
Protected Attributes inherited from fvMeshFunctionObject | |
const fvMesh & | mesh_ |
Reference to the fvMesh. More... | |
Protected Attributes inherited from regionFunctionObject | |
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... | |
Protected Attributes inherited from timeFunctionObject | |
const Time & | time_ |
Reference to the time database. More... | |
Protected Attributes inherited from volRegion | |
regionTypes | regionType_ |
Region type. More... | |
wordRe | regionName_ |
Region name (cellSet, cellZone, ...) More... | |
Protected Attributes inherited from writeFile | |
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 | |
Public Types inherited from volRegion | |
enum | regionTypes : char { vrtAll = 0 , vrtCellSet , vrtCellZone } |
Region type enumeration. More... | |
Static Public Member Functions inherited from functionObject | |
static autoPtr< functionObject > | New (const word &name, const Time &runTime, const dictionary &dict) |
Select from dictionary, based on its "type" entry. More... | |
Public Attributes inherited from functionObject | |
bool | log |
Flag to write log into Info. More... | |
Static Public Attributes inherited from functionObject | |
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 Public Attributes inherited from volRegion | |
static const Enum< regionTypes > | regionTypeNames_ |
Region type names. More... | |
Static Public Attributes inherited from writeFile | |
static label | addChars = 8 |
Additional characters for writing. More... | |
Computes linear/angular momentum, reporting integral values and optionally writing the fields.
Operands:
Operand | Type | Location |
---|---|---|
input | - | - |
output file | dat | $FOAM_CASE/postProcessing/<FO>/<time>/<file> |
output field | - | - |
system/controlDict.functions
: momentum1 { // Mandatory entries (unmodifiable) type momentum; libs (fieldFunctionObjects); // Optional entries (runtime modifiable) regionType all; writeMomentum yes; writePosition yes; writeVelocity yes; p p; U U; rho rho; rhoRef 1.0; cylindrical true; origin (0 0 0); e1 (1 0 0); e3 (0 0 1); // Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Req'd | Dflt |
---|---|---|---|---|
type | Type name: momentum | word | yes | - |
libs | Library name: fieldFunctionObjects | word | yes | - |
regionType | Selection type: all/cellSet/cellZone | word | no | all |
writeMomentum | Write (linear, angular) momentum fields | bool | no | no |
writePosition | Write angular position component fields | bool | no | no |
writeVelocity | Write angular velocity fields | bool | no | no |
p | Pressure field name | word | no | p |
U | Velocity field name | word | no | U |
rho | Density field name | word | no | rho |
rhoRef | Reference density (incompressible) | scalar | no | 1.0 |
cylindrical | Use cylindrical coordinates | bool | no | no |
origin | Origin for cylindrical coordinates | vector | conditional | - |
name | Name of cellSet/cellZone if required | word | conditional | - |
The inherited entries are elaborated in:
Usage by the postProcess
utility is not available.
rhoRef
is used.rotation
sub-dictionary For example, origin (0 0 0); rotation { type cylindrical; axis (0 0 1); }
Definition at line 247 of file momentum.H.
momentum | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict, | ||
const bool | readFields = true |
||
) |
Construct from Time and dictionary.
Definition at line 348 of file momentum.C.
References dict, Foam::endl(), Log, and momentum::read().
momentum | ( | const word & | name, |
const objectRegistry & | obr, | ||
const dictionary & | dict, | ||
const bool | readFields = true |
||
) |
Construct from objectRegistry and dictionary.
Definition at line 380 of file momentum.C.
References dict, Foam::endl(), Log, and momentum::read().
|
virtualdefault |
Destructor.
|
protected |
Initialise the fields.
Definition at line 272 of file momentum.C.
References Foam::dimPressure, Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
|
protectedvirtual |
Output file header information.
Definition at line 228 of file momentum.C.
References Foam::endl(), os(), volRegion::useAllCells(), and Foam::writeHeader().
|
protected |
Write momentum data.
Definition at line 305 of file momentum.C.
References Foam::endl(), Foam::Info, Foam::name(), Foam::nl, os(), Foam::tab, Foam::type(), volRegion::useAllCells(), and volRegion::V().
TypeName | ( | "momentum" | ) |
Runtime type information.
|
delete |
No copy assignment.
|
virtual |
Read the momentum data.
Reimplemented from volRegion.
Definition at line 414 of file momentum.C.
References dict, Foam::dimMass, Foam::dimVelocity, Foam::endl(), Foam::Info, Foam::name(), Foam::nl, kEpsilonLopesdaCosta< BasicTurbulenceModel >::read(), and Foam::type().
Referenced by momentum::momentum().
|
virtual |
Calculate and report the integral momentum.
Implements functionObject.
Definition at line 484 of file momentum.C.
References Foam::endl(), Log, and splitCell::master().
|
virtual |
Write the momentum, possibly angular momentum and velocity.
Implements functionObject.
Definition at line 510 of file momentum.C.
References Foam::dimLength, Foam::dimless, forAll, Log, Foam::nl, p, UPtrList< T >::size(), and regIOobject::write().
|
virtual |
Update for changes of mesh.
Reimplemented from volRegion.
Definition at line 592 of file momentum.C.
References motionSmootherAlgo::updateMesh().
|
virtual |
Update for mesh point-motion.
Reimplemented from volRegion.
Definition at line 599 of file momentum.C.
References motionSmootherAlgo::movePoints().
Foam::autoPtr< GeoField > newField | ( | const word & | baseName, |
const dimensionSet & | dims, | ||
bool | registerObject | ||
) | const |
Definition at line 60 of file momentum.C.
References Time::New(), IOobject::NO_READ, IOobject::NO_WRITE, and Foam::Zero.
|
protected |
Integral (linear) momentum.
Definition at line 276 of file momentum.H.
|
protected |
Integral angular momentum.
Definition at line 279 of file momentum.H.
|
protected |
The velocity field name (optional)
Definition at line 285 of file momentum.H.
|
protected |
The pressure field name (optional)
Only used to determine incompressible/compressible
Definition at line 289 of file momentum.H.
|
protected |
The density field name (optional)
Definition at line 292 of file momentum.H.
|
protected |
Reference density (for incompressible)
Definition at line 295 of file momentum.H.
|
protected |
Coordinate system for evaluating angular momentum.
Definition at line 298 of file momentum.H.
|
protected |
Are we using the cylindrical coordinate system?
Definition at line 301 of file momentum.H.
|
protected |
Write fields flag.
Definition at line 304 of file momentum.H.
|
protected |
Write fields flag.
Definition at line 307 of file momentum.H.
|
protected |
Write fields flag.
Definition at line 310 of file momentum.H.
|
protected |
Initialised flag.
Definition at line 313 of file momentum.H.