Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
limitFields Class Reference

Limits input fields to user-specified min and max bounds. More...

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

Public Types

enum  limitType : unsigned { MIN = 0x1, MAX = 0x2, BOTH = (MIN | MAX) }
 

Public Member Functions

 TypeName ("limitFields")
 
 limitFields (const word &name, const Time &runTime, const dictionary &dict)
 
 limitFields (const limitFields &)=delete
 
void operator= (const limitFields &)=delete
 
virtual ~limitFields ()=default
 
virtual bool read (const dictionary &dict)
 
virtual bool execute ()
 
virtual bool write ()
 
- 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
 
virtual void updateMesh (const mapPolyMesh &mpm)
 
virtual void movePoints (const polyMesh &mesh)
 

Protected Member Functions

bool limitScalarField (const word &fieldName)
 
template<class Type >
bool limitField (const word &fieldName)
 
- 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 Attributes

limitType limit_
 
volFieldSelection fieldSet_
 
scalar min_
 
scalar max_
 
- 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_
 

Static Protected Attributes

static const Enum< limitTypelimitTypeNames_
 

Additional Inherited Members

- 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
 

Detailed Description

Limits input fields to user-specified min and max bounds.

Operands:

Operand Type Location
input vol<Type>Field $FOAM_CASE/<time>/<inpField>
output file - -
output field vol<Type>Field $FOAM_CASE/<time>/<outField>

where <Type>=Scalar/Vector/SphericalTensor/SymmTensor/Tensor.

Note
For non-scalar types of input field, the user limit is used to create a scaling factor using the field magnitudes.
Usage
Minimal example by using system/controlDict.functions:
limitFields1
{
    // Mandatory entries (unmodifiable)
    type            limitFields;
    libs            (fieldFunctionObjects);

    // Mandatory entries (runtime modifiable)
    fields          (U);
    limit           max;
    max             100;

    // Optional (inherited) entries
    ...
}

where the entries mean:

Property Description Type Req'd Dflt
type Type name: limitFields word yes -
libs Library name: fieldFunctionObjects word yes -
fields List of fields to process wordList yes -
limit Bound to limit - see below word yes -
min Min limit value scalar conditional -
max Max limit value scalar conditional -

Options for the limit entry:

        min  : specify a minimum value
        max  : specify a maximum value
        both : specify a minimum value and a maximum value

The inherited entries are elaborated in:

Usage by the postProcess utility is not available.

See also
Source files

Definition at line 173 of file limitFields.H.

Member Enumeration Documentation

◆ limitType

enum limitType : unsigned
Enumerator
MIN 

limit by minimum value

MAX 

limit by maximum value

BOTH 

limit by both minimum and maximum values

Definition at line 181 of file limitFields.H.

Constructor & Destructor Documentation

◆ limitFields() [1/2]

limitFields ( const word name,
const Time runTime,
const dictionary dict 
)

Definition at line 82 of file limitFields.C.

References dict, and Foam::blockMeshTools::read().

Here is the call graph for this function:

◆ limitFields() [2/2]

limitFields ( const limitFields )
delete

◆ ~limitFields()

virtual ~limitFields ( )
virtualdefault

Member Function Documentation

◆ limitScalarField()

bool limitScalarField ( const word fieldName)
protected

Definition at line 51 of file limitFields.C.

References field(), Foam::gMax(), Foam::gMin(), and Log.

Here is the call graph for this function:

◆ limitField()

bool limitField ( const word fieldName)
protected

◆ TypeName()

TypeName ( "limitFields"  )

◆ operator=()

void operator= ( const limitFields )
delete

◆ read()

bool read ( const dictionary dict)
virtual

◆ execute()

bool execute ( )
virtual

Implements functionObject.

Definition at line 131 of file limitFields.C.

References Foam::BitOps::count(), Foam::expressions::patchExpr::debug, Foam::endl(), Log, Foam::name(), Foam::nl, and Foam::type().

Here is the call graph for this function:

◆ write()

bool write ( )
virtual

Implements functionObject.

Definition at line 165 of file limitFields.C.

Member Data Documentation

◆ limitTypeNames_

const Foam::Enum< Foam::functionObjects::limitFields::limitType > limitTypeNames_
staticprotected

Definition at line 194 of file limitFields.H.

Referenced by limitFields::read().

◆ limit_

limitType limit_
protected

Definition at line 197 of file limitFields.H.

Referenced by limitFields::limitField(), and limitFields::read().

◆ fieldSet_

volFieldSelection fieldSet_
protected

Definition at line 200 of file limitFields.H.

Referenced by limitFields::read().

◆ min_

scalar min_
protected

Definition at line 203 of file limitFields.H.

Referenced by limitFields::limitField(), and limitFields::read().

◆ max_

scalar max_
protected

Definition at line 206 of file limitFields.H.

Referenced by limitFields::limitField(), and limitFields::read().


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