Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
momentum Class Reference

Computes linear/angular momentum, reporting integral values and optionally writing the fields. More...

Inheritance diagram for momentum:
Inheritance graph
[legend]
Collaboration diagram for momentum:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("momentum")
 
 momentum (const word &name, const Time &runTime, const dictionary &dict, const bool readFields=true)
 
 momentum (const word &name, const objectRegistry &obr, const dictionary &dict, const bool readFields=true)
 
 momentum (const momentum &)=delete
 
void operator= (const momentum &)=delete
 
virtual ~momentum ()=default
 
virtual bool read (const dictionary &)
 
virtual bool execute ()
 
virtual bool write ()
 
virtual void updateMesh (const mapPolyMesh &)
 
virtual void movePoints (const polyMesh &)
 
template<class GeoField >
Foam::autoPtr< GeoField > newField (const word &baseName, const dimensionSet &dims, bool registerObject) const
 
- Public Member Functions inherited from fvMeshFunctionObject
 TypeName ("fvMeshFunctionObject")
 
 fvMeshFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 
 fvMeshFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 
virtual ~fvMeshFunctionObject ()=default
 
- Public Member Functions inherited from regionFunctionObject
 TypeName ("regionFunctionObject")
 
 regionFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 
 regionFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 
virtual ~regionFunctionObject ()=default
 
template<class ObjectType >
const ObjectType * lookupObjectPtr (const word &fieldName) const
 
template<class ObjectType >
ObjectType * lookupObjectRefPtr (const word &fieldName) const
 
- Public Member Functions inherited from stateFunctionObject
 stateFunctionObject (const word &name, const Time &runTime)
 
virtual ~stateFunctionObject ()=default
 
dictionarypropertyDict ()
 
bool foundProperty (const word &entryName) const
 
void clearTrigger ()
 
label getTrigger () const
 
bool setTrigger (const label triggeri, bool increaseOnly=true)
 
bool getDict (const word &entryName, dictionary &dict) const
 
bool getObjectDict (const word &objectName, const word &entryName, dictionary &dict) const
 
template<class Type >
Type getProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 
template<class Type >
bool getProperty (const word &entryName, Type &value) const
 
template<class Type >
void setProperty (const word &entryName, const Type &value)
 
template<class Type >
Type getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const
 
template<class Type >
bool getObjectProperty (const word &objectName, const word &entryName, Type &value) const
 
template<class Type >
void setObjectProperty (const word &objectName, const word &entryName, const Type &value)
 
template<class Type >
void setResult (const word &entryName, const Type &value)
 
template<class Type >
void setObjectResult (const word &objectName, const word &entryName, const Type &value)
 
template<class Type >
Type getResult (const word &entryName, const Type &defaultValue=Type(Zero)) const
 
template<class Type >
Type getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const
 
template<class Type >
bool getObjectResult (const word &objectName, const word &entryName, Type &value) const
 
word resultType (const word &entryName) const
 
word objectResultType (const word &objectName, const word &entryName) const
 
wordList objectResultEntries () const
 
wordList objectResultEntries (const word &objectName) const
 
void writeResultEntries (Ostream &os) const
 
void writeResultEntries (const word &objectName, Ostream &os) const
 
void writeAllResultEntries (Ostream &os) const
 
- Public Member Functions inherited from timeFunctionObject
 timeFunctionObject (const word &name, const Time &runTime)
 
virtual ~timeFunctionObject ()=default
 
const Timetime () const
 
objectRegistrystoredObjects ()
 
const objectRegistrystoredObjects () 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)
 
autoPtr< functionObjectclone () const
 
virtual ~functionObject ()=default
 
virtual const wordtype () const =0
 
const wordname () const noexcept
 
bool useNamePrefix () const noexcept
 
bool useNamePrefix (bool on) noexcept
 
virtual bool execute (const label subIndex)
 
virtual bool end ()
 
virtual bool adjustTimeStep ()
 
virtual bool filesModified () const
 
- Public Member Functions inherited from volRegion
 TypeName ("volRegion")
 
 volRegion (const fvMesh &mesh, const dictionary &dict)
 
virtual ~volRegion ()=default
 
regionTypes regionType () const noexcept
 
const labelListcellIDs () const
 
label nCells () const
 
scalar V () const
 
bool update ()
 
- Public Member Functions inherited from writeFile
 writeFile (const objectRegistry &obr, const fileName &prefix, const word &name="undefined", const bool writeToFile=true)
 
 writeFile (const objectRegistry &obr, const fileName &prefix, const word &name, const dictionary &dict, const bool writeToFile=true)
 
 writeFile (const writeFile &wf)
 
virtual ~writeFile ()=default
 
virtual OFstreamfile ()
 
virtual bool writeToFile () const
 
virtual bool canWriteHeader () const
 
virtual label charWidth () const
 
virtual void writeCommented (Ostream &os, const string &str) const
 
virtual void writeTabbed (Ostream &os, const string &str) const
 
virtual void writeHeader (Ostream &os, const string &str) const
 
virtual void writeCurrentTime (Ostream &os) const
 
virtual void writeBreak (Ostream &os) const
 
template<class Type >
void writeHeaderValue (Ostream &os, const string &property, const Type &value) const
 

Protected Member Functions

void initialise ()
 
virtual void writeFileHeader (Ostream &os)
 
void writeValues (Ostream &os)
 
- Protected Member Functions inherited from fvMeshFunctionObject
 fvMeshFunctionObject (const fvMeshFunctionObject &)=delete
 
void operator= (const fvMeshFunctionObject &)=delete
 
- Protected Member Functions inherited from regionFunctionObject
virtual const objectRegistryobr () const
 
template<class ObjectType >
bool foundObject (const word &fieldName) const
 
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
 
template<class ObjectType >
ObjectType & lookupObjectRef (const word &fieldName) const
 
template<class ObjectType >
bool store (word &fieldName, const tmp< ObjectType > &tfield, bool cacheable=false)
 
template<class ObjectType >
bool storeInDb (const word &fieldName, const tmp< ObjectType > &tfield, const objectRegistry &obr)
 
bool writeObject (const word &fieldName)
 
bool clearObject (const word &fieldName)
 
void clearObjects (const wordList &objNames)
 
 regionFunctionObject (const regionFunctionObject &)=delete
 
void operator= (const regionFunctionObject &)=delete
 
- Protected Member Functions inherited from stateFunctionObject
const functionObjects::propertiesstateDict () const
 
functionObjects::propertiesstateDict ()
 
 stateFunctionObject (const stateFunctionObject &)=delete
 
void operator= (const stateFunctionObject &)=delete
 
- Protected Member Functions inherited from timeFunctionObject
void clearOutputObjects (const wordList &objNames)
 
 timeFunctionObject (const timeFunctionObject &)=delete
 
void operator= (const timeFunctionObject &)=delete
 
- Protected Member Functions inherited from functionObject
word scopedName (const word &name) const
 
- Protected Member Functions inherited from volRegion
bool useAllCells () const noexcept
 
void writeFileHeader (const writeFile &wf, Ostream &file) const
 
- Protected Member Functions inherited from writeFile
void initStream (Ostream &os) const
 
fileName baseFileDir () const
 
fileName baseTimeDir () const
 
virtual autoPtr< OFstreamcreateFile (const word &name, scalar timeValue) const
 
virtual autoPtr< OFstreamcreateFile (const word &name) const
 
virtual void resetFile (const word &name)
 
Omanip< int > valueWidth (const label offset=0) const
 
void operator= (const writeFile &)=delete
 

Protected Attributes

vector sumMomentum_
 
vector sumAngularMom_
 
word UName_
 
word pName_
 
word rhoName_
 
scalar rhoRef_
 
coordSystem::cylindrical csys_
 
bool hasCsys_
 
bool writeMomentum_
 
bool writeVelocity_
 
bool writePosition_
 
bool initialised_
 
- Protected Attributes inherited from fvMeshFunctionObject
const fvMeshmesh_
 
- Protected Attributes inherited from regionFunctionObject
word subRegistryName_
 
const objectRegistryobr_
 
const objectRegistryobrPtr_
 
- Protected Attributes inherited from timeFunctionObject
const Timetime_
 
- Protected Attributes inherited from volRegion
regionTypes regionType_
 
word regionName_
 
label regionID_
 
- Protected Attributes inherited from writeFile
const objectRegistryfileObr_
 
const fileName prefix_
 
word fileName_
 
autoPtr< OFstreamfilePtr_
 
label writePrecision_
 
bool writeToFile_
 
bool updateHeader_
 
bool writtenHeader_
 
bool useUserTime_
 
scalar startTime_
 

Additional Inherited Members

- Public Types inherited from volRegion
enum  regionTypes { vrtAll = 0, vrtCellSet, vrtCellZone }
 
- Static Public Member Functions inherited from functionObject
static autoPtr< functionObjectNew (const word &name, const Time &runTime, const dictionary &dict)
 
- Public Attributes inherited from functionObject
bool log
 
- Static Public Attributes inherited from functionObject
static int debug
 
static bool postProcess
 
static bool defaultUseNamePrefix
 
static word outputPrefix
 
- Static Public Attributes inherited from volRegion
static const Enum< regionTypesregionTypeNames_
 
- Static Public Attributes inherited from writeFile
static label addChars = 8
 

Detailed Description

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 - -
Usage
Minimal example by using 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.

Note
  • For incompressible cases, the value of rhoRef is used.
  • When specifying the cylindrical coordinate system, the rotation can be specified directly with e1/e2/e3 axes, or via a rotation sub-dictionary For example,
        origin      (0 0 0);
        rotation
        {
            type    cylindrical;
            axis    (0 0 1);
        }
    
See also
Source files

Definition at line 243 of file momentum.H.

Constructor & Destructor Documentation

◆ momentum() [1/3]

momentum ( const word name,
const Time runTime,
const dictionary dict,
const bool  readFields = true 
)

Definition at line 342 of file momentum.C.

References dict, Foam::endl(), Log, and Foam::read().

Here is the call graph for this function:

◆ momentum() [2/3]

momentum ( const word name,
const objectRegistry obr,
const dictionary dict,
const bool  readFields = true 
)

Definition at line 374 of file momentum.C.

References dict, Foam::endl(), Log, and Foam::read().

Here is the call graph for this function:

◆ momentum() [3/3]

momentum ( const momentum )
delete

◆ ~momentum()

virtual ~momentum ( )
virtualdefault

Member Function Documentation

◆ initialise()

void initialise ( )
protected

Definition at line 265 of file momentum.C.

References Foam::dimPressure, Foam::exit(), Foam::FatalError, and FatalErrorInFunction.

Here is the call graph for this function:

◆ writeFileHeader()

void writeFileHeader ( Ostream os)
protectedvirtual

Definition at line 221 of file momentum.C.

References Foam::endl(), os(), volRegion::useAllCells(), and Foam::writeHeader().

Here is the call graph for this function:

◆ writeValues()

void writeValues ( Ostream os)
protected

Definition at line 298 of file momentum.C.

References Foam::endl(), Foam::Info, Foam::name(), Foam::nl, os(), Foam::tab, Foam::type(), volRegion::useAllCells(), and volRegion::V().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "momentum"  )

◆ operator=()

void operator= ( const momentum )
delete

◆ read()

bool read ( const dictionary dict)
virtual

Reimplemented from volRegion.

Definition at line 407 of file momentum.C.

References dict, Foam::dimMass, Foam::dimVelocity, Foam::endl(), Foam::Info, Foam::name(), Foam::nl, volRegion::read(), regionFunctionObject::read(), writeFile::read(), and Foam::type().

Here is the call graph for this function:

◆ execute()

bool execute ( )
virtual

Implements functionObject.

Definition at line 477 of file momentum.C.

References Foam::endl(), Log, and UPstream::master().

Here is the call graph for this function:

◆ write()

bool write ( )
virtual

Implements functionObject.

Definition at line 503 of file momentum.C.

References Foam::dimLength, Foam::dimless, forAll, Log, Foam::nl, and p.

◆ updateMesh()

void updateMesh ( const mapPolyMesh mpm)
virtual

Reimplemented from volRegion.

Definition at line 585 of file momentum.C.

References volRegion::updateMesh().

Here is the call graph for this function:

◆ movePoints()

void movePoints ( const polyMesh pm)
virtual

Reimplemented from volRegion.

Definition at line 592 of file momentum.C.

References volRegion::movePoints().

Here is the call graph for this function:

◆ newField()

Foam::autoPtr<GeoField> newField ( const word baseName,
const dimensionSet dims,
bool  registerObject 
) const

Definition at line 54 of file momentum.C.

References autoPtr::New(), IOobject::NO_READ, IOobject::NO_WRITE, and Foam::Zero.

Here is the call graph for this function:

Member Data Documentation

◆ sumMomentum_

vector sumMomentum_
protected

Definition at line 272 of file momentum.H.

◆ sumAngularMom_

vector sumAngularMom_
protected

Definition at line 275 of file momentum.H.

◆ UName_

word UName_
protected

Definition at line 281 of file momentum.H.

◆ pName_

word pName_
protected

Definition at line 285 of file momentum.H.

◆ rhoName_

word rhoName_
protected

Definition at line 288 of file momentum.H.

◆ rhoRef_

scalar rhoRef_
protected

Definition at line 291 of file momentum.H.

◆ csys_

coordSystem::cylindrical csys_
protected

Definition at line 294 of file momentum.H.

◆ hasCsys_

bool hasCsys_
protected

Definition at line 297 of file momentum.H.

◆ writeMomentum_

bool writeMomentum_
protected

Definition at line 300 of file momentum.H.

◆ writeVelocity_

bool writeVelocity_
protected

Definition at line 303 of file momentum.H.

◆ writePosition_

bool writePosition_
protected

Definition at line 306 of file momentum.H.

◆ initialised_

bool initialised_
protected

Definition at line 309 of file momentum.H.


The documentation for this class was generated from the following files: