Loading...
Searching...
No Matches
sampledSurfaces Class Reference

Set of surfaces to sample. More...

#include <sampledSurfaces.H>

Inheritance diagram for sampledSurfaces:
Collaboration diagram for sampledSurfaces:

Public Member Functions

 TypeName ("surfaces")
 Runtime type information.
 sampledSurfaces (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary.
 sampledSurfaces (const word &name, const objectRegistry &obr, const dictionary &dict, const bool loadFromFiles=false)
 Construct for given objectRegistry and dictionary.
virtual ~sampledSurfaces ()=default
 Destructor.
bool verbose (bool on) noexcept
 Enable/disable verbose output.
const wordResfieldNames () const noexcept
 Return names of fields to sample.
virtual bool read (const dictionary &dict)
 Read the sampledSurfaces dictionary.
virtual bool execute ()
 Sample and store if the sampleOnExecute is enabled.
virtual bool write ()
 Sample and write.
virtual void updateMesh (const mapPolyMesh &mpm)
 Update for changes of mesh - expires the surfaces.
virtual void movePoints (const polyMesh &mesh)
 Update for mesh point-motion - expires the surfaces.
virtual void readUpdate (const polyMesh::readUpdateState state)
 Update for changes of mesh due to readUpdate - expires the surfaces.
Public Member Functions inherited from fvMeshFunctionObject
 TypeName ("fvMeshFunctionObject")
 Runtime type information.
 fvMeshFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary.
 fvMeshFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 Construct from the region objectRegistry and dictionary.
virtual ~fvMeshFunctionObject ()=default
 Destructor.
Public Member Functions inherited from regionFunctionObject
 TypeName ("regionFunctionObject")
 Runtime type information.
 regionFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary.
 regionFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 Construct from the region objectRegistry and dictionary.
virtual ~regionFunctionObject ()=default
 Destructor.
template<class ObjectType>
const ObjectType * lookupObjectPtr (const word &fieldName) const
 Deprecated(2018-10).
template<class ObjectType>
ObjectType * lookupObjectRefPtr (const word &fieldName) const
 Deprecated(2018-10).
Public Member Functions inherited from stateFunctionObject
 stateFunctionObject (const word &name, const Time &runTime)
 Construct from components.
virtual ~stateFunctionObject ()=default
 Destructor.
dictionarypropertyDict ()
 Return access to the property dictionary.
bool foundProperty (const word &entryName) const
 Return true if the property exists.
void clearTrigger ()
 Remove the trigger index from the properties.
label getTrigger () const
 Get the current trigger index.
bool setTrigger (const label triggeri)
 Set new trigger index.
bool getDict (const word &entryName, dictionary &dict) const
 Set dictionary, return true if set.
bool getObjectDict (const word &objectName, const word &entryName, dictionary &dict) const
 Set dictionary from named object, return true if set.
template<class Type>
Type getProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property.
template<class Type>
bool getProperty (const word &entryName, Type &value) const
 Set generic property, return true if set.
template<class Type>
void setProperty (const word &entryName, const Type &value)
 Add generic property.
template<class Type>
Type getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property from named object.
template<class Type>
bool getObjectProperty (const word &objectName, const word &entryName, Type &value) const
 Set generic property from named object, return true if set.
template<class Type>
void setObjectProperty (const word &objectName, const word &entryName, const Type &value)
 Add generic property from named object.
bool getObjectResultDict (const word &objectName, dictionary &dict) const
template<class Type>
void setResult (const word &entryName, const Type &value)
 Add result.
template<class Type>
void setObjectResult (const word &objectName, const word &entryName, const Type &value)
 Add result from named object.
template<class Type>
Type getResult (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve result.
template<class Type>
Type getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve result from named object.
template<class Type>
bool getObjectResult (const word &objectName, const word &entryName, Type &value) const
 Set result from named object, return true if set.
word resultType (const word &entryName) const
 Retrieve the result type.
word objectResultType (const word &objectName, const word &entryName) const
 Return the type of result.
wordList objectResultEntries () const
 Retrieve the result entries.
wordList objectResultEntries (const word &objectName) const
 Return result entries for named object.
void writeResultEntries (Ostream &os) const
 Write the results entries for all objects to stream.
void writeResultEntries (const word &objectName, Ostream &os) const
 Write the results entries for named object to stream.
void writeAllResultEntries (Ostream &os) const
 Write the results entries for all objects to stream.
Public Member Functions inherited from timeFunctionObject
 timeFunctionObject (const word &name, const Time &runTime)
 Construct from Time.
virtual ~timeFunctionObject ()=default
 Destructor.
const Timetime () const
 Return time database.
objectRegistrystoredObjects ()
 Write access to the output objects ("functionObjectObjects") registered on Time.
const objectRegistrystoredObjects () const
 Const access to the output objects ("functionObjectObjects") registered on Time.
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.
autoPtr< functionObjectclone () const
 Return clone.
virtual ~functionObject ()=default
 Destructor.
virtual const wordtype () const =0
 Runtime type information.
const wordname () const noexcept
 Return the name of this functionObject.
bool useNamePrefix () const noexcept
 Return the flag for adding a scoping name prefix.
bool useNamePrefix (bool on) noexcept
 Modify the flag for adding a scoping name prefix.
virtual bool execute (const label subIndex)
 Execute using the specified subIndex.
virtual bool end ()
 Called when Time::run() determines that the time-loop exits.
virtual bool adjustTimeStep ()
 Called at the end of Time::adjustDeltaT() if adjustTime is true.
virtual bool filesModified () const
 Did any file get changed during execution?
Public Member Functions inherited from PtrList< sampledSurface >
Foam::PtrList< sampledSurfaceclone (Args &&... args) const
constexpr PtrList () noexcept
 Default construct.
 ~PtrList ()
 Destructor. Frees all pointers.
const sampledSurfaceset (const label i) const
 Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking).
void clear ()
 Clear the PtrList. Delete allocated entries and set size to zero.
void free ()
 Free memory and nullify all entries. Does not change the list size.
void resize (const label newLen)
 Adjust size of PtrList.
void resize_null (const label newLen)
 Set the addressed list to the given size, deleting all existing entries. Afterwards the list contains all nullptr entries.
sampledSurfaceemplace_back (Args &&... args)
 Construct and append an element to the end of the list, return reference to the new list element.
void push_back (sampledSurface *ptr)
 Append an element to the end of the list.
sampledSurfaceemplace_set (const label i, Args &&... args)
 Construct and set a new element at given position, (discard old element at that location).
sampledSurfaceemplace (const label i, Args &&... args)
 Same as emplace_set().
sampledSurfacetry_emplace (const label i, Args &&... args)
 Like emplace_set() but will not overwrite an occupied (non-null) location.
autoPtr< sampledSurfacerelease (const label i)
 Release ownership of the pointer at the given position.
void transfer (PtrList< sampledSurface > &list)
 Transfer into this list and annul the argument list.
void operator= (const UPtrList< sampledSurface > &list)
 Copy assignment.
void setSize (const label n)
 Same as resize().
void append (autoPtr< sampledSurface > &ptr)
 Move append an element to the end of the list.
Public Member Functions inherited from UPtrList< sampledSurface >
bool empty () const noexcept
 True if the list is empty (ie, size() is zero).
label size () const noexcept
 The number of entries in the list.
label capacity () const noexcept
 Size of the underlying storage.
label count_nonnull () const noexcept
 The number of non-nullptr entries in the list.
sampledSurfacefront ()
 Reference to the first element of the list.
sampledSurfaceback ()
 Reference to the last element of the list.
const sampledSurfacetest (const label i) const
 Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking).
const sampledSurfaceget (const label i) const
 Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking).
const sampledSurfaceset (const label i) const
 Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking).
void clear ()
 Set list size to zero.
void free ()
 Nullify all entries. Does not change the list size.
void resize (const label newLen)
 Change the size of the list. Any new entries are nullptr.
void resize_null (const label newLen)
 Set the list to the given size and set all entries to nullptr.
label squeezeNull ()
 Squeeze out nullptr entries in the list of pointers after which any null pointers will be at the end of the list.
void push_back (sampledSurface *ptr)
 Append an element to the end of the list.
void swap (UPtrList< sampledSurface > &list) noexcept
 Swap content.
void transfer (UPtrList< sampledSurface > &list)
 Transfer contents into this list and annul the argument.
void reorder (const labelUList &oldToNew, const bool check=false)
 Reorder elements. Reordering must be unique (ie, shuffle).
void sortOrder (const labelUList &order, const bool check=false)
 Reorder elements according to new order mapping (newToOld). Reordering must be unique (ie, shuffle).
void checkNonNull () const
 Check and raise FatalError if any nullptr exists in the list.
const sampledSurfaceat (const label i) const
 Return const reference to the element at given position. FatalError for bounds problem or nullptr.
const sampledSurfaceoperator[] (const label i) const
 Return const reference to the element at given position. FatalError for bounds problem or nullptr. Same as at().
 FOAM_DEPRECATED_FOR (2022-09, "get(), set() or test() methods") const sampledSurface *operator()(const label i) const
 Deprecated(2022-09) - same as get().
void operator= (const UPtrList< sampledSurface > &list)
 Copy assignment (shallow copies addresses).
OstreamprintAddresses (Ostream &os) const
 Print pointer addresses to Ostream (debugging only).
OstreamwriteList (Ostream &os, const bool trimNull=false) const
 Write UPtrList to Ostream, optionally ignoring null entries.
sampledSurface ** begin_ptr () noexcept
 Iterator to begin of raw pointers traversal (use with caution).
sampledSurface ** end_ptr () noexcept
 Iterator beyond end of raw pointers traversal (use with caution).
iterator begin ()
 Return iterator to begin traversal of non-nullptr entries.
iterator end () noexcept
 Return iterator beyond end of UPtrList traversal.
const_iterator cbegin () const
 Return const_iterator to begin traversal of non-nullptr entries.
const_iterator cend () const noexcept
 Return const_iterator beyond end of UPtrList traversal.
void setSize (const label n)
 Alias for resize().
sampledSurfacefirst ()
 Reference to the first element of the list.
sampledSurfacelast ()
 Return reference to the last element of the list.
void append (sampledSurface *ptr)
 Append an element to the end of the list.
label count () const noexcept
 The number of non-nullptr entries in the list.

Static Public Member Functions

static scalar mergeTol () noexcept
 Get merge tolerance.
static scalar mergeTol (scalar tol) noexcept
 Set merge tolerance and return old value.
Static Public Member Functions inherited from functionObject
static autoPtr< functionObjectNew (const word &name, const Time &runTime, const dictionary &dict)
 Select from dictionary, based on its "type" entry.

Additional Inherited Members

Public Types inherited from UPtrList< sampledSurface >
typedef sampledSurface value_type
 Type of values the list contains.
typedef sampledSurfacereference
 A non-const reference to the value_type.
typedef const sampledSurfaceconst_reference
 A const reference to the value_type.
Public Attributes inherited from functionObject
bool log
 Flag to write log into Info.
Static Public Attributes inherited from functionObject
static int debug
 Flag to execute debug content.
static bool postProcess
 Global post-processing mode switch.
static bool defaultUseNamePrefix
 Global default for useNamePrefix.
static word outputPrefix
 Directory prefix.
Protected Member Functions inherited from fvMeshFunctionObject
 fvMeshFunctionObject (const fvMeshFunctionObject &)=delete
 No copy construct.
void operator= (const fvMeshFunctionObject &)=delete
 No copy assignment.
Protected Member Functions inherited from regionFunctionObject
virtual const objectRegistryobr () const
 The region or sub-region registry being used.
template<class ObjectType>
bool foundObject (const word &fieldName) const
 Find object (eg, a field) in the (sub) objectRegistry.
template<class ObjectType>
const ObjectType * cfindObject (const word &fieldName) const
 Return const pointer to the object (eg, a field) in the (sub) objectRegistry.
template<class ObjectType>
const ObjectType * findObject (const word &fieldName) const
 Return const pointer to the object (eg, a field) in the (sub) objectRegistry.
template<class ObjectType>
ObjectType * findObject (const word &fieldName)
 Return non-const pointer to the object of the given Type, (sub) objectRegistry.
template<class ObjectType>
ObjectType * getObjectPtr (const word &fieldName) const
 Return non-const pointer to the object of the given Type, using a const-cast to have it behave like a mutable.
template<class ObjectType>
const ObjectType & lookupObject (const word &fieldName) const
 Lookup and return object (eg, a field) from the (sub) objectRegistry.
template<class ObjectType>
ObjectType & lookupObjectRef (const word &fieldName) const
 Lookup and return object (eg, a field) from the (sub) objectRegistry.
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.
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.
bool writeObject (const word &fieldName)
 Write field if present in the (sub) objectRegistry.
bool clearObject (const word &fieldName)
 Clear field from the (sub) objectRegistry if present.
void clearObjects (const wordList &objNames)
 Clear fields from the (sub) objectRegistry if present.
 regionFunctionObject (const regionFunctionObject &)=delete
 No copy construct.
void operator= (const regionFunctionObject &)=delete
 No copy assignment.
Protected Member Functions inherited from stateFunctionObject
const functionObjects::propertiesstateDict () const
 Return a const reference to the state dictionary.
functionObjects::propertiesstateDict ()
 Return non-const access to the state dictionary.
 stateFunctionObject (const stateFunctionObject &)=delete
 No copy construct.
void operator= (const stateFunctionObject &)=delete
 No copy assignment.
Protected Member Functions inherited from timeFunctionObject
void clearOutputObjects (const wordList &objNames)
 Remove specified items from "functionObjectObjects".
 timeFunctionObject (const timeFunctionObject &)=delete
 No copy construct.
void operator= (const timeFunctionObject &)=delete
 No copy assignment.
Protected Member Functions inherited from functionObject
word scopedName (const word &name) const
 Return a scoped (prefixed) name.
Protected Member Functions inherited from PtrList< sampledSurface >
void readIstream (Istream &is, const INew &inew)
 Read from Istream using Istream constructor class.
Protected Member Functions inherited from UPtrList< sampledSurface >
void setAddressableSize (const label n) noexcept
 Adjust addressable size.
label find_next (label pos) const
 The next non-null entry after the specified position.
 UPtrList (Detail::PtrListDetail< sampledSurface > &&ptrs) noexcept
 Low-level move construct.
Protected Attributes inherited from fvMeshFunctionObject
const fvMeshmesh_
 Reference to the fvMesh.
Protected Attributes inherited from regionFunctionObject
word subRegistryName_
 Name for alternative object registry.
const objectRegistryobr_
 Reference to the region objectRegistry.
const objectRegistryobrPtr_
 Pointer to alternative (eg, sub-region) objectRegistry.
Protected Attributes inherited from timeFunctionObject
const Timetime_
 Reference to the time database.
Protected Attributes inherited from UPtrList< sampledSurface >
Detail::PtrListDetail< sampledSurfaceptrs_
 The list of pointers.

Detailed Description

Set of surfaces to sample.

The write() method is used to sample and write files.

Example of function object specification:

surfaces
{
    type    surfaces;
    libs    (sampling);

    // Write at same frequency as fields
    writeControl    writeTime;
    writeInterval   1;

    // Fields to be sampled
    fields          (p U);

    // Scheme to obtain face centre value
    sampleScheme    cell;

    // Scheme to obtain node values
    // (only used if interpolate=true for the surfaces below)
    interpolationScheme cell;

    // Optional: registry storage
    store           true

    // Output surface format
    surfaceFormat   vtk;

    formatOptions
    {
        default
        {
            verbose     true;
        }
        vtk
        {
            precision   10;
        }
    }

    surfaces
    {
        f0surf
        {
            type        meshedSurface;
            surface     f0surf.obj;
            source      cells;

            // Optional: keep original regions
            keepIds     true;

            // Optional: generate values on points instead of faces
            interpolate true;

            // Optional: alternative output type
            surfaceFormat   ensight;

            // Optional: registry storage
            store       true
        }
    }
}

Entries:

Property Description Required Default
type Type-name: surfaces yes
surfaces Dictionary or list of sample surfaces expected
fields word/regex list of fields to sample yes
sampleScheme scheme to obtain face centre value no cell
interpolationScheme scheme to obtain node values no cellPoint
surfaceFormat output surface format yes
formatOptions dictionary of format options no
sampleOnExecute Sample (store) on execution as well no false
store Store surface/fields on registry no false

Additional per-surface entries:

Property Description Required Default
store Store surface/fields on registry no
surfaceFormat output surface format no
formatOptions dictionary of format options no
Note
The interpolationScheme is only used if interpolate=true is used by any of the surfaces.
Source files

Definition at line 218 of file sampledSurfaces.H.

Constructor & Destructor Documentation

◆ sampledSurfaces() [1/2]

sampledSurfaces ( const word & name,
const Time & runTime,
const dictionary & dict )

Construct from Time and dictionary.

Definition at line 179 of file sampledSurfaces.C.

References dict, fvMeshFunctionObject::fvMeshFunctionObject(), Foam::name(), functionObject::outputPrefix, PtrList< sampledSurface >::PtrList(), read(), runTime, and timeFunctionObject::time_.

Here is the call graph for this function:

◆ sampledSurfaces() [2/2]

sampledSurfaces ( const word & name,
const objectRegistry & obr,
const dictionary & dict,
const bool loadFromFiles = false )

Construct for given objectRegistry and dictionary.

allow the possibility to load fields from files

Definition at line 202 of file sampledSurfaces.C.

References dict, fvMeshFunctionObject::fvMeshFunctionObject(), Foam::name(), regionFunctionObject::obr(), functionObject::outputPrefix, PtrList< sampledSurface >::PtrList(), read(), and timeFunctionObject::time_.

Here is the call graph for this function:

◆ ~sampledSurfaces()

virtual ~sampledSurfaces ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "surfaces" )

Runtime type information.

References dict, Foam::name(), regionFunctionObject::obr(), and runTime.

Here is the call graph for this function:

◆ verbose()

bool verbose ( bool on)
noexcept

Enable/disable verbose output.

Returns
old value

Definition at line 228 of file sampledSurfaces.C.

◆ fieldNames()

const wordRes & fieldNames ( ) const
inlinenoexcept

Return names of fields to sample.

Definition at line 486 of file sampledSurfaces.H.

References Foam::noexcept.

◆ read()

◆ execute()

bool execute ( )
virtual

Sample and store if the sampleOnExecute is enabled.

Implements functionObject.

Definition at line 582 of file sampledSurfaces.C.

◆ write()

bool write ( )
virtual

Sample and write.

Implements functionObject.

Definition at line 593 of file sampledSurfaces.C.

◆ updateMesh()

void updateMesh ( const mapPolyMesh & mpm)
virtual

Update for changes of mesh - expires the surfaces.

Reimplemented from functionObject.

Definition at line 599 of file sampledSurfaces.C.

References mapPolyMesh::mesh(), and fvMeshFunctionObject::mesh_.

Here is the call graph for this function:

◆ movePoints()

void movePoints ( const polyMesh & mesh)
virtual

Update for mesh point-motion - expires the surfaces.

Reimplemented from functionObject.

Definition at line 610 of file sampledSurfaces.C.

References mesh, and fvMeshFunctionObject::mesh_.

◆ readUpdate()

void readUpdate ( const polyMesh::readUpdateState state)
virtual

Update for changes of mesh due to readUpdate - expires the surfaces.

Definition at line 619 of file sampledSurfaces.C.

References polyMesh::UNCHANGED.

◆ mergeTol() [1/2]

Foam::scalar mergeTol ( )
staticnoexcept

Get merge tolerance.

Definition at line 699 of file sampledSurfaces.C.

References Foam::noexcept.

◆ mergeTol() [2/2]

Foam::scalar mergeTol ( scalar tol)
staticnoexcept

Set merge tolerance and return old value.

Definition at line 705 of file sampledSurfaces.C.


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