polyMesh Class Reference

Mesh consisting of general polyhedral cells. More...

Inheritance diagram for polyMesh:
[legend]
Collaboration diagram for polyMesh:
[legend]

Public Types

enum  readUpdateState { UNCHANGED , POINTS_MOVED , TOPO_CHANGE , TOPO_PATCH_CHANGE }
 Enumeration defining the state of the mesh after a read update. More...
 
enum  cellDecomposition { FACE_PLANES , FACE_CENTRE_TRIS , FACE_DIAG_TRIS , CELL_TETS }
 Enumeration defining the decomposition of the cell for. More...
 
typedef polyMesh Mesh
 The mesh type. More...
 
typedef polyBoundaryMesh BoundaryMesh
 The boundary type associated with the mesh. More...
 
- Public Types inherited from IOobject
enum  readOption : char { NO_READ = 0 , MUST_READ = 1 , MUST_READ_IF_MODIFIED = 3 , READ_IF_PRESENT = 4 }
 Enumeration defining the read options. More...
 
enum  writeOption : char { NO_WRITE = 0 , AUTO_WRITE = 0x10 }
 Enumeration defining the write options. More...
 
enum  objectState : char { GOOD , BAD }
 Enumeration defining the valid states of an IOobject. More...
 
enum  fileCheckTypes : char { timeStamp , timeStampMaster , inotify , inotifyMaster }
 Enumeration defining the file checking options. More...
 
- Public Types inherited from HashTable< regIOobject * >
typedef HashTable< regIOobject *, word, Foam::Hash< word > > this_type
 The template instance used for this HashTable. More...
 
typedef std::conditional< std::is_same< zero::null, typenamestd::remove_cv< regIOobject * >::type >::value, Detail::HashTableSingle< word >, Detail::HashTablePair< word, regIOobject * > >::type node_type
 
typedef word key_type
 The second template parameter, type of keys used. More...
 
typedef regIOobjectmapped_type
 The first template parameter, type of objects contained. More...
 
typedef regIOobjectvalue_type
 Same as mapped_type for OpenFOAM HashTables. More...
 
typedef Foam::Hash< wordhasher
 The third template parameter, the hash index method. More...
 
typedef regIOobject * * pointer
 Pointer type for storing into value_type objects. More...
 
typedef regIOobject * & reference
 Reference to the stored value_type. More...
 
typedef const regIOobject * * const_pointer
 Const pointer type for the stored value_type. More...
 
typedef const regIOobject * & const_reference
 Const reference to the stored value_type. More...
 
typedef label difference_type
 The type to represent the difference between two iterators. More...
 
typedef label size_type
 The type that can represent the size of a HashTable. More...
 
using key_iterator = key_iterator_base< iterator >
 Forward iterator returning the key. More...
 
using const_key_iterator = key_iterator_base< const_iterator >
 Forward const iterator returning the key. More...
 

Public Member Functions

 TypeName ("polyMesh")
 Runtime type information. More...
 
 polyMesh (const IOobject &io, const bool doInit=true)
 Read construct from IOobject. More...
 
 polyMesh (const IOobject &io, const zero, const bool syncPar=true)
 Construct from IOobject or as zero-sized mesh. More...
 
 polyMesh (const IOobject &io, pointField &&points, faceList &&faces, labelList &&owner, labelList &&neighbour, const bool syncPar=true)
 Construct from IOobject and components. More...
 
 polyMesh (const IOobject &io, pointField &&points, faceList &&faces, cellList &&cells, const bool syncPar=true)
 Construct without boundary with cells rather than owner/neighbour. More...
 
 polyMesh (const IOobject &io, pointField &&points, const cellShapeList &shapes, const faceListList &boundaryFaces, const wordList &boundaryPatchNames, const wordList &boundaryPatchTypes, const word &defaultBoundaryPatchName, const word &defaultBoundaryPatchType, const wordList &boundaryPatchPhysicalTypes, const bool syncPar=true)
 Construct from cell shapes. More...
 
 polyMesh (const IOobject &io, pointField &&points, const cellShapeList &shapes, const faceListList &boundaryFaces, const wordList &boundaryPatchNames, const PtrList< dictionary > &boundaryDicts, const word &defaultBoundaryPatchName, const word &defaultBoundaryPatchType, const bool syncPar=true)
 
virtual ~polyMesh ()
 Destructor. More...
 
virtual const fileNamedbDir () const
 Override the objectRegistry dbDir for a single-region case. More...
 
fileName meshDir () const
 Return the local mesh directory (dbDir()/meshSubDir) More...
 
const fileNamepointsInstance () const
 Return the current instance directory for points. More...
 
const fileNamefacesInstance () const
 Return the current instance directory for faces. More...
 
void setInstance (const fileName &instance, const IOobject::writeOption wOpt=IOobject::AUTO_WRITE)
 Set the instance for mesh files. More...
 
const wordregionName () const
 The mesh region name or word::null if polyMesh::defaultRegion. More...
 
virtual const pointFieldpoints () const
 Return raw points. More...
 
virtual bool upToDatePoints (const regIOobject &io) const
 Return true if io is up-to-date with points. More...
 
virtual void setUpToDatePoints (regIOobject &io) const
 Set io to be up-to-date with points. More...
 
virtual const faceListfaces () const
 Return raw faces. More...
 
virtual const labelListfaceOwner () const
 Return face owner. More...
 
virtual const labelListfaceNeighbour () const
 Return face neighbour. More...
 
virtual const pointFieldoldPoints () const
 Return old points (mesh motion) More...
 
virtual const pointFieldoldCellCentres () const
 Return old cellCentres (mesh motion) More...
 
const polyBoundaryMeshboundaryMesh () const
 Return boundary mesh. More...
 
const boundBoxbounds () const
 Return mesh bounding box. More...
 
const Vector< label > & geometricD () const
 Return the vector of geometric directions in mesh. More...
 
label nGeometricD () const
 Return the number of valid geometric dimensions in the mesh. More...
 
const Vector< label > & solutionD () const
 Return the vector of solved-for directions in mesh. More...
 
label nSolutionD () const
 Return the number of valid solved-for dimensions in the mesh. More...
 
const labelIOListtetBasePtIs () const
 Return the tetBasePtIs. More...
 
const indexedOctree< treeDataCell > & cellTree () const
 Return the cell search tree. More...
 
const pointZoneMeshpointZones () const noexcept
 Return point zone mesh. More...
 
const faceZoneMeshfaceZones () const noexcept
 Return face zone mesh. More...
 
const cellZoneMeshcellZones () const noexcept
 Return cell zone mesh. More...
 
const globalMeshDataglobalData () const
 Return parallel info. More...
 
label comm () const noexcept
 Return communicator used for parallel communication. More...
 
label & comm () noexcept
 Return communicator used for parallel communication. More...
 
const objectRegistrythisDb () const noexcept
 Return the object registry. More...
 
virtual bool dynamic () const
 Is mesh dynamic. More...
 
bool moving () const noexcept
 Is mesh moving. More...
 
bool moving (const bool on) noexcept
 Set the mesh to be moving. More...
 
bool topoChanging () const noexcept
 Is mesh topology changing. More...
 
bool topoChanging (const bool on) noexcept
 Set the mesh topology to be changing. More...
 
bool changing () const noexcept
 Is mesh changing (topology changing and/or moving) More...
 
virtual void movePoints (const pointField &)
 Move points. More...
 
void resetMotion () const
 Reset motion. More...
 
pointZoneMeshpointZones () noexcept
 Return non-const access to the pointZones. More...
 
faceZoneMeshfaceZones () noexcept
 Return non-const access to the faceZones. More...
 
cellZoneMeshcellZones () noexcept
 Return non-const access to the cellZones. More...
 
void addPatches (polyPatchList &plist, const bool validBoundary=true)
 Add boundary patches. More...
 
void addPatches (const List< polyPatch * > &p, const bool validBoundary=true)
 Add boundary patches. More...
 
void addZones (const List< pointZone * > &pz, const List< faceZone * > &fz, const List< cellZone * > &cz)
 Add mesh zones. More...
 
virtual bool init (const bool doInit)
 Initialise all non-demand-driven data. More...
 
virtual readUpdateState readUpdate ()
 Update the mesh based on the mesh files saved in. More...
 
virtual void updateMesh (const mapPolyMesh &mpm)
 Update the mesh corresponding to given map. More...
 
void removeBoundary ()
 Remove boundary patches. More...
 
void resetPrimitives (autoPtr< pointField > &&points, autoPtr< faceList > &&faces, autoPtr< labelList > &&owner, autoPtr< labelList > &&neighbour, const labelUList &patchSizes, const labelUList &patchStarts, const bool validBoundary=true)
 Reset mesh primitive data. Assumes all patch info correct. More...
 
void clearGeom ()
 Clear geometry. More...
 
void updateGeomPoints (pointIOField &&newPoints, autoPtr< labelIOList > &newTetBasePtIsPtr)
 
void clearAddressing (const bool isMeshUpdate=false)
 Clear addressing. More...
 
void clearOut ()
 Clear all geometry and addressing unnecessary for CFD. More...
 
void clearPrimitives ()
 Clear primitive data (points, faces and cells) More...
 
void clearTetBasePtIs ()
 Clear tet base points. More...
 
void clearCellTree ()
 Clear cell tree data. More...
 
void removeFiles (const fileName &instanceDir) const
 Remove all files from mesh instance. More...
 
void removeFiles () const
 Remove all files from mesh instance() More...
 
bool hasTetBasePtIs () const
 
virtual bool checkFaceOrthogonality (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check non-orthogonality. More...
 
virtual bool checkFaceSkewness (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face skewness. More...
 
virtual bool checkEdgeAlignment (const bool report, const Vector< label > &directions, labelHashSet *setPtr) const
 Check edge alignment for 1D/2D cases. More...
 
virtual bool checkCellDeterminant (const bool report, labelHashSet *setPtr) const
 
virtual bool checkMeshMotion (const pointField &newPoints, const bool report=false, const bool detailedReport=false) const
 Check mesh motion for correctness given motion points. More...
 
virtual bool checkFaceWeight (const bool report, const scalar minWeight=0.05, labelHashSet *setPtr=nullptr) const
 Check for face weights. More...
 
virtual bool checkVolRatio (const bool report, const scalar minRatio=0.01, labelHashSet *setPtr=nullptr) const
 Check for neighbouring cell volumes. More...
 
void findCellFacePt (const point &p, label &celli, label &tetFacei, label &tetPti) const
 Find the cell, tetFacei and tetPti for point p. More...
 
void findTetFacePt (const label celli, const point &p, label &tetFacei, label &tetPti) const
 Find the tetFacei and tetPti for point p in celli. More...
 
bool pointInCell (const point &p, label celli, const cellDecomposition=CELL_TETS) const
 Test if point p is in the celli. More...
 
label findCell (const point &p, const cellDecomposition=CELL_TETS) const
 Find cell enclosing this location and return index. More...
 
- Public Member Functions inherited from objectRegistry
 TypeName ("objectRegistry")
 Declare type name for this IOobject. More...
 
 objectRegistry (const Time &db, const label nObjects=128)
 
 objectRegistry (const IOobject &io, const label nObjects=128)
 
virtual ~objectRegistry ()
 Destructor, with checkOut() for all objects that are ownedByRegistry. More...
 
const objectRegistrythisDb () const noexcept
 Return the object registry. More...
 
const objectRegistryparent () const noexcept
 Return the parent objectRegistry. More...
 
const Timetime () const noexcept
 Return time registry. More...
 
bool isTimeDb () const noexcept
 True if the registry is Time. More...
 
virtual const fileNamedbDir () const
 Local directory path of this objectRegistry relative to the time. More...
 
HashTable< wordHashSetclasses () const
 A summary hash of classes used and their associated object names. More...
 
template<class MatchPredicate >
HashTable< wordHashSetclasses (const MatchPredicate &matchName) const
 
UPtrList< const regIOobjectcsorted () const
 Return sorted list of objects. More...
 
UPtrList< const regIOobjectsorted () const
 Return sorted list of objects. More...
 
UPtrList< regIOobjectsorted ()
 Return sorted list of objects. More...
 
template<class Type >
UPtrList< const Type > csorted () const
 Return sorted list of objects with a class satisfying isA<Type> More...
 
template<class Type >
UPtrList< const Type > sorted () const
 Return sorted list of objects with a class satisfying isA<Type> More...
 
template<class Type >
UPtrList< Type > sorted ()
 Return sorted list of objects with a class satisfying isA<Type> More...
 
template<class Type , class MatchPredicate >
UPtrList< const Type > csorted (const MatchPredicate &matchName) const
 
template<class Type , class MatchPredicate >
UPtrList< const Type > sorted (const MatchPredicate &matchName) const
 
template<class Type , class MatchPredicate >
UPtrList< Type > sorted (const MatchPredicate &matchName)
 
label count (const char *clsName) const
 The number of objects of the given class name. More...
 
template<class MatchPredicate >
label count (const MatchPredicate &matchClass) const
 The number of objects of the given class name. More...
 
template<class MatchPredicate1 , class MatchPredicate2 >
label count (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 The number of objects of the given class name. More...
 
template<class Type >
label count (const bool strict=false) const
 The names of objects with a class satisfying isA<Type> More...
 
template<class Type , class MatchPredicate >
label count (const MatchPredicate &matchName) const
 
wordList names () const
 The unsorted names of all objects. More...
 
wordList names (const char *clsName) const
 The unsorted names of objects with the given class name. More...
 
template<class MatchPredicate >
wordList names (const MatchPredicate &matchClass) const
 The unsorted names of objects with a matching class name. More...
 
template<class MatchPredicate1 , class MatchPredicate2 >
wordList names (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 
template<class Type >
wordList names () const
 The unsorted names of objects with a class satisfying isA<Type>. More...
 
template<class Type , class MatchPredicate >
wordList names (const MatchPredicate &matchName) const
 
wordList sortedNames () const
 The sorted names of all objects. More...
 
wordList sortedNames (const char *clsName) const
 The sorted names of objects with the given class name. More...
 
template<class MatchPredicate >
wordList sortedNames (const MatchPredicate &matchClass) const
 The sorted names objects with a matching class name. More...
 
template<class MatchPredicate1 , class MatchPredicate2 >
wordList sortedNames (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 
template<class Type >
wordList sortedNames () const
 The sorted names of objects with a class satisfying isA<Type> More...
 
template<class Type , class MatchPredicate >
wordList sortedNames (const MatchPredicate &matchName) const
 
const objectRegistrysubRegistry (const word &name, const bool forceCreate=false, const bool recursive=false) const
 Lookup and return a const sub-objectRegistry. More...
 
template<class Type >
HashTable< const Type * > lookupClass (const bool strict=false) const
 Return all objects with a class satisfying isA<Type> More...
 
template<class Type >
HashTable< Type * > lookupClass (const bool strict=false)
 Return all objects with a class satisfying isA<Type> More...
 
const regIOobjectcfindIOobject (const word &name, const bool recursive=false) const
 Return const pointer to the regIOobject. More...
 
bool found (const word &name, const bool recursive=false) const
 Can the regIOobject object be found (by name). More...
 
template<class Type >
bool foundObject (const word &name, const bool recursive=false) const
 Is the named Type found? More...
 
template<class Type >
const Type * cfindObject (const word &name, const bool recursive=false) const
 Return const pointer to the object of the given Type. More...
 
template<class Type >
const Type * findObject (const word &name, const bool recursive=false) const
 Return const pointer to the object of the given Type. More...
 
template<class Type >
Type * findObject (const word &name, const bool recursive=false)
 Return non-const pointer to the object of the given Type. More...
 
template<class Type >
Type * getObjectPtr (const word &name, const bool recursive=false) const
 
template<class Type >
const Type & lookupObject (const word &name, const bool recursive=false) const
 
template<class Type >
Type & lookupObjectRef (const word &name, const bool recursive=false) const
 
label getEvent () const
 Return new event number. More...
 
bool checkIn (regIOobject *io) const
 Add a regIOobject to registry. A nullptr is ignored. More...
 
bool checkIn (regIOobject &io) const
 Add a regIOobject to registry. More...
 
bool checkOut (regIOobject *io) const
 
bool checkOut (regIOobject &io) const
 
bool checkOut (const word &key) const
 
void clear ()
 Clear all entries from the registry. More...
 
void clearStorage ()
 Clear all entries from the registry and the table itself. More...
 
bool erase (const iterator &iter)
 Erase an entry specified by the given iterator. More...
 
bool erase (const word &key)
 Erase an entry specified by the given key. More...
 
label erase (std::initializer_list< word > keys)
 Remove entries given by the listed keys. More...
 
label erase (const UList< word > &keys)
 Remove entries given by the listed keys. More...
 
virtual void rename (const word &newName)
 Rename. More...
 
virtual bool modified () const
 Return true if any of the object's files have been modified. More...
 
void readModifiedObjects ()
 Read the objects that have been modified. More...
 
virtual bool readIfModified ()
 Read object if modified. More...
 
virtual bool writeData (Ostream &) const
 writeData function required by regIOobject but not used. More...
 
virtual bool writeObject (IOstreamOption streamOpt, const bool valid) const
 Write the objects using stream options. More...
 
template<class Type >
const Type * lookupObjectPtr (const word &name, bool recursive=false) const
 Deprecated(2018-10) find object. More...
 
template<class Type >
Type * lookupObjectRefPtr (const word &name, bool recursive=false) const
 Deprecated(2018-10) get object pointer, ignoring constness. More...
 
template<class MatchPredicate >
Foam::HashTable< Foam::wordHashSetclassesImpl (const objectRegistry &list, const MatchPredicate &matchName)
 
template<class MatchPredicate1 , class MatchPredicate2 >
Foam::label countImpl (const objectRegistry &list, const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName)
 
template<class Type , class MatchPredicate >
Foam::label countTypeImpl (const objectRegistry &list, const MatchPredicate &matchName)
 
template<class MatchPredicate1 , class MatchPredicate2 >
Foam::wordList namesImpl (const objectRegistry &list, const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName, const bool doSort)
 
template<class Type , class MatchPredicate >
Foam::wordList namesTypeImpl (const objectRegistry &list, const MatchPredicate &matchName, const bool doSort)
 
template<class Type , class MatchPredicate >
Foam::UPtrList< Type > objectsTypeImpl (const objectRegistry &list, const MatchPredicate &matchName)
 
template<class MatchPredicate >
Foam::HashTable< Foam::wordHashSetclasses (const MatchPredicate &matchName) const
 
template<class MatchPredicate >
Foam::label count (const MatchPredicate &matchClass) const
 
template<class MatchPredicate1 , class MatchPredicate2 >
Foam::label count (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 
template<class Type , class MatchPredicate >
Foam::label count (const MatchPredicate &matchName) const
 
template<class Type >
Foam::label count (const bool strict) const
 
template<class Type >
Foam::UPtrList< const Type > csorted () const
 
template<class Type >
Foam::UPtrList< const Type > sorted () const
 
template<class Type >
Foam::UPtrList< Type > sorted ()
 
template<class Type , class MatchPredicate >
Foam::UPtrList< const Type > csorted (const MatchPredicate &matchName) const
 
template<class Type , class MatchPredicate >
Foam::UPtrList< const Type > sorted (const MatchPredicate &matchName) const
 
template<class Type , class MatchPredicate >
Foam::UPtrList< Type > sorted (const MatchPredicate &matchName)
 
template<class MatchPredicate >
Foam::wordList names (const MatchPredicate &matchClass) const
 
template<class MatchPredicate1 , class MatchPredicate2 >
Foam::wordList names (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 
template<class Type >
Foam::wordList names () const
 
template<class Type , class MatchPredicate >
Foam::wordList names (const MatchPredicate &matchName) const
 
template<class MatchPredicate >
Foam::wordList sortedNames (const MatchPredicate &matchClass) const
 
template<class MatchPredicate1 , class MatchPredicate2 >
Foam::wordList sortedNames (const MatchPredicate1 &matchClass, const MatchPredicate2 &matchName) const
 
template<class Type >
Foam::wordList sortedNames () const
 
template<class Type , class MatchPredicate >
Foam::wordList sortedNames (const MatchPredicate &matchName) const
 
template<class Type >
Foam::HashTable< const Type * > lookupClass (const bool strict) const
 
template<class Type >
Foam::HashTable< Type * > lookupClass (const bool strict)
 
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 Runtime type information. More...
 
 regIOobject (const IOobject &io, const bool isTimeObject=false)
 
 regIOobject (const regIOobject &rio)
 Copy construct. More...
 
 regIOobject (const regIOobject &rio, bool registerCopy)
 
 regIOobject (const word &newName, const regIOobject &, bool registerCopy)
 
 regIOobject (const IOobject &io, const regIOobject &rio)
 Copy construct with new IO parameters. More...
 
virtual ~regIOobject ()
 Destructor. More...
 
bool checkIn ()
 Add object to registry, if not already registered. More...
 
bool checkOut ()
 Remove all file watches and remove object from registry. More...
 
virtual void addWatch ()
 Add file watch on object (if registered and READ_IF_MODIFIED) More...
 
bool registered () const noexcept
 
bool ownedByRegistry () const noexcept
 Is this object owned by the registry? More...
 
bool store ()
 
void release (const bool unregister=false) noexcept
 Set object as not ownedByRegistry. More...
 
label eventNo () const noexcept
 Event number at last update. More...
 
label & eventNo () noexcept
 Event number at last update. More...
 
bool upToDate (const regIOobject &) const
 Return true if up-to-date with respect to given object. More...
 
bool upToDate (const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
void setUpToDate ()
 Set as up-to-date. More...
 
virtual void rename (const word &newName)
 Rename. More...
 
const dictionaryfindMetaData () const noexcept
 Return pointer to meta-data or nullptr. More...
 
dictionarygetMetaData () noexcept
 Get or create meta-data. More...
 
void removeMetaData ()
 Remove meta-data. More...
 
virtual void updateMetaData ()
 Update internal meta-data (eg, prior to writing) More...
 
virtual fileName filePath () const
 Return complete path + object name if the file exists. More...
 
bool headerOk ()
 Read and check header info. Does not check the headerClassName. More...
 
IstreamreadStream (const word &, const bool valid=true)
 Return Istream and check object type against that given. More...
 
void close ()
 Close Istream. More...
 
virtual bool readData (Istream &)
 Virtual readData function. More...
 
virtual bool read ()
 Read object. More...
 
virtual label addWatch (const fileName &)
 Add file watch for fileName on object if not yet watched. More...
 
const labelListwatchIndices () const noexcept
 Read access to file-monitoring handles. More...
 
labelListwatchIndices () noexcept
 Write access to file-monitoring handles. More...
 
virtual bool modified () const
 
virtual bool readIfModified ()
 Read object if modified (as set by call to modified) More...
 
virtual bool writeData (Ostream &) const =0
 Pure virtual writeData function. More...
 
virtual bool writeObject (IOstreamOption streamOpt, const bool valid) const
 Write using stream options. More...
 
virtual bool write (const bool valid=true) const
 Write using setting from DB. More...
 
virtual bool global () const
 Is object global. More...
 
void operator= (const IOobject &io)
 Copy assignment. More...
 
virtual bool writeObject (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType comp, const bool valid) const
 Write using given format, version and compression. More...
 
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 Declare type-name, virtual type (with debug switch) More...
 
 IOobject (const IOobject &)=default
 Copy construct. More...
 
virtual ~IOobject ()=default
 Destructor. More...
 
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false)
 Construct from name, instance, registry, io options. More...
 
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false)
 Construct from name, instance, local, registry, io options. More...
 
 IOobject (const fileName &path, const objectRegistry &registry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false)
 Construct from path, registry, io options. More...
 
 IOobject (const IOobject &io, const objectRegistry &registry)
 Copy construct, resetting registry. More...
 
 IOobject (const IOobject &io, const word &name)
 Copy construct, resetting name. More...
 
 IOobject (const IOobject &io, const word &name, const fileName &local)
 Copy construct, resetting name and local component. More...
 
 IOobject (const IOobject &io, readOption rOpt, writeOption wOpt)
 Copy construct, resetting read/write options. More...
 
autoPtr< IOobjectclone () const
 Clone. More...
 
autoPtr< IOobjectclone (const objectRegistry &registry) const
 Clone resetting registry. More...
 
const objectRegistrydb () const noexcept
 Return the local objectRegistry. More...
 
const Timetime () const
 Return Time associated with the objectRegistry. More...
 
const wordname () const noexcept
 Return the object name. More...
 
const wordheaderClassName () const noexcept
 Return name of the class name read from header. More...
 
wordheaderClassName () noexcept
 Return non-constant access to the class name read from header. More...
 
const stringnote () const noexcept
 Return the optional note. More...
 
stringnote () noexcept
 Modifiable access to the optional note. More...
 
virtual void rename (const word &newName)
 Rename the object. More...
 
bool registerObject () const noexcept
 Should object created with this IOobject be registered? More...
 
bool registerObject (bool on) noexcept
 Change registration preference, return previous value. More...
 
bool globalObject () const noexcept
 Is object same for all processors? More...
 
bool globalObject (bool on) noexcept
 Change global-object status, return previous value. More...
 
unsigned labelByteSize () const noexcept
 The sizeof (label) in bytes, possibly read from the header. More...
 
unsigned scalarByteSize () const noexcept
 The sizeof (scalar) in bytes, possibly read from the header. More...
 
bool hasHeaderClass () const noexcept
 True if headerClassName() is non-empty (after reading) More...
 
template<class Type >
bool isHeaderClass () const
 Check if headerClassName() equals Type::typeName. More...
 
template<class Type >
bool isHeaderClassName () const
 Same as isHeaderClass() More...
 
virtual const dictionaryfindMetaData () const noexcept
 Return pointer to meta-data (if any) or nullptr. More...
 
readOption readOpt () const noexcept
 The read option. More...
 
readOption readOpt (readOption opt) noexcept
 Change the read option, return previous value. More...
 
writeOption writeOpt () const noexcept
 The write option. More...
 
writeOption writeOpt (writeOption opt) noexcept
 Change the write option, return previous value. More...
 
word group () const
 Return group (extension part of name) More...
 
word member () const
 Return member (name without the extension) More...
 
const fileNamerootPath () const
 Return the Time::rootPath() More...
 
const fileNamecaseName () const
 Return the Time::caseName() More...
 
const fileNameinstance () const noexcept
 Read access to instance path component. More...
 
fileNameinstance () noexcept
 Write access to instance path component. More...
 
const fileNamelocal () const noexcept
 Read access to local path component. More...
 
fileName path () const
 The complete path. More...
 
fileName path (const word &instance, const fileName &local=fileName::null) const
 The complete path with alternative instance and local. More...
 
fileName objectPath () const
 The complete path + object name. More...
 
fileName objectRelPath () const
 The object path relative to the root. More...
 
fileName localFilePath (const word &typeName, const bool search=true) const
 Helper for filePath that searches locally. More...
 
fileName globalFilePath (const word &typeName, const bool search=true) const
 Helper for filePath that searches up if in parallel. More...
 
IOstreamOption parseHeader (const dictionary &headerDict)
 
bool readHeader (Istream &is)
 
bool readHeader (dictionary &headerDict, Istream &is)
 
template<class Type >
bool typeHeaderOk (const bool checkType=true, const bool search=true, const bool verbose=true)
 Read header (uses typeFilePath to find file) and check its info. More...
 
template<class Type >
void warnNoRereading () const
 Helper: warn that type does not support re-reading. More...
 
bool writeHeader (Ostream &os) const
 Write header with current type() More...
 
bool writeHeader (Ostream &os, const word &objectType) const
 Write header with override of type. More...
 
void writeHeader (dictionary &dict, IOstreamOption streamOpt) const
 
void writeHeader (dictionary &dict, const word &objectType, IOstreamOption streamOpt) const
 
bool good () const noexcept
 Did last readHeader() succeed? More...
 
bool bad () const noexcept
 Did last readHeader() fail? More...
 
InfoProxy< IOobjectinfo () const
 Return info proxy, for printing information to a stream. More...
 
void operator= (const IOobject &io)
 Copy assignment, copies all values (except the registry) More...
 
readOptionreadOpt () noexcept
 Access to the read option. More...
 
writeOptionwriteOpt () noexcept
 Access to the write option. More...
 
boolregisterObject () noexcept
 Access to the register object option. More...
 
boolglobalObject () noexcept
 Access to the global object option. More...
 
template<>
bool isHeaderClass () const
 Specialization for void always returns true (no headerClassName check). More...
 
template<class StringType >
Foam::word groupName (StringType base, const word &group)
 
- Public Member Functions inherited from HashTable< regIOobject * >
 HashTable ()
 Default construct with default (128) table capacity. More...
 
 HashTable (const label size)
 Construct given initial table capacity. More...
 
 HashTable (Istream &is, const label size=128)
 Construct from Istream with default table capacity. More...
 
 HashTable (const this_type &ht)
 Copy construct. More...
 
 HashTable (this_type &&rhs)
 Move construct. More...
 
 HashTable (std::initializer_list< std::pair< word, regIOobject * > > list)
 Construct from an initializer list. More...
 
 ~HashTable ()
 Destructor. More...
 
label capacity () const noexcept
 The size of the underlying table. More...
 
label size () const noexcept
 The number of elements in table. More...
 
bool empty () const noexcept
 True if the hash table is empty. More...
 
regIOobject * & at (const word &key)
 Find and return a hashed entry. FatalError if it does not exist. More...
 
const regIOobject * & at (const word &key) const
 Find and return a hashed entry. FatalError if it does not exist. More...
 
bool found (const word &key) const
 Return true if hashed entry is found in table. More...
 
iterator find (const word &key)
 Find and return an iterator set at the hashed entry. More...
 
const_iterator find (const word &key) const
 Find and return an const_iterator set at the hashed entry. More...
 
const_iterator cfind (const word &key) const
 Find and return an const_iterator set at the hashed entry. More...
 
const regIOobject * & lookup (const word &key, const regIOobject * &deflt) const
 Return hashed entry if it exists, or return the given default. More...
 
List< wordtoc () const
 The table of contents (the keys) in unsorted order. More...
 
List< wordsortedToc () const
 The table of contents (the keys) in sorted order. More...
 
List< wordsortedToc (const Compare &comp) const
 
Foam::List< wordsortedToc (const Compare &comp) const
 
List< wordtocKeys (const UnaryPredicate &pred, const bool invert=false) const
 
Foam::List< wordtocKeys (const UnaryPredicate &pred, const bool invert) const
 
List< wordtocValues (const UnaryPredicate &pred, const bool invert=false) const
 
Foam::List< wordtocValues (const UnaryPredicate &pred, const bool invert) const
 
List< wordtocEntries (const BinaryPredicate &pred, const bool invert=false) const
 
Foam::List< wordtocEntries (const BinaryPredicate &pred, const bool invert) const
 
UPtrList< const node_typecsorted () const
 
UPtrList< const node_typesorted () const
 
UPtrList< node_typesorted ()
 
label countKeys (const UnaryPredicate &pred, const bool invert=false) const
 Count the number of keys that satisfy the unary predicate. More...
 
Foam::label countKeys (const UnaryPredicate &pred, const bool invert) const
 
label countValues (const UnaryPredicate &pred, const bool invert=false) const
 Count the number of values that satisfy the unary predicate. More...
 
Foam::label countValues (const UnaryPredicate &pred, const bool invert) const
 
label countEntries (const BinaryPredicate &pred, const bool invert=false) const
 Count the number of entries that satisfy the binary predicate. More...
 
Foam::label countEntries (const BinaryPredicate &pred, const bool invert) const
 
bool emplace (const word &key, Args &&... args)
 Emplace insert a new entry, not overwriting existing entries. More...
 
bool emplace_set (const word &key, Args &&... args)
 Emplace set an entry, overwriting any existing entries. More...
 
bool insert (const word &key, const regIOobject * &obj)
 Copy insert a new entry, not overwriting existing entries. More...
 
bool insert (const word &key, regIOobject * &&obj)
 Move insert a new entry, not overwriting existing entries. More...
 
bool set (const word &key, const regIOobject * &obj)
 Copy assign a new entry, overwriting existing entries. More...
 
bool set (const word &key, regIOobject * &&obj)
 Move assign a new entry, overwriting existing entries. More...
 
bool erase (const iterator &iter)
 Erase an entry specified by given iterator. More...
 
bool erase (const word &key)
 Erase an entry specified by the given key. More...
 
label erase (const HashTable< AnyType, word, AnyHash > &other)
 Remove table entries given by keys of the other hash-table. More...
 
label erase (std::initializer_list< word > keys)
 Remove table entries given by the listed keys. More...
 
label erase (InputIter first, InputIter last)
 Remove multiple entries using an iterator range of keys. More...
 
label erase (const FixedList< word, N > &keys)
 Remove table entries given by the listed keys. More...
 
label erase (const UList< word > &keys)
 Remove table entries given by the listed keys. More...
 
Foam::label erase (InputIter first, InputIter last)
 
Foam::label erase (const FixedList< word, N > &keys)
 
Foam::label erase (const HashTable< AnyType, word, AnyHash > &other)
 
label retain (const HashTable< AnyType, word, AnyHash > &other)
 Retain table entries given by keys of the other hash-table. More...
 
Foam::label retain (const HashTable< AnyType, word, AnyHash > &other)
 
label filterKeys (const UnaryPredicate &pred, const bool pruning=false)
 Generalized means to filter table entries based on their keys. More...
 
Foam::label filterKeys (const UnaryPredicate &pred, const bool pruning)
 
label filterValues (const UnaryPredicate &pred, const bool pruning=false)
 Generalized means to filter table entries based on their values. More...
 
Foam::label filterValues (const UnaryPredicate &pred, const bool pruning)
 
label filterEntries (const BinaryPredicate &pred, const bool pruning=false)
 Generalized means to filter table entries based on their key/value. More...
 
Foam::label filterEntries (const BinaryPredicate &pred, const bool pruning)
 
void resize (const label sz)
 Resize the hash table for efficiency. More...
 
void clear ()
 Clear all entries from table. More...
 
void clearStorage ()
 Clear the table entries and the table itself. More...
 
void swap (HashTable< regIOobject *, word, Foam::Hash< word > > &rhs)
 Swap contents into this table. More...
 
void transfer (HashTable< regIOobject *, word, Foam::Hash< word > > &rhs)
 Transfer contents into this table. More...
 
regIOobject * & operator[] (const word &key)
 Find and return a hashed entry. FatalError if it does not exist. More...
 
const regIOobject * & operator[] (const word &key) const
 Find and return a hashed entry. FatalError if it does not exist. More...
 
regIOobject * & operator() (const word &key)
 Return existing entry or create a new entry. More...
 
regIOobject * & operator() (const word &key, const regIOobject * &deflt)
 Return existing entry or insert a new entry. More...
 
void operator= (const this_type &rhs)
 Copy assign. More...
 
void operator= (std::initializer_list< std::pair< word, regIOobject * > > rhs)
 Copy assign from an initializer list. More...
 
void operator= (this_type &&rhs)
 Move assign. More...
 
bool operator== (const this_type &rhs) const
 
bool operator!= (const this_type &rhs) const
 The opposite of the equality operation. More...
 
this_typeoperator+= (const this_type &rhs)
 Add entries into this HashTable. More...
 
const_iterator_pair< const_key_iterator, this_typekeys () const
 A const iterator begin/end pair for iterating over keys. More...
 
iterator begin ()
 iterator set to the beginning of the HashTable More...
 
const_iterator begin () const
 const_iterator set to the beginning of the HashTable More...
 
const_iterator cbegin () const
 const_iterator set to the beginning of the HashTable More...
 
iterator end () noexcept
 iterator to signal the end (for any HashTable) More...
 
const_iterator end () const noexcept
 const_iterator to signal the end (for any HashTable) More...
 
constexpr const_iterator cend () const noexcept
 const_iterator to signal the end (for any HashTable) More...
 
OstreamprintInfo (Ostream &os) const
 Print information. More...
 
OstreamwriteKeys (Ostream &os, const label shortLen=0) const
 
- Public Member Functions inherited from HashTableCore
 ClassName ("HashTable")
 Declare type-name (with debug switch) More...
 
 HashTableCore ()=default
 Default construct. More...
 
- Public Member Functions inherited from primitiveMesh
 ClassName ("primitiveMesh")
 
 primitiveMesh (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Construct from components. More...
 
virtual ~primitiveMesh ()
 Destructor. More...
 
void reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
 Reset this primitiveMesh given the primitive array sizes. More...
 
void reset (const label nPoints, const label nInternalFaces, const label nFaces, const label nCells, cellList &cells)
 Reset this primitiveMesh given the primitive array sizes and cells. More...
 
void resetGeometry (pointField &&faceCentres, pointField &&faceAreas, pointField &&cellCentres, scalarField &&cellVolumes)
 Reset the local geometry. More...
 
virtual bool init (const bool doInit)
 Initialise all non-demand-driven data. More...
 
label nPoints () const noexcept
 Number of mesh points. More...
 
label nEdges () const
 Number of mesh edges. More...
 
label nFaces () const noexcept
 Number of mesh faces. More...
 
label nCells () const noexcept
 Number of mesh cells. More...
 
label nInternalFaces () const noexcept
 Number of internal faces. More...
 
label nBoundaryFaces () const noexcept
 Number of boundary faces (== nFaces - nInternalFaces) More...
 
label nInternalPoints () const noexcept
 Points not on boundary. More...
 
label nInternal0Edges () const
 
label nInternal1Edges () const
 Internal edges using 0 or 1 boundary point. More...
 
label nInternalEdges () const
 Internal edges using 0,1 or 2 boundary points. More...
 
virtual const pointFieldpoints () const =0
 Return mesh points. More...
 
virtual const faceListfaces () const =0
 Return faces. More...
 
virtual const labelListfaceOwner () const =0
 Face face-owner addressing. More...
 
virtual const labelListfaceNeighbour () const =0
 Face face-neighbour addressing. More...
 
virtual const pointFieldoldPoints () const =0
 Return old points for mesh motion. More...
 
const cellShapeListcellShapes () const
 Return cell shapes. More...
 
const edgeListedges () const
 Return mesh edges. Uses calcEdges. More...
 
const labelListListcellCells () const
 
const labelListListedgeCells () const
 
const labelListListpointCells () const
 
const cellListcells () const
 
const labelListListedgeFaces () const
 
const labelListListpointFaces () const
 
const labelListListcellEdges () const
 
const labelListListfaceEdges () const
 
const labelListListpointEdges () const
 
const labelListListpointPoints () const
 
const labelListListcellPoints () const
 
const vectorFieldcellCentres () const
 
const vectorFieldfaceCentres () const
 
const scalarFieldcellVolumes () const
 
const vectorFieldfaceAreas () const
 
void movePoints (const pointField &p, const pointField &oldP)
 Move points. More...
 
bool isInternalFace (const label faceIndex) const noexcept
 Return true if given face label is internal to the mesh. More...
 
virtual bool checkUpperTriangular (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face ordering. More...
 
virtual bool checkCellsZipUp (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check cell zip-up. More...
 
virtual bool checkFaceVertices (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check uniqueness of face vertices. More...
 
virtual bool checkPoints (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for unused points. More...
 
virtual bool checkFaceFaces (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face-face connectivity. More...
 
virtual bool checkClosedBoundary (const bool report=false) const
 Check boundary for closedness. More...
 
virtual bool checkClosedCells (const bool report=false, labelHashSet *setPtr=nullptr, labelHashSet *highAspectSetPtr=nullptr, const Vector< label > &solutionD=Vector< label >::one) const
 Check cells for closedness. More...
 
virtual bool checkFaceAreas (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for negative face areas. More...
 
virtual bool checkCellVolumes (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for negative cell volumes. More...
 
virtual bool checkFaceOrthogonality (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for non-orthogonality. More...
 
virtual bool checkFacePyramids (const bool report=false, const scalar minPyrVol=-SMALL, labelHashSet *setPtr=nullptr) const
 Check face pyramid volume. More...
 
virtual bool checkFaceSkewness (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check face skewness. More...
 
virtual bool checkFaceAngles (const bool report=false, const scalar maxSin=10, labelHashSet *setPtr=nullptr) const
 Check face angles. More...
 
virtual bool checkFaceFlatness (const bool report, const scalar warnFlatness, labelHashSet *setPtr) const
 Check face warpage: decompose face and check ratio between. More...
 
virtual bool checkPointNearness (const bool report, const scalar reportDistSqr, labelHashSet *setPtr=nullptr) const
 Check for point-point-nearness,. More...
 
virtual bool checkEdgeLength (const bool report, const scalar minLenSqr, labelHashSet *setPtr=nullptr) const
 Check edge length. More...
 
virtual bool checkConcaveCells (const bool report=false, labelHashSet *setPtr=nullptr) const
 Check for concave cells by the planes of faces. More...
 
virtual bool checkTopology (const bool report=false) const
 Check mesh topology for correctness. More...
 
virtual bool checkGeometry (const bool report=false) const
 Check mesh geometry (& implicitly topology) for correctness. More...
 
virtual bool checkMesh (const bool report=false) const
 Check mesh for correctness. Returns false for no error. More...
 
bool pointInCellBB (const point &p, label celli, scalar inflationFraction=0) const
 Return true if the point in the cell bounding box. More...
 
bool pointInCell (const point &p, label celli) const
 Return true if the point is in the cell. More...
 
label findNearestCell (const point &location) const
 Find the cell with the nearest cell centre to location. More...
 
label findCell (const point &location) const
 Find cell enclosing this location (-1 if not in mesh) More...
 
void printAllocated () const
 Print a list of all the currently allocated mesh data. More...
 
bool hasCellShapes () const noexcept
 
bool hasEdges () const noexcept
 
bool hasCellCells () const noexcept
 
bool hasEdgeCells () const noexcept
 
bool hasPointCells () const noexcept
 
bool hasCells () const noexcept
 
bool hasEdgeFaces () const noexcept
 
bool hasPointFaces () const noexcept
 
bool hasCellEdges () const noexcept
 
bool hasFaceEdges () const noexcept
 
bool hasPointEdges () const noexcept
 
bool hasPointPoints () const noexcept
 
bool hasCellPoints () const noexcept
 
bool hasCellCentres () const noexcept
 
bool hasCellVolumes () const noexcept
 
bool hasFaceCentres () const noexcept
 
bool hasFaceAreas () const noexcept
 
const labelListcellCells (const label celli, DynamicList< label > &) const
 cellCells using cells. More...
 
const labelListcellCells (const label celli) const
 
const labelListcellPoints (const label celli, labelHashSet &, DynamicList< label > &) const
 cellPoints using cells More...
 
const labelListcellPoints (const label celli) const
 
const labelListpointCells (const label pointi, DynamicList< label > &) const
 pointCells using pointFaces More...
 
const labelListpointCells (const label pointi) const
 
const labelListpointPoints (const label pointi, DynamicList< label > &) const
 pointPoints using edges, pointEdges More...
 
const labelListpointPoints (const label pointi) const
 
const labelListfaceEdges (const label facei, DynamicList< label > &) const
 faceEdges using pointFaces, edges, pointEdges More...
 
const labelListfaceEdges (const label facei) const
 
const labelListedgeFaces (const label edgeI, DynamicList< label > &) const
 edgeFaces using pointFaces, edges, pointEdges More...
 
const labelListedgeFaces (const label edgeI) const
 
const labelListedgeCells (const label edgeI, DynamicList< label > &) const
 edgeCells using pointFaces, edges, pointEdges More...
 
const labelListedgeCells (const label edgeI) const
 
const labelListcellEdges (const label celli, labelHashSet &, DynamicList< label > &) const
 cellEdges using cells, pointFaces, edges, pointEdges More...
 
const labelListcellEdges (const label celli) const
 
virtual void updateGeom ()
 Update all geometric data. More...
 
void clearGeom ()
 Clear geometry. More...
 
void clearCellGeom ()
 Clear cell-based geometry only. More...
 
void clearAddressing ()
 Clear topological data. More...
 
void clearOut ()
 Clear all geometry and addressing unnecessary for CFD. More...
 

Static Public Member Functions

static const wordregionName (const word &region)
 The mesh region name or word::null if polyMesh::defaultRegion. More...
 
- Static Public Member Functions inherited from regIOobject
template<class Type >
static Type & store (Type *p)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (autoPtr< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (autoPtr< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (refPtr< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (refPtr< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (tmp< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (tmp< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
- Static Public Member Functions inherited from IOobject
static bool bannerEnabled () noexcept
 Status of output file banner. More...
 
static bool bannerEnabled (bool on) noexcept
 Enable/disable output file banner. More...
 
static bool fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name)
 Split path into instance, local, name components. More...
 
template<class StringType >
static word groupName (StringType base, const word &group)
 Create dot-delimited name.group string. More...
 
static word group (const word &name)
 Return group (extension part of name) More...
 
static word member (const word &name)
 Return member (name without the extension) More...
 
static word scopedName (const std::string &scope, const word &name)
 Create scope:name or scope_name string. More...
 
static IOobject selectIO (const IOobject &io, const fileName &altFile, const word &ioName="")
 Return the IOobject, but also consider an alternative file name. More...
 
static OstreamwriteBanner (Ostream &os, const bool noSyntaxHint=false)
 Write the standard OpenFOAM file/dictionary banner. More...
 
static OstreamwriteDivider (Ostream &os)
 Write the standard file section divider. More...
 
static OstreamwriteEndDivider (Ostream &os)
 Write the standard end file divider. More...
 
- Static Public Member Functions inherited from HashTableCore
static label canonicalSize (const label requested_size)
 Return a canonical (power-of-two) of the requested size. More...
 
- Static Public Member Functions inherited from primitiveMesh
static void calcCells (cellList &, const labelUList &own, const labelUList &nei, const label nCells=-1)
 Helper function to calculate cell-face addressing from. More...
 
static bool calcPointOrder (label &nInternalPoints, labelList &pointMap, const faceList &, const label nInternalFaces, const label nPoints)
 Helper function to calculate point ordering. Returns true. More...
 
static scalar setClosedThreshold (const scalar)
 Set the closedness ratio warning threshold. More...
 
static scalar setAspectThreshold (const scalar)
 Set the aspect ratio warning threshold. More...
 
static scalar setNonOrthThreshold (const scalar)
 Set the non-orthogonality warning threshold in degrees. More...
 
static scalar setSkewThreshold (const scalar)
 Set the skewness warning threshold as percentage. More...
 

Static Public Attributes

static word defaultRegion = "region0"
 Return the default region name. More...
 
static word meshSubDir = "polyMesh"
 Return the mesh sub-directory name (usually "polyMesh") More...
 
- Static Public Attributes inherited from IOobject
static const Enum< fileCheckTypesfileCheckTypesNames
 Names for the fileCheckTypes. More...
 
static char scopeSeparator
 Character for scoping object names (':' or '_') More...
 
static fileCheckTypes fileModificationChecking
 Type of file modification checking. More...
 
static float fileModificationSkew
 Time skew (seconds) for file modification checks. More...
 
static int maxFileModificationPolls
 Max number of times to poll for file modification changes. More...
 
- Static Public Attributes inherited from HashTableCore
static const label maxTableSize
 Maximum allowable internal table size. Approximately labelMax/4. More...
 
- Static Public Attributes inherited from primitiveMesh
static const unsigned cellsPerEdge_ = 4
 Estimated number of cells per edge. More...
 
static const unsigned cellsPerPoint_ = 8
 Estimated number of cells per point. More...
 
static const unsigned facesPerCell_ = 6
 Estimated number of faces per cell. More...
 
static const unsigned facesPerEdge_ = 4
 Estimated number of faces per edge. More...
 
static const unsigned facesPerPoint_ = 12
 Estimated number of faces per point. More...
 
static const unsigned edgesPerCell_ = 12
 Estimated number of edges per cell. More...
 
static const unsigned edgesPerFace_ = 4
 Estimated number of edges per cell. More...
 
static const unsigned edgesPerPoint_ = 6
 Estimated number of edges per point. More...
 
static const unsigned pointsPerCell_ = 8
 Estimated number of points per cell. More...
 
static const unsigned pointsPerFace_ = 4
 Estimated number of points per face. More...
 

Additional Inherited Members

- Protected Member Functions inherited from regIOobject
bool readHeaderOk (const IOstreamOption::streamFormat fmt, const word &typeName)
 Helper: check readOpt flags and read if necessary. More...
 
- Protected Member Functions inherited from IOobject
void setBad (const string &s)
 Set the object state to bad. More...
 
- Protected Member Functions inherited from HashTable< regIOobject * >
bool iterator_erase (node_type *&entry, label &index)
 Low-level entry erasure using iterator internals. More...
 
- Protected Member Functions inherited from primitiveMesh
void calcFaceCentresAndAreas () const
 Calculate face centres and areas. More...
 
void calcCellCentresAndVols () const
 Calculate cell centres and volumes. More...
 
void calcEdgeVectors () const
 Calculate edge vectors. More...
 
bool checkDuplicateFaces (const label, const Map< label > &, label &nBaffleFaces, labelHashSet *) const
 Check if all points on face are shared with another face. More...
 
bool checkCommonOrder (const label, const Map< label > &, labelHashSet *) const
 Check that shared points are in consecutive order. More...
 
bool checkClosedBoundary (const vectorField &areas, const bool report, const bitSet &internalOrCoupledFaces) const
 Check boundary for closedness. More...
 
bool checkClosedCells (const vectorField &faceAreas, const scalarField &cellVolumes, const bool report, labelHashSet *setPtr, labelHashSet *aspectSetPtr, const Vector< label > &meshD) const
 Check cells for closedness. More...
 
bool checkFaceAreas (const vectorField &faceAreas, const bool report, const bool detailedReport, labelHashSet *setPtr) const
 Check for negative face areas. More...
 
bool checkCellVolumes (const scalarField &vols, const bool report, const bool detailedReport, labelHashSet *setPtr) const
 Check for negative cell volumes. More...
 
bool checkFaceOrthogonality (const vectorField &fAreas, const vectorField &cellCtrs, const bool report, labelHashSet *setPtr) const
 Check for non-orthogonality. More...
 
bool checkFacePyramids (const pointField &points, const vectorField &ctrs, const bool report, const bool detailedReport, const scalar minPyrVol, labelHashSet *setPtr) const
 Check face pyramid volume. More...
 
bool checkFaceSkewness (const pointField &points, const vectorField &fCtrs, const vectorField &fAreas, const vectorField &cellCtrs, const bool report, labelHashSet *setPtr) const
 Check face skewness. More...
 
bool checkFaceAngles (const pointField &points, const vectorField &faceAreas, const bool report, const scalar maxDeg, labelHashSet *setPtr) const
 Check face angles. More...
 
bool checkFaceFlatness (const pointField &points, const vectorField &faceCentres, const vectorField &faceAreas, const bool report, const scalar warnFlatness, labelHashSet *setPtr) const
 Check face warpage. More...
 
bool checkConcaveCells (const vectorField &fAreas, const pointField &fCentres, const bool report, labelHashSet *setPtr) const
 Check for concave cells by the planes of faces. More...
 
 primitiveMesh ()
 Construct null. More...
 
- Static Protected Member Functions inherited from IOobject
static void writeHeaderContent (Ostream &os, const IOobject &io, const word &objectType, const dictionary *metaDataDict=nullptr)
 
static void writeHeaderContent (dictionary &dict, const IOobject &io, const word &objectType, IOstreamOption streamOpt, const dictionary *metaDataDict=nullptr)
 
- Static Protected Attributes inherited from regIOobject
static bool masterOnlyReading = false
 To flag master-only reading of objects. More...
 
- Static Protected Attributes inherited from primitiveMesh
static scalar closedThreshold_ = 1.0e-6
 Static data to control mesh checking. More...
 
static scalar aspectThreshold_ = 1000
 Aspect ratio warning threshold. More...
 
static scalar nonOrthThreshold_ = 70
 Non-orthogonality warning threshold in deg. More...
 
static scalar skewThreshold_ = 4
 Skewness warning threshold. More...
 
static scalar planarCosAngle_ = 1.0e-6
 Threshold where faces are considered coplanar. More...
 

Detailed Description

Mesh consisting of general polyhedral cells.

Source files

Definition at line 77 of file polyMesh.H.

Member Typedef Documentation

◆ Mesh

typedef polyMesh Mesh

The mesh type.

Definition at line 311 of file polyMesh.H.

◆ BoundaryMesh

The boundary type associated with the mesh.

Definition at line 314 of file polyMesh.H.

Member Enumeration Documentation

◆ readUpdateState

Enumeration defining the state of the mesh after a read update.

Used for post-processing applications, where the mesh needs to update based on the files written in time directories

Enumerator
UNCHANGED 
POINTS_MOVED 
TOPO_CHANGE 
TOPO_PATCH_CHANGE 

Definition at line 90 of file polyMesh.H.

◆ cellDecomposition

Enumeration defining the decomposition of the cell for.

inside/outside test

Enumerator
FACE_PLANES 
FACE_CENTRE_TRIS 
FACE_DIAG_TRIS 
CELL_TETS 

Definition at line 100 of file polyMesh.H.

Constructor & Destructor Documentation

◆ polyMesh() [1/6]

polyMesh ( const IOobject io,
const bool  doInit = true 
)
explicit

Read construct from IOobject.

Definition at line 173 of file polyMesh.C.

References UPtrList< T >::empty(), Foam::endl(), IOobject::hasHeaderClass(), lduScheduleEntry::init, polyMesh::meshDir(), polyMesh::meshSubDir, IOobject::MUST_READ, primitiveMesh::nCells(), IOobject::NO_WRITE, primitiveMesh::nPoints(), Foam::returnReduce(), objectRegistry::time(), WarningInFunction, and regIOobject::write().

Here is the call graph for this function:

◆ polyMesh() [2/6]

polyMesh ( const IOobject io,
const  zero,
const bool  syncPar = true 
)

Construct from IOobject or as zero-sized mesh.

Boundary is added using addPatches() member function

Definition at line 711 of file polyMesh.C.

◆ polyMesh() [3/6]

polyMesh ( const IOobject io,
pointField &&  points,
faceList &&  faces,
labelList &&  owner,
labelList &&  neighbour,
const bool  syncPar = true 
)

Construct from IOobject and components.

Boundary is added using addPatches() member function

Definition at line 387 of file polyMesh.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::max(), Foam::min(), and UList< T >::size().

Here is the call graph for this function:

◆ polyMesh() [4/6]

polyMesh ( const IOobject io,
pointField &&  points,
faceList &&  faces,
cellList &&  cells,
const bool  syncPar = true 
)

Construct without boundary with cells rather than owner/neighbour.

Boundary is added using addPatches() member function

Definition at line 541 of file polyMesh.C.

References Foam::abort(), primitiveMesh::cells(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::max(), Foam::min(), and UList< T >::size().

Here is the call graph for this function:

◆ polyMesh() [5/6]

polyMesh ( const IOobject io,
pointField &&  points,
const cellShapeList shapes,
const faceListList boundaryFaces,
const wordList boundaryPatchNames,
const wordList boundaryPatchTypes,
const word defaultBoundaryPatchName,
const word defaultBoundaryPatchType,
const wordList boundaryPatchPhysicalTypes,
const bool  syncPar = true 
)

Construct from cell shapes.

Definition at line 445 of file polyMeshFromShapeMesh.C.

References primitiveMesh::cells(), primitiveMesh::checkMesh(), DebugInfo, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, UList< T >::find(), forAll, Foam::Info, IOobject::name(), Time::New(), primitiveMesh::nFaces(), Foam::reduce(), PtrList< T >::set(), PtrList< T >::setSize(), UPtrList< T >::size(), UList< T >::size(), polyBoundaryMesh::updateMesh(), and WarningInFunction.

Here is the call graph for this function:

◆ polyMesh() [6/6]

polyMesh ( const IOobject io,
pointField &&  points,
const cellShapeList shapes,
const faceListList boundaryFaces,
const wordList boundaryPatchNames,
const PtrList< dictionary > &  boundaryDicts,
const word defaultBoundaryPatchName,
const word defaultBoundaryPatchType,
const bool  syncPar = true 
)

Construct from cell shapes, with patch information in dictionary format.

Definition at line 728 of file polyMeshFromShapeMesh.C.

References boundaryDicts(), primitiveMesh::cells(), primitiveMesh::checkMesh(), DebugInfo, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, UList< T >::find(), forAll, Foam::Info, IOobject::name(), Time::New(), primitiveMesh::nFaces(), Foam::reduce(), PtrList< T >::set(), dictionary::set(), PtrList< T >::setSize(), UPtrList< T >::size(), UList< T >::size(), Foam::type(), polyBoundaryMesh::updateMesh(), and WarningInFunction.

Here is the call graph for this function:

◆ ~polyMesh()

~polyMesh ( )
virtual

Destructor.

Definition at line 820 of file polyMesh.C.

Member Function Documentation

◆ TypeName()

TypeName ( "polyMesh"  )

Runtime type information.

◆ dbDir()

const Foam::fileName & dbDir ( ) const
virtual

Override the objectRegistry dbDir for a single-region case.

Reimplemented from objectRegistry.

Definition at line 837 of file polyMesh.C.

References objectRegistry::dbDir().

Referenced by topoSet::findIOobject(), topoSet::localPath(), faMesh::meshDir(), sensitivitySurface::smoothSensitivities(), and cellCellStencil::zoneID().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ meshDir()

Foam::fileName meshDir ( ) const

Return the local mesh directory (dbDir()/meshSubDir)

Definition at line 848 of file polyMesh.C.

Referenced by points0MotionSolver::points0IO(), and polyMesh::polyMesh().

Here is the caller graph for this function:

◆ pointsInstance()

const Foam::fileName & pointsInstance ( ) const

Return the current instance directory for points.

Used in the construction of geometric mesh data dependent on points

Definition at line 860 of file polyMesh.C.

Referenced by timeVaryingMappedFixedValuePointPatchField< Type >::checkTable(), isoSurfacePoint::isoSurfacePoint(), fvMesh::makeSf(), faMesh::pointsInstance(), shortestPathSet::shortestPathSet(), cyclicACMIPolyPatch::updateAreas(), and shapeOptimisation::updateDesignVariables().

Here is the caller graph for this function:

◆ facesInstance()

◆ setInstance()

void setInstance ( const fileName instance,
const IOobject::writeOption  wOpt = IOobject::AUTO_WRITE 
)

Set the instance for mesh files.

Definition at line 35 of file polyMeshIO.C.

References DebugInFunction, Foam::endl(), IOobject::instance(), and IOobject::writeOpt().

Referenced by snappyLayerDriver::addLayers(), snappyLayerDriver::addLayersSinglePass(), columnFvMesh::columnFvMesh(), meshRefinement::mergePatchFaces(), and polyMesh::updateMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ regionName() [1/2]

const Foam::word & regionName ( const word region)
static

The mesh region name or word::null if polyMesh::defaultRegion.

Definition at line 829 of file polyMesh.C.

References polyMesh::defaultRegion.

Referenced by faMeshTools::loadOrCreateMesh(), and faMeshTools::newMesh().

Here is the caller graph for this function:

◆ regionName() [2/2]

const Foam::word & regionName ( ) const

The mesh region name or word::null if polyMesh::defaultRegion.

Definition at line 854 of file polyMesh.C.

References solutionControl::fieldData::name, and polyMesh::regionName().

Referenced by fvMeshTools::loadOrCreateMesh(), dynamicFvMesh::New(), simplifiedDynamicFvMeshBase::New(), fvMeshTools::newMesh(), faMesh::regionName(), polyMesh::regionName(), and vtkWrite::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ points()

const Foam::pointField & points ( ) const
virtual

Return raw points.

Implements primitiveMesh.

Definition at line 1083 of file polyMesh.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by polyMeshAdder::add(), sensitivitySurface::addGeometricSens(), snappyLayerDriver::addLayers(), polyTopoChange::addMesh(), polyMeshTetDecomposition::adjustTetBasePtIs(), holeToFace::calcClosure(), polyDualMesh::calcFeatures(), cutFace::calcSubFace(), meshRefinement::calculateEdgeWeights(), deltaBoundary::cellCenters_d(), polyTopoChange::changeMesh(), layerAdditionRemoval::changeTopology(), polyMeshTetDecomposition::checkFaceTets(), motionSmootherAlgo::checkMesh(), pointZone::checkParallelSync(), timeVaryingMappedFixedValuePointPatchField< Type >::checkTable(), averageNeighbourFvGeometryScheme::clipFaceTet(), edgeVertex::coord(), distanceSurface::createGeometry(), volumetricBSplinesMotionSolver::curPoints(), geomCellLooper::cut(), Bezier::dndbBasedSensitivities(), Bezier::dxdbFace(), faceCoupleInfo::faceCoupleInfo(), FaceInteraction< CloudType >::FaceInteraction(), mappedPatchBase::facePoint(), tetIndices::faceTri(), sensitivitySurfacePoints::finalisePointSensitivities(), localPointRegion::findDuplicateFaces(), cellVolumeWeightMethod::findInitialSeeds(), mappedPatchBase::findLocalSamples(), wallBoundedStreamLine::findNearestTet(), searchableExtrudedCircle::findParametricNearest(), polyMeshAdder::findSharedPoints(), PatchTools::gatherAndMerge(), Foam::getMeshPointRef(), searchableExtrudedCircle::getNormal(), externalDisplacementMeshMover::getPatch(), globalIndexAndTransform::globalIndexAndTransform(), FreeStream< CloudType >::inflow(), volPointInterpolation::interpolateDimensionedInternalField(), isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), isoSurfaceTopo::isoSurfaceTopo(), wallBoundedParticle::isTriAlongTrack(), meshRefinement::makePatch(), meshToMeshMethod::maskCells(), polyMeshAdder::mergePoints(), momentOfInertia::meshInertia(), polyMeshTetDecomposition::minQuality(), Moment< Type >::Moment(), faMesh::movePoints(), cyclicACMIFvPatch::movePoints(), NURBS3DVolumeCartesian::NURBS3DVolumeCartesian(), NURBS3DVolumeCylindrical::NURBS3DVolumeCylindrical(), treeDataCell::findIntersectOp::operator()(), tetOverlapVolume::overlappingCells(), cuttingPlane::performCut(), pointHistory::pointHistory(), pointMVCWeight::pointMVCWeight(), vtuAdaptor::points(), porosityModel::porosityModel(), fvMeshDistribute::printMeshInfo(), boundaryMesh::read(), elasticityMotionSolver::setBoundaryConditions(), laplacianMotionSolver::setBoundaryConditions(), edgeFaceCirculator::setCanonical(), motionSmootherAlgo::setDisplacement(), boundaryMesh::setFeatureEdges(), fvGeometryScheme::setMeshPhi(), displacementMethodelasticityMotionSolver::setMotionField(), meshCutter::setRefinement(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), shortestPathSet::shortestPathSet(), Foam::simpleGeometricFilter(), triSurfacePointGeoMesh::size(), syncTools::syncEdgeList(), meshRefinement::testSyncPointList(), tetIndices::tet(), blockMesh::topology(), wallBoundedParticle::trackFaceTri(), wallBoundedParticle::trackToEdge(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), ensightFaces::uniqueMeshPoints(), inverseDistance::update(), trackingInverseDistance::update(), cellMotionFvPatchField< Type >::updateCoeffs(), shapeOptimisation::updateDesignVariables(), pointEdgePoint::updateEdge(), PointIntegrateData< DataType >::updateEdge(), points0MotionSolver::updateMesh(), pointEdgePoint::updatePoint(), velocityDisplacementMotionSolver::velocityDisplacementMotionSolver(), voxelMeshSearch::voxelMeshSearch(), cuttingSurfaceBase::walkCellCuts(), wallLayerCells::wallLayerCells(), ensightCells::write(), ensightFaces::write(), meshToMeshMethod::writeConnectivity(), pointSet::writeDebug(), and pointBitSet::writeDebug().

Here is the call graph for this function:

◆ upToDatePoints()

bool upToDatePoints ( const regIOobject io) const
virtual

Return true if io is up-to-date with points.

Definition at line 1096 of file polyMesh.C.

References io().

Referenced by cyclicACMIPolyPatch::updateAreas().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setUpToDatePoints()

void setUpToDatePoints ( regIOobject io) const
virtual

Set io to be up-to-date with points.

Definition at line 1102 of file polyMesh.C.

References io().

Here is the call graph for this function:

◆ faces()

const Foam::faceList & faces ( ) const
virtual

Return raw faces.

Implements primitiveMesh.

Definition at line 1108 of file polyMesh.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by polyMeshAdder::add(), cyclicAMIPolyPatch::addAMIFaces(), sensitivitySurface::addGeometricSens(), polyTopoChange::addMesh(), polyMeshTetDecomposition::adjustTetBasePtIs(), primitiveMeshTools::boundaryFaceSkewness(), nearWallFields::calcAddressing(), holeToFace::calcClosure(), polyDualMesh::calcFeatures(), cutFace::calcSubFace(), pointMVCWeight::calcWeights(), deltaBoundary::cellCenters_d(), polyMeshTetDecomposition::cellTetIndices(), layerAdditionRemoval::changeTopology(), polyMeshGeometry::checkFaceAngles(), primitiveMeshGeometry::checkFaceAngles(), polyMeshGeometry::checkFaceFlatness(), polyMeshGeometry::checkFacePyramids(), primitiveMeshGeometry::checkFacePyramids(), polyMeshGeometry::checkFaceSkewness(), polyMeshTetDecomposition::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), primitiveMeshGeometry::checkFaceTwist(), edgeCollapser::checkMeshQuality(), polyMeshGeometry::checkTriangleTwist(), averageNeighbourFvGeometryScheme::clipFaceTet(), inversePointDistanceDiffusivity::correct(), wallBoundedParticle::crossDiagonalEdge(), wallBoundedParticle::crossEdgeConnectedFace(), wallBoundedParticle::currentEdge(), decompositionMethod::decompose(), Bezier::dndbBasedSensitivities(), Bezier::dxdbFace(), directionInfo::edgeToFaceIndex(), primitiveMeshTools::faceConcavity(), faceCoupleInfo::faceCoupleInfo(), primitiveMeshTools::faceFlatness(), FaceInteraction< CloudType >::FaceInteraction(), mappedPatchBase::facePoint(), Bezier::facePoints_d(), primitiveMeshTools::facePyramidVolume(), polyMeshTools::faceSkewness(), primitiveMeshTools::faceSkewness(), polyMeshTetDecomposition::faceTetIndices(), tetIndices::faceTriIs(), sensitivitySurfacePoints::finalisePointSensitivities(), polyMeshTetDecomposition::findBasePoint(), localPointRegion::findDuplicateFaces(), polyMeshTetDecomposition::findFaceBasePts(), cellVolumeWeightMethod::findInitialSeeds(), wallBoundedStreamLine::findNearestTet(), sampledSet::findNearFace(), polyMeshTetDecomposition::findSharedBasePoint(), polyMeshTetDecomposition::findTet(), surfaceSets::getHangingCells(), externalDisplacementMeshMover::getPatch(), wallBoundedParticle::hitProcessorPatch(), prismMatcher::isA(), tetWedgeMatcher::isA(), wedgeMatcher::isA(), isoSurfacePoint::isoSurfacePoint(), isoSurfaceTopo::isoSurfaceTopo(), highAspectRatioFvGeometryScheme::makeAverageCentres(), stabilisedFvGeometryScheme::makeFaceCentresAndAreas(), primitiveMeshTools::makeFaceCentresAndAreas(), meshRefinement::makePatch(), meshToMeshMethod::maskCells(), degenerateMatcher::match(), hexMatcher::matches(), prismMatcher::matches(), pyrMatcher::matches(), tetMatcher::matches(), tetWedgeMatcher::matches(), wedgeMatcher::matches(), polyMeshAdder::mergePoints(), ensightCells::meshPointMap(), polyMeshTetDecomposition::minQuality(), multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), treeDataCell::findIntersectOp::operator()(), pointMVCWeight::pointMVCWeight(), porosityModel::porosityModel(), particle< Type >::procTetPt(), edgeFaceCirculator::sameOrder(), edgeFaceCirculator::setCanonical(), fvGeometryScheme::setMeshPhi(), meshCutter::setRefinement(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), shortestPathSet::shortestPathSet(), syncTools::syncEdgeMap(), hexMatcher::test(), pyrMatcher::test(), tetMatcher::test(), blockMesh::topology(), wallBoundedParticle::trackToEdge(), tetIndices::triIs(), ensightFaces::uniqueMeshPoints(), directionInfo::updateCell(), primitiveMeshTools::updateFaceCentresAndAreas(), cuttingSurfaceBase::walkCellCuts(), wallLayerCells::wallLayerCells(), ensightFaces::write(), meshToMeshMethod::writeConnectivity(), lumpedPointMovement::writeZonesVTP(), and zoneMotion::zoneMotion().

Here is the call graph for this function:

◆ faceOwner()

const Foam::labelList & faceOwner ( ) const
virtual

Return face owner.

Implements primitiveMesh.

Definition at line 1121 of file polyMesh.C.

Referenced by refinementHistory::add(), polyMeshAdder::add(), cyclicAMIPolyPatch::addAMIFaces(), polyTopoChange::addMesh(), polyMeshTetDecomposition::adjustTetBasePtIs(), polyMeshGeometry::affectedCells(), refinementHistory::apply(), snappySnapDriver::avgCellCentres(), highAspectRatioFvGeometryScheme::calcAspectRatioWeights(), decompositionMethod::calcCellCells(), polyDualMesh::calcFeatures(), dynamicRefineFvMesh::calculateProtectedCells(), primitiveMeshTools::cellClosedness(), edgeFaceCirculator::cellLabel(), polyMeshGeometry::checkFaceDotProduct(), primitiveMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFacePyramids(), primitiveMeshGeometry::checkFacePyramids(), polyMeshGeometry::checkFaceSkewness(), primitiveMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshTetDecomposition::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), primitiveMeshGeometry::checkFaceWeights(), polyMeshGeometry::checkVolRatio(), cellDistFuncs::correctBoundaryFaceCells(), decompositionMethod::decompose(), polyMeshTools::faceOrthogonality(), primitiveMeshTools::faceOrthogonality(), mappedPatchBase::facePoint(), primitiveMeshTools::facePyramidVolume(), polyMeshTools::faceSkewness(), primitiveMeshTools::faceSkewness(), tetIndices::faceTriIs(), polyMeshTools::faceWeights(), polyMeshTetDecomposition::findBasePoint(), polyMeshTetDecomposition::findFaceBasePts(), polyMeshTetDecomposition::findSharedBasePoint(), cellPointWeight::findTriangle(), sampledSet::getBoundaryCell(), sampledSet::getNeighbourCell(), cellCellStencil::globalCellCells(), FreeStream< CloudType >::inflow(), cellToCellStencil::insertFaceCells(), cellToFaceStencil::insertFaceCells(), prismMatcher::isA(), tetWedgeMatcher::isA(), wedgeMatcher::isA(), isoSurfaceTopo::isoSurfaceTopo(), highAspectRatioFvGeometryScheme::makeAverageCentres(), primitiveMeshTools::makeCellCentresAndVols(), dynamicRefineFvMesh::mapNewInternalFaces(), fvMeshAdder::MapSurfaceField(), Foam::markGrowFaceCellFace(), meshRefinement::markOutsideFaces(), degenerateMatcher::match(), hexMatcher::matches(), prismMatcher::matches(), pyrMatcher::matches(), tetMatcher::matches(), tetWedgeMatcher::matches(), wedgeMatcher::matches(), meshRefinement::mergePatchFaces(), polyMeshAdder::mergePoints(), MGridGenGAMGAgglomeration::MGridGenGAMGAgglomeration(), polyMeshTetDecomposition::minQuality(), edgeFaceCirculator::operator++(), sampledSet::pointInCell(), particle< Type >::procTetPt(), sampledSet::pushIn(), undoableMeshCutter::removeSplitFaces(), SloanRenumber::renumber(), sampledFaceZone::sampleOnFaces(), sampledFaceZone::sampleOnPoints(), sampledPatch::sampleOnPoints(), edgeFaceCirculator::setCanonical(), meshCutter::setRefinement(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), blockMesh::topology(), wallBoundedParticle::trackToEdge(), tetIndices::triIs(), primitiveMeshTools::updateCellCentresAndVols(), polyMeshTools::volRatio(), and cellVolumeWeight::walkFront().

◆ faceNeighbour()

const Foam::labelList & faceNeighbour ( ) const
virtual

Return face neighbour.

Implements primitiveMesh.

Definition at line 1127 of file polyMesh.C.

Referenced by refinementHistory::add(), polyMeshAdder::add(), addPatchCellLayer::addedCells(), polyTopoChange::addMesh(), polyMeshTetDecomposition::adjustTetBasePtIs(), polyMeshGeometry::affectedCells(), refinementHistory::apply(), highAspectRatioFvGeometryScheme::calcAspectRatioWeights(), decompositionMethod::calcCellCells(), dynamicRefineFvMesh::calculateProtectedCells(), primitiveMeshTools::cellClosedness(), edgeFaceCirculator::cellLabel(), polyMeshGeometry::checkFaceDotProduct(), primitiveMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFacePyramids(), primitiveMeshGeometry::checkFacePyramids(), polyMeshGeometry::checkFaceSkewness(), primitiveMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshTetDecomposition::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), primitiveMeshGeometry::checkFaceWeights(), polyMeshGeometry::checkVolRatio(), decompositionMethod::decompose(), polyMeshTools::faceOrthogonality(), primitiveMeshTools::faceOrthogonality(), primitiveMeshTools::facePyramidVolume(), polyMeshTools::faceSkewness(), primitiveMeshTools::faceSkewness(), polyMeshTools::faceWeights(), polyMeshTetDecomposition::findSharedBasePoint(), sampledSet::getNeighbourCell(), cellCellStencil::globalCellCells(), cellToCellStencil::insertFaceCells(), cellToFaceStencil::insertFaceCells(), isoSurfaceTopo::isoSurfaceTopo(), highAspectRatioFvGeometryScheme::makeAverageCentres(), primitiveMeshTools::makeCellCentresAndVols(), dynamicRefineFvMesh::mapNewInternalFaces(), Foam::markGrowFaceCellFace(), meshRefinement::markOutsideFaces(), polyMeshAdder::mergePoints(), polyMeshTetDecomposition::minQuality(), edgeFaceCirculator::operator++(), undoableMeshCutter::removeSplitFaces(), SloanRenumber::renumber(), sampledFaceZone::sampleOnFaces(), edgeFaceCirculator::setCanonical(), meshCutter::setRefinement(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), blockMesh::topology(), wallBoundedParticle::trackToEdge(), polyMeshTools::volRatio(), and cellVolumeWeight::walkFront().

◆ oldPoints()

const Foam::pointField & oldPoints ( ) const
virtual

Return old points (mesh motion)

Implements primitiveMesh.

Definition at line 1133 of file polyMesh.C.

References Foam::endl(), and WarningInFunction.

Referenced by tetIndices::oldFaceTri(), fvGeometryScheme::setMeshPhi(), and movingWallVelocityFvPatchVectorField::Uwall().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ oldCellCentres()

const Foam::pointField & oldCellCentres ( ) const
virtual

Return old cellCentres (mesh motion)

Definition at line 1155 of file polyMesh.C.

Referenced by Cloud< ParticleType >::Cloud().

Here is the caller graph for this function:

◆ boundaryMesh()

const polyBoundaryMesh & boundaryMesh ( ) const
inline

Return boundary mesh.

Definition at line 456 of file polyMesh.H.

Referenced by isoSurfacePoint::adaptPatchFields(), polyMeshAdder::add(), fvMeshAdder::add(), snappyRefineDriver::addFaceZones(), sensitivitySurface::addGeometricSens(), snappyLayerDriver::addLayers(), snappyLayerDriver::addLayersSinglePass(), polyTopoChange::addMesh(), meshRefinement::addPatch(), fvMeshTools::addPatch(), cellToCellStencil::allCoupledFacesPatch(), cellToFaceStencil::allCoupledFacesPatch(), temperatureCoupledBase::alpha(), mappedPatchBase::AMI(), meshRefinement::appendPatch(), sensitivitySurfacePoints::assembleSensitivities(), assemblyFaceAreaPairGAMGAgglomeration::assemblyFaceAreaPairGAMGAgglomeration(), FreeStream< CloudType >::autoMap(), patchMeshWriter::beginPiece(), boundaryRadiationProperties::boundaryRadiationProperties(), decompositionMethod::calcCellCells(), addPatchCellLayer::calcExtrudeInfo(), polyDualMesh::calcFeatures(), curvatureSeparation::calcInvR1(), snappySnapDriver::calcNearestSurface(), deltaBoundary::cellCenters_d(), polyTopoChange::changeMesh(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshTetDecomposition::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), faceZone::checkParallelSync(), polyMeshGeometry::checkVolRatio(), adjointBoundaryCondition< Type >::computePatchGrad(), wallDistData< TransferType >::correct(), inverseFaceDistanceDiffusivity::correct(), inversePointDistanceDiffusivity::correct(), patchInjection::correct(), cellDistFuncs::correctBoundaryFaceCells(), cellDistFuncs::correctBoundaryPointCells(), Foam::createReconstructMap(), Foam::createZeroBoundaryPointFieldPtr(), curvatureSeparation::curvatureSeparation(), structuredDecomp::decompose(), decompositionMethod::decompose(), directions::directions(), snappyLayerDriver::doLayers(), extendedCellToCellStencil::extendedCellToCellStencil(), extendedCellToFaceStencil::extendedCellToFaceStencil(), extendedFaceToCellStencil::extendedFaceToCellStencil(), extrudePatchMesh::extrudePatchMesh(), polyMeshTools::faceOrthogonality(), FacePostProcessing< CloudType >::FacePostProcessing(), polyMeshTools::faceSkewness(), polyMeshTools::faceWeights(), localPointRegion::findDuplicateFacePairs(), patchProbes::findElements(), polyMeshTetDecomposition::findFaceBasePts(), syncTools::getInternalOrCoupledFaces(), syncTools::getInternalOrMasterFaces(), syncTools::getMasterFaces(), decompositionConstraint::getMinBoundaryValue(), externalDisplacementMeshMover::getPatch(), cellDistFuncs::getPatchIDs(), globalIndexAndTransform::globalIndexAndTransform(), fvBoundaryMesh::indices(), FreeStream< CloudType >::inflow(), injectionModelList::info(), transferModelList::info(), singleDirectionUniformBin::initialise(), uniformBin::initialise(), viewFactor::initialise(), objectivePtLosses::initialize(), SurfaceFilmModel< CloudType >::inject(), PDRblock::innerMesh(), interpolationCellPatchConstrained< Type >::interpolate(), regionModel::interRegionAMI(), isoAdvection::isoAdvection(), isoSurfacePoint::isoSurfacePoint(), temperatureCoupledBase::kappa(), fvMeshTools::loadOrCreateMesh(), localPointRegion::localPointRegion(), mappedPatchBase::lookupMesh(), mappedPatchBase::lookupPatch(), highAspectRatioFvGeometryScheme::makeAverageCentres(), polyTopoChange::makeMesh(), meshRefinement::makePatch(), waWallFunctionFvPatchScalarField::manipulateMatrix(), mappedPatchBase::map(), Foam::MapConsistentSubMesh(), volSurfaceMapping::mapInternalToSurface(), mappedPatchFieldBase< Type >::mappedField(), mapPolyMesh::mapPolyMesh(), volSurfaceMapping::mapToField(), volSurfaceMapping::mapToSurface(), volSurfaceMapping::mapToVolume(), cellDistFuncs::maxPatchSize(), meshRefinement::mergePatchFaces(), polyMeshAdder::mergePoints(), meshReader::mesh(), meshToMesh0::meshToMesh0(), regionModel::nbrCoupledPatchID(), fvMeshTools::newMesh(), cellPointWeightWallModified::onWall(), ParticleErosion< CloudType >::ParticleErosion(), polyMeshAdder::patchFacePairs(), sampledPatch::patchIDs(), boundaryMesh::patchify(), patchInjection::patchInjection(), patchInjectionBase::patchInjectionBase(), wallBoundedParticle::patchInteraction(), patchInteractionDataList::patchInteractionDataList(), PatchParticleHistogram< CloudType >::PatchParticleHistogram(), PatchPostProcessing< CloudType >::PatchPostProcessing(), pointCells::pointCells(), polyTopoChange::polyTopoChange(), powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), boundaryMesh::read(), fvMeshTools::readProcAddressing(), RecycleInteraction< CloudType >::RecycleInteraction(), fvMeshTools::removeEmptyPatches(), RemoveParcels< CloudType >::RemoveParcels(), structuredRenumber::renumber(), SloanRenumber::renumber(), fvMeshTools::reorderPatches(), snappySnapDriver::repatchToSurface(), fvFieldDecomposer::reset(), sampledCuttingPlane::sampledCuttingPlane(), sampledInterface::sampledInterface(), sampledIsoSurface::sampledIsoSurface(), sampledPatchInternalField::sampledPatchInternalField(), mappedPatchFieldBase< Type >::sampleField(), sampledMeshedSurface::sampleOnFaces(), sampledFaceZone::sampleOnPoints(), sampledPatch::sampleOnPoints(), sampledPatchInternalField::sampleOnPoints(), mappedPatchBase::samplePolyPatch(), sensitivitySurfacePoints::sensitivitySurfacePoints(), elasticityMotionSolver::setBoundaryConditions(), laplacianMotionSolver::setBoundaryConditions(), adjointBoundaryCondition< Type >::setBoundaryContributionPtr(), displacementMethodelasticityMotionSolver::setMotionField(), lumpedPointDisplacementPointPatchVectorField::setPatchControls(), patchInjectionBase::setPositionAndCell(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), thermoSingleLayer::Sh(), shapeOptimisation::shapeOptimisation(), shortestPathSet::shortestPathSet(), singleCellFvMesh::singleCellFvMesh(), thermalBaffle::solveEnergy(), thermoSingleLayer::Srho(), cellDistFuncs::sumPatchSize(), mappedPatchBase::surfPtr(), syncTools::swapBoundaryCellList(), syncTools::swapBoundaryCellPositions(), syncTools::syncBoundaryFaceList(), syncTools::syncEdgeMap(), syncTools::syncFaceList(), syncTools::syncPointMap(), blockMesh::topology(), sampledFaceZone::update(), sampledPatch::update(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), attachDetach::updateMesh(), perfectInterface::updateMesh(), slidingInterface::updateMesh(), patchInjectionBase::updateMesh(), thermoSingleLayer::updateSurfaceTemperatures(), kinematicSingleLayer::updateSurfaceVelocities(), liquidFilmBase::Uw(), cellToCellStencil::validBoundaryFaces(), cellToFaceStencil::validBoundaryFaces(), Sampled< Type >::value(), polyMeshTools::volRatio(), wallLayerCells::wallLayerCells(), WallLocalSpringSliderDashpot< CloudType >::WallLocalSpringSliderDashpot(), fieldExtents::writeFileHeader(), fvMeshTools::writeProcAddressing(), lumpedPointMovement::writeVTP(), and lumpedPointMovement::writeZonesVTP().

◆ bounds()

const boundBox & bounds ( ) const
inline

◆ geometricD()

const Foam::Vector< Foam::label > & geometricD ( ) const

Return the vector of geometric directions in mesh.

Defined according to the presence of empty and wedge patches. 1 indicates unconstrained direction and -1 a constrained direction.

Definition at line 872 of file polyMesh.C.

Referenced by cubeRootVolDelta::calcDelta(), sensitivitySurface::computeRadius(), simpleGeomDecomp::decompose(), FitData< FitDataType, ExtendedStencil, Polynomial >::findFaceDirs(), trackingInverseDistance::markBoundaries(), radiativeIntensityRay::radiativeIntensityRay(), and voxelMeshSearch::voxelMeshSearch().

Here is the caller graph for this function:

◆ nGeometricD()

Foam::label nGeometricD ( ) const

Return the number of valid geometric dimensions in the mesh.

Definition at line 883 of file polyMesh.C.

References Foam::cmptSum().

Referenced by cubeRootVolDelta::calcDelta(), maxDeltaxyz::calcDelta(), sensitivitySurface::computeRadius(), FitData< FitDataType, ExtendedStencil, Polynomial >::findFaceDirs(), streamFunction::streamFunction(), inverseDistance::update(), and voxelMeshSearch::voxelMeshSearch().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ solutionD()

const Foam::Vector< Foam::label > & solutionD ( ) const

Return the vector of solved-for directions in mesh.

Differs from geometricD in that it includes for wedge cases the circumferential direction in case of swirl. 1 indicates valid direction and -1 an invalid direction.

Definition at line 889 of file polyMesh.C.

Referenced by InjectionModel< CloudType >::inject(), InjectionModel< CloudType >::injectSteadyState(), KinematicSurfaceFilm< CloudType >::splashInteraction(), and fvMesh::validComponents().

Here is the caller graph for this function:

◆ nSolutionD()

Foam::label nSolutionD ( ) const

Return the number of valid solved-for dimensions in the mesh.

Definition at line 900 of file polyMesh.C.

References Foam::cmptSum().

Referenced by extractEulerianParticles::extractEulerianParticles(), and radiativeIntensityRay::radiativeIntensityRay().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tetBasePtIs()

◆ cellTree()

const Foam::indexedOctree< Foam::treeDataCell > & cellTree ( ) const

Return the cell search tree.

Definition at line 940 of file polyMesh.C.

References e, treeBoundBox::extend(), boundBox::max(), boundBox::min(), points, and rndGen.

Referenced by waveMethod::calculate(), cellVolumeWeightMethod::findInitialSeeds(), mapNearestMethod::findInitialSeeds(), mappedPatchBase::findLocalSamples(), and tetOverlapVolume::overlappingCells().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pointZones() [1/2]

const pointZoneMesh & pointZones ( ) const
inlinenoexcept

◆ faceZones() [1/2]

const faceZoneMesh & faceZones ( ) const
inlinenoexcept

Return face zone mesh.

Definition at line 498 of file polyMesh.H.

Referenced by fvMeshAdder::add(), polyMeshAdder::add(), cyclicAMIPolyPatch::addAMIFaces(), surfaceZonesInfo::addFaceZone(), surfaceZonesInfo::addFaceZonesToMesh(), snappyLayerDriver::addLayers(), snappyLayerDriver::addLayersSinglePass(), polyTopoChange::addMesh(), polyTopoChange::changeMesh(), layerAdditionRemoval::changeTopology(), meshRefinement::checkCoupledFaceZones(), extractEulerianParticles::checkFaceZone(), directionalPressureGradientExplicitSource::directionalPressureGradientExplicitSource(), snappyLayerDriver::doLayers(), snappySnapDriver::doSnap(), FaceInteraction< CloudType >::FaceInteraction(), FacePostProcessing< CloudType >::FacePostProcessing(), faceZoneSet::faceZoneSet(), fvExprDriver::getTopoSetLabels(), fvMeshTools::loadOrCreateMesh(), polyTopoChange::makeMesh(), mapPolyMesh::mapPolyMesh(), polyMeshAdder::mergePoints(), blockMesh::mesh(), slidingInterface::modifyMotionPoints(), fvMeshTools::newMesh(), polyTopoChange::polyTopoChange(), FacePostProcessing< CloudType >::postFace(), RemoveParcels< CloudType >::postFace(), fvMeshDistribute::printMeshInfo(), RemoveParcels< CloudType >::RemoveParcels(), snappySnapDriver::repatchToSurface(), perfectInterface::setRefinement(), meshRefinement::subsetBaffles(), sampledFaceZone::update(), attachDetach::updateMesh(), perfectInterface::updateMesh(), slidingInterface::updateMesh(), and sampledFaceZone::zoneIDs().

Here is the caller graph for this function:

◆ cellZones() [1/2]

const cellZoneMesh & cellZones ( ) const
inlinenoexcept

Return cell zone mesh.

Definition at line 504 of file polyMesh.H.

Referenced by fvMeshAdder::add(), polyMeshAdder::add(), surfaceZonesInfo::addCellZone(), cellTable::addCellZones(), surfaceZonesInfo::addCellZonesToMesh(), polyTopoChange::addMesh(), cuttingSurfaceBase::cellSelection(), cellZoneSet::cellZoneSet(), polyTopoChange::changeMesh(), multiphaseMangrovesSource::dragCoeff(), faceCells::faceCells(), fvExprDriver::getTopoSetLabels(), singleDirectionUniformBin::initialise(), uniformBin::initialise(), objectiveNutSqr::J(), multiphaseMangrovesTurbulenceModel::kCoeff(), fvMeshTools::loadOrCreateMesh(), polyTopoChange::makeMesh(), mapPolyMesh::mapPolyMesh(), blockMesh::mesh(), multiBandZoneAbsorptionEmission::multiBandZoneAbsorptionEmission(), multiSolidBodyMotionSolver::multiSolidBodyMotionSolver(), fvMeshTools::newMesh(), cellTable::operator=(), ParticleZoneInfo< CloudType >::ParticleZoneInfo(), pointCells::pointCells(), polyTopoChange::polyTopoChange(), porosityModel::porosityModel(), powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), fvMeshDistribute::printMeshInfo(), sampledCuttingPlane::sampledCuttingPlane(), sampledInterface::sampledInterface(), sampledIsoSurface::sampledIsoSurface(), sampledPlane::sampledPlane(), displacementLayeredMotionMotionSolver::solve(), objectiveNutSqr::update_divDxDbMultiplier(), objectiveNutSqr::update_dJdTMvar1(), CellZoneInjection< CloudType >::updateMesh(), zeroATCcells::zeroATCcells(), and zoneMotion::zoneMotion().

Here is the caller graph for this function:

◆ globalData()

const Foam::globalMeshData & globalData ( ) const

Return parallel info.

Definition at line 1310 of file polyMesh.C.

References Foam::endl(), and Foam::Pout.

Referenced by addPatchCellLayer::calcExtrudeInfo(), faBoundaryMesh::calcGeometry(), waveMethod::calculate(), structuredDecomp::decompose(), decompositionMethod::decompose(), Dual< Type >::Dual(), PatchTools::edgeNormals(), polyMeshAdder::findSharedPoints(), faMeshTools::forceDemandDriven(), PatchTools::gatherAndMerge(), syncTools::getMasterEdges(), syncTools::getMasterPoints(), globalIndexAndTransform::globalIndexAndTransform(), fvMeshTools::loadOrCreateMesh(), faMeshTools::loadOrCreateMesh(), faBoundaryMesh::movePoints(), pointBoundaryMesh::movePoints(), polyBoundaryMesh::movePoints(), faMeshTools::newMesh(), PatchEdgeFaceWave< PrimitivePatchType, Type, TrackingData >::PatchEdgeFaceWave(), patchInjection::patchInjection(), PatchTools::pointNormals(), structuredRenumber::renumber(), zoltanRenumber::renumber(), motionSmootherAlgo::setDisplacement(), syncTools::syncEdgeList(), syncTools::syncEdgeMap(), syncTools::syncPointList(), syncTools::syncPointMap(), ensightFaces::uniqueMeshPoints(), faBoundaryMesh::updateMesh(), pointBoundaryMesh::updateMesh(), polyBoundaryMesh::updateMesh(), and ensightFaces::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ comm() [1/2]

Foam::label comm ( ) const
noexcept

Return communicator used for parallel communication.

Definition at line 1328 of file polyMesh.C.

Referenced by fvMesh::comm().

Here is the caller graph for this function:

◆ comm() [2/2]

Foam::label & comm ( )
noexcept

Return communicator used for parallel communication.

Definition at line 1334 of file polyMesh.C.

◆ thisDb()

const objectRegistry & thisDb ( ) const
inlinenoexcept

Return the object registry.

Definition at line 519 of file polyMesh.H.

Referenced by fvMesh::thisDb().

Here is the caller graph for this function:

◆ dynamic()

virtual bool dynamic ( ) const
inlinevirtual

Is mesh dynamic.

Reimplemented in dynamicFvMesh, staticFvMesh, and engineMesh.

Definition at line 528 of file polyMesh.H.

◆ moving() [1/2]

bool moving ( ) const
inlinenoexcept

Is mesh moving.

Definition at line 534 of file polyMesh.H.

Referenced by snappyLayerDriver::addLayers(), snappyLayerDriver::addLayersSinglePass(), backwardDdtScheme< Type >::backwardDdtScheme(), polyMesh::changing(), CrankNicolsonDdtScheme< Type >::CrankNicolsonDdtScheme(), meshRefinement::mergePatchFaces(), faMesh::moving(), fvGeometryScheme::setMeshPhi(), and movingWallVelocityFvPatchVectorField::updateCoeffs().

Here is the caller graph for this function:

◆ moving() [2/2]

bool moving ( const bool  on)
inlinenoexcept

Set the mesh to be moving.

Definition at line 540 of file polyMesh.H.

◆ topoChanging() [1/2]

bool topoChanging ( ) const
inlinenoexcept

Is mesh topology changing.

Definition at line 548 of file polyMesh.H.

Referenced by mappedPatchBase::AMI(), polyTopoChange::changeMesh(), polyMesh::changing(), DMD::DMD(), and mappedPatchBase::map().

Here is the caller graph for this function:

◆ topoChanging() [2/2]

bool topoChanging ( const bool  on)
inlinenoexcept

Set the mesh topology to be changing.

Definition at line 554 of file polyMesh.H.

◆ changing()

bool changing ( ) const
inlinenoexcept

Is mesh changing (topology changing and/or moving)

Definition at line 562 of file polyMesh.H.

References polyMesh::moving(), and polyMesh::topoChanging().

Referenced by adjointRASModel::correct(), epsilonWallFunctionFvPatchScalarField::createAveragingWeights(), omegaWallFunctionFvPatchScalarField::createAveragingWeights(), and pyrolysisModelCollection::evolve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ movePoints()

void movePoints ( const pointField newPoints)
virtual

Move points.

Reimplemented in fvMesh.

Definition at line 1173 of file polyMesh.C.

References IOobject::AUTO_WRITE, DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, InfoInFunction, motionSmootherAlgo::movePoints(), Foam::nl, UList< T >::size(), timeIndex, ObukhovLength::write(), and Foam::Zero.

Here is the call graph for this function:

◆ resetMotion()

void resetMotion ( ) const

Reset motion.

Definition at line 1302 of file polyMesh.C.

Referenced by polyMeshAdder::add().

Here is the caller graph for this function:

◆ pointZones() [2/2]

pointZoneMesh & pointZones ( )
inlinenoexcept

Return non-const access to the pointZones.

Definition at line 577 of file polyMesh.H.

◆ faceZones() [2/2]

faceZoneMesh & faceZones ( )
inlinenoexcept

Return non-const access to the faceZones.

Definition at line 583 of file polyMesh.H.

◆ cellZones() [2/2]

cellZoneMesh & cellZones ( )
inlinenoexcept

Return non-const access to the cellZones.

Definition at line 589 of file polyMesh.H.

◆ addPatches() [1/2]

void addPatches ( polyPatchList plist,
const bool  validBoundary = true 
)

Add boundary patches.

Definition at line 974 of file polyMesh.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and Foam::Zero.

Referenced by polyMeshAdder::add(), PDRblock::innerMesh(), meshReader::mesh(), and blockMesh::topology().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addPatches() [2/2]

void addPatches ( const List< polyPatch * > &  p,
const bool  validBoundary = true 
)

Add boundary patches.

Definition at line 1070 of file polyMesh.C.

References p.

◆ addZones()

void addZones ( const List< pointZone * > &  pz,
const List< faceZone * > &  fz,
const List< cellZone * > &  cz 
)

Add mesh zones.

Definition at line 1012 of file polyMesh.C.

References Foam::abort(), IOobject::AUTO_WRITE, Foam::FatalError, FatalErrorInFunction, forAll, and UList< T >::size().

Referenced by fvMeshTools::loadOrCreateMesh(), blockMesh::mesh(), and fvMeshTools::newMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ init()

◆ readUpdate()

Foam::polyMesh::readUpdateState readUpdate ( )
virtual

Update the mesh based on the mesh files saved in.

time directories

Reimplemented in fvMesh.

Definition at line 75 of file polyMeshIO.C.

References cells, DebugInFunction, Foam::endl(), forAll, Foam::Info, IOobject::MUST_READ, Foam::name(), polyBoundaryMesh::names(), Foam::nl, IOobject::NO_WRITE, polyMesh::POINTS_MOVED, IOobject::READ_IF_PRESENT, PtrList< T >::setSize(), UPtrList< T >::size(), polyMesh::TOPO_CHANGE, polyMesh::TOPO_PATCH_CHANGE, polyBoundaryMesh::types(), polyMesh::UNCHANGED, WarningInFunction, and Foam::Zero.

Referenced by fvMesh::readUpdate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateMesh()

void updateMesh ( const mapPolyMesh mpm)
virtual

Update the mesh corresponding to given map.

Reimplemented in fvMesh.

Definition at line 42 of file polyMeshUpdate.C.

References primitiveMesh::cellCentres(), mapPolyMesh::cellMap(), ZoneMesh< ZoneType, MeshType >::clearAddressing(), DebugInFunction, Foam::endl(), forAll, mapPolyMesh::hasMotionPoints(), Field< Type >::map(), newPointi, mapPolyMesh::pointMap(), List< T >::resize(), mapPolyMesh::reversePointMap(), polyMesh::setInstance(), HashTable< regIOobject * >::size(), UList< T >::size(), objectRegistry::time(), timeName, polyBoundaryMesh::updateMesh(), and Foam::Zero.

Here is the call graph for this function:

◆ removeBoundary()

void removeBoundary ( )

Remove boundary patches.

Definition at line 39 of file polyMeshClear.C.

References PtrList< T >::clear(), polyMesh::clearOut(), DebugInFunction, Foam::endl(), and PtrList< T >::setSize().

Referenced by fvMesh::removeFvBoundary().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resetPrimitives()

void resetPrimitives ( autoPtr< pointField > &&  points,
autoPtr< faceList > &&  faces,
autoPtr< labelList > &&  owner,
autoPtr< labelList > &&  neighbour,
const labelUList patchSizes,
const labelUList patchStarts,
const bool  validBoundary = true 
)

Reset mesh primitive data. Assumes all patch info correct.

(so does e.g. parallel communication). If not use validBoundary=false

Note
Only autoPtr parameters that test as valid() are used for resetting, otherwise the existing entries are left untouched.

Definition at line 717 of file polyMesh.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::max(), Foam::min(), nPoints, points, Foam::returnReduce(), UList< T >::size(), and timeName.

Referenced by polyMeshAdder::add(), and polyTopoChange::changeMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clearGeom()

void clearGeom ( )

Clear geometry.

Definition at line 53 of file polyMeshClear.C.

References primitiveMesh::clearGeom(), DebugInFunction, Foam::endl(), and Foam::Zero.

Here is the call graph for this function:

◆ updateGeomPoints()

void updateGeomPoints ( pointIOField &&  newPoints,
autoPtr< labelIOList > &  newTetBasePtIsPtr 
)

Update geometry points; keep topology. Optionally with new face decomposition

Definition at line 74 of file polyMeshClear.C.

References bool, primitiveMesh::clearGeom(), meshObject::clearUpto(), DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::Zero.

Here is the call graph for this function:

◆ clearAddressing()

void clearAddressing ( const bool  isMeshUpdate = false)

Clear addressing.

Definition at line 152 of file polyMeshClear.C.

References primitiveMesh::clearAddressing(), polyMesh::clearAddressing(), meshObject::clearUpto(), DebugInFunction, Foam::endl(), and Foam::Zero.

Referenced by polyMesh::clearAddressing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clearOut()

void clearOut ( )

Clear all geometry and addressing unnecessary for CFD.

Definition at line 222 of file polyMeshClear.C.

Referenced by fvMesh::clearOut(), and polyMesh::removeBoundary().

Here is the caller graph for this function:

◆ clearPrimitives()

void clearPrimitives ( )

Clear primitive data (points, faces and cells)

Definition at line 209 of file polyMeshClear.C.

◆ clearTetBasePtIs()

void clearTetBasePtIs ( )

Clear tet base points.

Definition at line 229 of file polyMeshClear.C.

References DebugInFunction, and Foam::endl().

Here is the call graph for this function:

◆ clearCellTree()

void clearCellTree ( )

Clear cell tree data.

Definition at line 237 of file polyMeshClear.C.

References DebugInFunction, and Foam::endl().

Here is the call graph for this function:

◆ removeFiles() [1/2]

void removeFiles ( const fileName instanceDir) const

Remove all files from mesh instance.

Definition at line 1340 of file polyMesh.C.

References Foam::isDir(), fileName::path(), Foam::rm(), and Foam::rmDir().

Referenced by meshReader::writeMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeFiles() [2/2]

void removeFiles ( ) const

Remove all files from mesh instance()

Definition at line 1364 of file polyMesh.C.

◆ hasTetBasePtIs()

bool hasTetBasePtIs ( ) const
inline

Definition at line 683 of file polyMesh.H.

References bool.

◆ checkFaceOrthogonality()

bool checkFaceOrthogonality ( const bool  report = false,
labelHashSet setPtr = nullptr 
) const
virtual

Check non-orthogonality.

Reimplemented from primitiveMesh.

Definition at line 640 of file polyMeshCheck.C.

◆ checkFaceSkewness()

bool checkFaceSkewness ( const bool  report = false,
labelHashSet setPtr = nullptr 
) const
virtual

Check face skewness.

Reimplemented from primitiveMesh.

Definition at line 657 of file polyMeshCheck.C.

References points.

◆ checkEdgeAlignment()

bool checkEdgeAlignment ( const bool  report,
const Vector< label > &  directions,
labelHashSet setPtr 
) const
virtual

Check edge alignment for 1D/2D cases.

Definition at line 676 of file polyMeshCheck.C.

References points.

◆ checkCellDeterminant()

bool checkCellDeterminant ( const bool  report,
labelHashSet setPtr 
) const
virtual

Definition at line 693 of file polyMeshCheck.C.

◆ checkMeshMotion()

bool checkMeshMotion ( const pointField newPoints,
const bool  report = false,
const bool  detailedReport = false 
) const
virtual

Check mesh motion for correctness given motion points.

Definition at line 739 of file polyMeshCheck.C.

References cellVols, Foam::endl(), primitiveMeshTools::makeCellCentresAndVols(), primitiveMeshTools::makeFaceCentresAndAreas(), nFaces(), and Foam::Pout.

Here is the call graph for this function:

◆ checkFaceWeight()

bool checkFaceWeight ( const bool  report,
const scalar  minWeight = 0.05,
labelHashSet setPtr = nullptr 
) const
virtual

Check for face weights.

Definition at line 709 of file polyMeshCheck.C.

◆ checkVolRatio()

bool checkVolRatio ( const bool  report,
const scalar  minRatio = 0.01,
labelHashSet setPtr = nullptr 
) const
virtual

Check for neighbouring cell volumes.

Definition at line 728 of file polyMeshCheck.C.

◆ findCellFacePt()

void findCellFacePt ( const point p,
label &  celli,
label &  tetFacei,
label &  tetPti 
) const

Find the cell, tetFacei and tetPti for point p.

Definition at line 1370 of file polyMesh.C.

References indexedOctree< Type >::findInside(), and p.

Referenced by patchInjectionBase::setPositionAndCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findTetFacePt()

void findTetFacePt ( const label  celli,
const point p,
label &  tetFacei,
label &  tetPti 
) const

Find the tetFacei and tetPti for point p in celli.

tetFacei and tetPtI are set to -1 if not found

Definition at line 1395 of file polyMesh.C.

References tetIndices::face(), polyMeshTetDecomposition::findTet(), mesh, p, and tetIndices::tetPt().

Referenced by nearWallFields::calcAddressing(), sampledSet::pushIn(), and patchInjectionBase::setPositionAndCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pointInCell()

bool pointInCell ( const point p,
label  celli,
const cellDecomposition  decompMode = CELL_TETS 
) const

Test if point p is in the celli.

Definition at line 1411 of file polyMesh.C.

References triangle< Point, PointRef >::areaNormal(), cells, triangle< Point, PointRef >::centre(), f(), tetIndices::faceTri(), forAll, p, primitiveMesh::pointInCell(), points, and UList< T >::size().

Referenced by treeDataCell::contains(), directMethod::intersect(), and sampledSet::pointInCell().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findCell()

Foam::label findCell ( const point p,
const cellDecomposition  decompMode = CELL_TETS 
) const

Find cell enclosing this location and return index.

If not found -1 is returned

Definition at line 1521 of file polyMesh.C.

References p, and UPstream::parRun().

Referenced by waveMethod::calculate(), meshRefinement::findCell(), refinementParameters::findCells(), probes::findElements(), meshRefinement::findRegion(), sampledSet::getTrackingPoint(), and inverseDistance::markDonors().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ defaultRegion

◆ meshSubDir


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