A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO. More...
Public Member Functions | |
TypeName ("polyBoundaryMesh") | |
Runtime type information. More... | |
polyBoundaryMesh (const IOobject &io, const polyMesh &mesh) | |
Read constructor given IOobject and a polyMesh reference. More... | |
polyBoundaryMesh (const IOobject &io, const polyMesh &mesh, const label size) | |
Construct given size. More... | |
polyBoundaryMesh (const IOobject &io, const polyMesh &mesh, const polyPatchList &ppl) | |
Construct given polyPatchList. More... | |
~polyBoundaryMesh ()=default | |
Destructor. More... | |
void | clearGeom () |
Clear geometry at this level and at patches. More... | |
void | clearAddressing () |
Clear addressing at this level and at patches. More... | |
const polyMesh & | mesh () const noexcept |
Return the mesh reference. More... | |
UPtrList< const labelUList > | faceCells () const |
Return a list of faceCells for each patch. More... | |
const List< labelPairList > & | neighbourEdges () const |
Per patch the edges on the neighbouring patch. More... | |
label | nNonProcessor () const |
The number of patches before the first processor patch. More... | |
wordList | names () const |
Return a list of patch names. More... | |
wordList | types () const |
Return a list of patch types. More... | |
wordList | physicalTypes () const |
Return a list of physical types. More... | |
labelList | patchStarts () const |
Return a list of patch start face indices. More... | |
labelList | patchSizes () const |
Return a list of patch sizes. More... | |
List< labelRange > | patchRanges () const |
Return a list of patch ranges. More... | |
label | start () const noexcept |
The start label of boundary faces in the polyMesh face list. More... | |
label | nFaces () const noexcept |
The number of boundary faces in the underlying mesh. More... | |
labelRange | range () const noexcept |
The face range for all boundary faces. More... | |
labelRange | range (const label patchi) const |
Return the range used for boundary faces on patchi. More... | |
labelList | indices (const wordRe &matcher, const bool useGroups=true) const |
Return (sorted) patch indices for all matches. More... | |
labelList | indices (const wordRes &matcher, const bool useGroups=true) const |
Return (sorted) patch indices for all matches. More... | |
label | findIndex (const wordRe &key) const |
Return patch index for the first match, return -1 if not found. More... | |
label | findPatchID (const word &patchName, const bool allowNotFound=true) const |
Find patch index given a name, return -1 if not found. More... | |
template<class Type > | |
labelHashSet | findPatchIDs () const |
Find patch indices for a given polyPatch type. More... | |
label | whichPatch (const label faceIndex) const |
Return patch index for a given face label. More... | |
const labelList & | patchID () const |
Per boundary face label the patch index. More... | |
const HashTable< labelList > & | groupPatchIDs () const |
The patch indices per patch group. More... | |
void | setGroup (const word &groupName, const labelUList &patchIDs) |
Set/add group with patches. More... | |
labelHashSet | patchSet (const UList< wordRe > &patchNames, const bool warnNotFound=true, const bool useGroups=true) const |
Return the set of patch IDs corresponding to the given names. More... | |
void | matchGroups (const labelUList &patchIDs, wordList &groups, labelHashSet &nonGroupPatches) const |
Match the patches to groups. More... | |
bool | checkParallelSync (const bool report=false) const |
Check whether all procs have all patches and in same order. More... | |
bool | checkDefinition (const bool report=false) const |
Check boundary definition. More... | |
void | movePoints (const pointField &p) |
Correct polyBoundaryMesh after moving points. More... | |
void | updateMesh () |
Correct polyBoundaryMesh after topology update. More... | |
void | reorder (const labelUList &oldToNew, const bool validBoundary) |
Reorders patches. Ordering does not have to be done in. More... | |
virtual bool | writeData (Ostream &os) const |
writeData member function required by regIOobject More... | |
virtual bool | writeObject (IOstreamOption streamOpt, const bool valid) const |
Write using stream options. More... | |
const polyPatch & | operator[] (const word &patchName) const |
Return const reference to polyPatch by name. More... | |
polyPatch & | operator[] (const word &patchName) |
Return reference to polyPatch by name. More... | |
labelList | findIndices (const wordRe &key, bool useGroups=true) const |
Identical to the indices() method (AUG-2018) More... | |
template<class Type > | |
Foam::labelHashSet | findPatchIDs () const |
Public Member Functions inherited from PtrList< T > | |
constexpr | PtrList () noexcept |
Default construct. More... | |
PtrList (const label len) | |
Construct with specified size, each element initialized to nullptr. More... | |
PtrList (const PtrList< T > &list) | |
Copy construct using 'clone()' method on each element. More... | |
PtrList (PtrList< T > &&list) | |
Move construct. More... | |
PtrList (UList< T * > &list) | |
Take ownership of pointers in the list, set old pointers to null. More... | |
template<class CloneArg > | |
PtrList (const PtrList< T > &list, const CloneArg &cloneArgs) | |
Copy construct using 'clone()' method on each element. More... | |
PtrList (PtrList< T > &list, bool reuse) | |
Construct as copy or re-use as specified. More... | |
PtrList (const SLPtrList< T > &list) | |
Copy construct using 'clone()' on each element of SLPtrList<T> More... | |
template<class INew > | |
PtrList (Istream &is, const INew &inew) | |
Construct from Istream using given Istream constructor class. More... | |
PtrList (Istream &is) | |
Construct from Istream using default Istream constructor class. More... | |
~PtrList () | |
Destructor. More... | |
template<class... Args> | |
PtrList< T > | clone (Args &&... args) const |
Make a copy by cloning each of the list elements. More... | |
const T * | set (const label i) const |
void | clear () |
Clear the PtrList. Delete allocated entries and set size to zero. More... | |
void | resize (const label newLen) |
Adjust size of PtrList. More... | |
void | setSize (const label newLen) |
Same as resize() More... | |
template<class... Args> | |
void | emplace_append (Args &&... args) |
Construct and append an element to the end of the list. More... | |
void | append (T *ptr) |
Append an element to the end of the list. More... | |
void | append (autoPtr< T > &ptr) |
Move append an element to the end of the list. More... | |
void | append (autoPtr< T > &&ptr) |
Move append an element to the end of the list. More... | |
void | append (std::unique_ptr< T > &&ptr) |
Move append an element to the end of the list. More... | |
void | append (const refPtr< T > &ptr) |
Move or clone append a refPtr to the end of the list. More... | |
void | append (const tmp< T > &ptr) |
Move or clone append a tmp to the end of the list. More... | |
void | append (PtrList< T > &&other) |
Move append another list to the end of this list. More... | |
template<class... Args> | |
autoPtr< T > | emplace (const label i, Args &&... args) |
Construct and set an element. More... | |
autoPtr< T > | set (const label i, T *ptr) |
Set element to given pointer and return old element (can be null) More... | |
autoPtr< T > | set (const label i, autoPtr< T > &ptr) |
Set element to given autoPtr and return old element. More... | |
autoPtr< T > | set (const label i, autoPtr< T > &&ptr) |
Set element to given autoPtr and return old element. More... | |
autoPtr< T > | set (const label i, std::unique_ptr< T > &&ptr) |
Set element to given unique_ptr and return old element. More... | |
autoPtr< T > | set (const label i, const refPtr< T > &ptr) |
Set element to given refPtr and return old element. More... | |
autoPtr< T > | set (const label i, const tmp< T > &ptr) |
Set element to given tmp and return old element. More... | |
autoPtr< T > | release (const label i) |
Release ownership of the pointer at the given position. More... | |
void | transfer (PtrList< T > &list) |
Transfer into this list and annul the argument list. More... | |
void | operator= (const PtrList< T > &list) |
Copy assignment. More... | |
void | operator= (PtrList< T > &&list) |
Move assignment. More... | |
template<class... Args> | |
Foam::PtrList< T > | clone (Args &&... args) const |
template<class... Args> | |
Foam::autoPtr< T > | emplace (const label i, Args &&... args) |
Public Member Functions inherited from UPtrList< T > | |
constexpr | UPtrList () noexcept |
Default construct. More... | |
UPtrList (const label len) | |
Construct with specified size, each element initialized to nullptr. More... | |
UPtrList (const UPtrList< T > &list) | |
Copy construct (shallow copies addresses) More... | |
UPtrList (UPtrList< T > &&list) | |
Move construct. More... | |
UPtrList (UPtrList< T > &list, bool reuse) | |
Construct as shallow copy or re-use as specified. More... | |
UPtrList (PtrList< T > &list) | |
Shallow copy from PtrList. More... | |
UPtrList (const UList< T * > &list) | |
Construct from UList of pointers (shallow copy) More... | |
UPtrList (UList< T > &list) | |
Construct from UList, taking the address of each list element. More... | |
label | size () const noexcept |
The number of elements in the list. More... | |
bool | empty () const noexcept |
True if the list is empty (ie, size() is zero) More... | |
T & | first () |
Return reference to the first element of the list. More... | |
const T & | first () const |
Return reference to first element of the list. More... | |
T & | last () |
Return reference to the last element of the list. More... | |
const T & | last () const |
Return reference to the last element of the list. More... | |
const T * | test (const label i) const |
T * | get (const label i) |
const T * | get (const label i) const |
const T * | set (const label i) const |
void | clear () |
Set list size to zero. More... | |
void | resize (const label newLen) |
Change the size of the list. More... | |
void | setSize (const label n) |
Alias for resize() More... | |
label | squeezeNull () |
Squeeze out intermediate nullptr entries in the list of pointers. More... | |
void | append (T *ptr) |
Append an element to the end of the list. More... | |
void | append (UPtrList< T > &&other) |
Move append another list to the end of this list. More... | |
void | swap (UPtrList< T > &list) |
Swap content. More... | |
void | transfer (UPtrList< T > &list) |
Transfer contents into this list and annul the argument. More... | |
T * | set (const label i, T *ptr) |
void | reorder (const labelUList &oldToNew, const bool check=false) |
void | sortOrder (const labelUList &order, const bool check=false) |
void | checkNonNull () const |
Check and raise FatalError if any nullptr exists in the list. More... | |
const T & | operator[] (const label i) const |
Return const reference to the element. More... | |
T & | operator[] (const label i) |
Return reference to the element. More... | |
const T * | operator() (const label i) const |
Return const pointer to the element - same as get(). More... | |
void | operator= (const UPtrList< T > &list) |
Copy assignment (shallow copies addresses) More... | |
void | operator= (UPtrList< T > &&list) |
Move assignment. More... | |
T ** | begin_ptr () noexcept |
Iterator to begin of raw pointers traversal (use with caution) More... | |
T ** | end_ptr () noexcept |
Iterator beyond end of raw pointers traversal (use with caution) More... | |
iterator | begin () noexcept |
Return an iterator to begin of UPtrList traversal. More... | |
iterator | end () noexcept |
Return iterator beyond end of UPtrList traversal. More... | |
const_iterator | cbegin () const noexcept |
Return const_iterator to begin of UPtrList traversal. More... | |
const_iterator | cend () const noexcept |
Return const_iterator beyond end of UPtrList traversal. More... | |
const_iterator | begin () const noexcept |
Return const_iterator to begin of UPtrList traversal. More... | |
const_iterator | end () const noexcept |
Return const_iterator beyond end of UPtrList traversal. More... | |
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 dictionary * | findMetaData () const noexcept |
Return pointer to meta-data or nullptr. More... | |
dictionary & | getMetaData () 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... | |
Istream & | readStream (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 labelList & | watchIndices () const noexcept |
Read access to file-monitoring handles. More... | |
labelList & | watchIndices () 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 ®istry, 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 ®istry, 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 ®istry, 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 ®istry) | |
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< IOobject > | clone () const |
Clone. More... | |
autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
Clone resetting registry. More... | |
const objectRegistry & | db () const noexcept |
Return the local objectRegistry. More... | |
const Time & | time () const |
Return Time associated with the objectRegistry. More... | |
const word & | name () const noexcept |
Return the object name. More... | |
const word & | headerClassName () const noexcept |
Return name of the class name read from header. More... | |
word & | headerClassName () noexcept |
Return non-constant access to the class name read from header. More... | |
const string & | note () const noexcept |
Return the optional note. More... | |
string & | note () 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 dictionary * | findMetaData () 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 fileName & | rootPath () const |
Return the Time::rootPath() More... | |
const fileName & | caseName () const |
Return the Time::caseName() More... | |
const fileName & | instance () const noexcept |
Read access to instance path component. More... | |
fileName & | instance () noexcept |
Write access to instance path component. More... | |
const fileName & | local () 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< IOobject > | info () 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... | |
readOption & | readOpt () noexcept |
Access to the read option. More... | |
writeOption & | writeOpt () noexcept |
Access to the write option. More... | |
bool & | registerObject () noexcept |
Access to the register object option. More... | |
bool & | globalObject () 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) |
Friends | |
class | polyMesh |
Declare friendship with polyMesh. More... | |
Ostream & | operator<< (Ostream &os, const polyBoundaryMesh &pbm) |
Additional Inherited Members | |
Public Types inherited from UPtrList< T > | |
typedef T | value_type |
Type of values the list contains. More... | |
typedef T & | reference |
A non-const reference to the value_type. More... | |
typedef const T & | const_reference |
A const reference to the value_type. 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... | |
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 Ostream & | writeBanner (Ostream &os, const bool noSyntaxHint=false) |
Write the standard OpenFOAM file/dictionary banner. More... | |
static Ostream & | writeDivider (Ostream &os) |
Write the standard file section divider. More... | |
static Ostream & | writeEndDivider (Ostream &os) |
Write the standard end file divider. More... | |
Static Public Attributes inherited from IOobject | |
static const Enum< fileCheckTypes > | fileCheckTypesNames |
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... | |
Protected Member Functions inherited from PtrList< T > | |
template<class INew > | |
void | readIstream (Istream &is, const INew &inew) |
Read from Istream using Istream constructor class. More... | |
void | free () |
Delete the allocated entries, but retain the list size. More... | |
Protected Member Functions inherited from UPtrList< T > | |
void | setAddressableSize (const label n) noexcept |
Adjust addressable size. More... | |
UPtrList (Detail::PtrListDetail< T > &&ptrs) | |
Low-level move construct. More... | |
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... | |
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) |
Protected Attributes inherited from UPtrList< T > | |
Detail::PtrListDetail< T > | ptrs_ |
The list of pointers. More... | |
Static Protected Attributes inherited from regIOobject | |
static bool | masterOnlyReading = false |
To flag master-only reading of objects. More... | |
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
Definition at line 62 of file polyBoundaryMesh.H.
polyBoundaryMesh | ( | const IOobject & | io, |
const polyMesh & | mesh | ||
) |
Read constructor given IOobject and a polyMesh reference.
Note point pointers are unset, only used in copying meshes
Definition at line 162 of file polyBoundaryMesh.C.
polyBoundaryMesh | ( | const IOobject & | io, |
const polyMesh & | mesh, | ||
const label | size | ||
) |
Construct given size.
Definition at line 176 of file polyBoundaryMesh.C.
polyBoundaryMesh | ( | const IOobject & | io, |
const polyMesh & | mesh, | ||
const polyPatchList & | ppl | ||
) |
Construct given polyPatchList.
Definition at line 189 of file polyBoundaryMesh.C.
References IOobject::clone(), forAll, patches, PtrList< T >::resize(), PtrList< T >::set(), and UPtrList< T >::size().
|
default |
Destructor.
TypeName | ( | "polyBoundaryMesh" | ) |
Runtime type information.
void clearGeom | ( | ) |
Clear geometry at this level and at patches.
Definition at line 214 of file polyBoundaryMesh.C.
void clearAddressing | ( | ) |
Clear addressing at this level and at patches.
Definition at line 225 of file polyBoundaryMesh.C.
|
inlinenoexcept |
Return the mesh reference.
Definition at line 154 of file polyBoundaryMesh.H.
Referenced by temperatureCoupledBase::alpha(), mappedPatchBase::AMI(), adjointBoundaryCondition< Type >::computePatchGrad(), mappedPatchBase::facePoints(), coupleGroupIdentifier::findOtherPatchID(), Sampled< Type >::haveSampleField(), interpolationCellPatchConstrained< Type >::interpolate(), temperatureCoupledBase::kappa(), mappedPatchBase::lookupMesh(), mappedVariableThicknessWallFvPatch::makeDeltaCoeffs(), mappedPatchBase::map(), mappedPatchFieldBase< Type >::mappedField(), mappedPatchBase::mappedPatchBase(), Sampled< Type >::sampleField(), mappedPatchFieldBase< Type >::sampleField(), adjointBoundaryCondition< Type >::setBoundaryContributionPtr(), and mappedPatchBase::surfPtr().
Foam::UPtrList< const Foam::labelUList > faceCells | ( | ) | const |
Return a list of faceCells for each patch.
Definition at line 289 of file polyBoundaryMesh.C.
References forAll, patches, UPtrList< T >::set(), and UPtrList< T >::size().
Referenced by thermoSingleLayer::Sh(), and thermoSingleLayer::Srho().
const Foam::List< Foam::labelPairList > & neighbourEdges | ( | ) | const |
Per patch the edges on the neighbouring patch.
Is for every external edge the neighbouring patch and neighbouring (external) patch edge label. Note that edge indices are offset by nInternalEdges to keep it as much as possible consistent with coupled patch addressing (where coupling is by local patch face index). Only valid for singly connected polyBoundaryMesh and not parallel
Definition at line 305 of file polyBoundaryMesh.C.
References Foam::abort(), e, PrimitivePatch< FaceList, PointField >::edges(), Foam::endl(), HashTable< T, Key, Hash >::erase(), Foam::FatalError, FatalErrorInFunction, HashTable< T, Key, Hash >::find(), forAll, HashTable< T, Key, Hash >::insert(), PrimitivePatch< FaceList, PointField >::localPoints(), PrimitivePatch< FaceList, PointField >::meshPoints(), patchIdentifier::name(), PrimitivePatch< FaceList, PointField >::nEdges(), PrimitivePatch< FaceList, PointField >::nInternalEdges(), Foam::nl, UPstream::parRun(), HashTable< T, Key, Hash >::size(), UList< T >::size(), and WarningInFunction.
Foam::label nNonProcessor | ( | ) | const |
The number of patches before the first processor patch.
Definition at line 513 of file polyBoundaryMesh.C.
Referenced by fvMeshAdder::add(), meshRefinement::blockLeakFaces(), Foam::nonProcessorPatchNames(), polyMeshAdder::procPatchPairs(), fvMeshSubset::reset(), and dynamicMotionSolverFvMeshAMI::update().
Foam::wordList names | ( | ) | const |
Return a list of patch names.
Definition at line 533 of file polyBoundaryMesh.C.
Referenced by curvatureSeparation::curvatureSeparation(), meshReader::mesh(), meshRefinement::meshedPatches(), Foam::nonProcessorPatchNames(), ParticleErosion< CloudType >::ParticleErosion(), patchInjectionBase::patchInjectionBase(), PatchParticleHistogram< CloudType >::PatchParticleHistogram(), PatchPostProcessing< CloudType >::PatchPostProcessing(), polyMeshAdder::procPatchPairs(), polyMesh::readUpdate(), fvMeshSubset::reset(), and mappedPatchBase::samplePolyPatch().
Foam::wordList types | ( | ) | const |
Return a list of patch types.
Definition at line 539 of file polyBoundaryMesh.C.
Referenced by polyMesh::readUpdate().
Foam::wordList physicalTypes | ( | ) | const |
Foam::labelList patchStarts | ( | ) | const |
Return a list of patch start face indices.
Definition at line 556 of file polyBoundaryMesh.C.
References p.
Foam::labelList patchSizes | ( | ) | const |
Return a list of patch sizes.
Definition at line 567 of file polyBoundaryMesh.C.
References p, and UList< T >::size().
Foam::List< Foam::labelRange > patchRanges | ( | ) | const |
|
noexcept |
The start label of boundary faces in the polyMesh face list.
Same as polyMesh::nInternalFaces()
Definition at line 589 of file polyBoundaryMesh.C.
Referenced by attachPolyTopoChanger::attach(), polyBoundaryMesh::checkDefinition(), Foam::createReconstructMap(), faMeshDecomposition::decomposeMesh(), fvMeshDistribute::distribute(), faMeshMapper::faMeshMapper(), removeCells::getExposedFaces(), fvFieldDecomposer::reset(), and Foam::ensightOutput::writeVolField().
|
noexcept |
The number of boundary faces in the underlying mesh.
Same as polyMesh::nBoundaryFaces()
Definition at line 595 of file polyBoundaryMesh.C.
|
noexcept |
The face range for all boundary faces.
Spans [nInternalFaces, nFaces) of the underlying mesh
Definition at line 601 of file polyBoundaryMesh.C.
Referenced by lumpedPointMovement::writeZonesVTP().
Foam::labelRange range | ( | const label | patchi | ) | const |
Return the range used for boundary faces on patchi.
Always returns an empty range for negative values of patchi, which allows safe use with findIndex or findPatchID.
Definition at line 607 of file polyBoundaryMesh.C.
Foam::labelList indices | ( | const wordRe & | matcher, |
const bool | useGroups = true |
||
) | const |
Return (sorted) patch indices for all matches.
Optionally matches patch groups. A no-op (returns empty list) for an empty matcher
Definition at line 619 of file polyBoundaryMesh.C.
References HashTable< T, Key, Hash >::empty(), Foam::PtrListOps::findMatching(), Foam::PtrListOps::firstMatching(), forAllConstIters, HashSet< Key, Hash >::insert(), wordRe::isPattern(), wordRe::match(), patchId(), and HashTable< T, Key, Hash >::sortedToc().
Referenced by polyBoundaryMesh::findIndices(), fvBoundaryMesh::indices(), viewFactor::initialise(), processorCyclicPolyPatch::patchIDs(), and fieldExtents::read().
Foam::labelList indices | ( | const wordRes & | matcher, |
const bool | useGroups = true |
||
) | const |
Return (sorted) patch indices for all matches.
Optionally matches patch groups. A no-op (returns empty list) for an empty matcher
Definition at line 686 of file polyBoundaryMesh.C.
References HashTable< T, Key, Hash >::empty(), UList< T >::empty(), Foam::PtrListOps::findMatching(), UList< T >::first(), forAllConstIters, HashSet< Key, Hash >::insert(), wordRes::match(), HashTable< T, Key, Hash >::resize(), UList< T >::size(), and HashTable< T, Key, Hash >::sortedToc().
Foam::label findIndex | ( | const wordRe & | key | ) | const |
Return patch index for the first match, return -1 if not found.
A no-op (returns -1) for an empty key
Definition at line 732 of file polyBoundaryMesh.C.
References Foam::PtrListOps::firstMatching().
Find patch index given a name, return -1 if not found.
A no-op (returns -1) for an empty patchName
Definition at line 742 of file polyBoundaryMesh.C.
References polyMesh::defaultRegion, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::PtrListOps::firstMatching(), patchId(), and Foam::Pout.
Referenced by meshRefinement::addPatch(), fvMeshTools::addPatch(), inverseFaceDistanceDiffusivity::correct(), directions::directions(), meshRefinement::getFaceZoneInfo(), mappedPatchBase::lookupPatch(), mappedPatchFieldBase< Type >::mappedField(), meshRefinement::meshedPatches(), RecycleInteraction< CloudType >::RecycleInteraction(), fvMeshSubset::reset(), sampledCuttingPlane::sampledCuttingPlane(), sampledInterface::sampledInterface(), sampledIsoSurface::sampledIsoSurface(), mappedPatchBase::samplePolyPatch(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs(), and Sampled< Type >::value().
labelHashSet findPatchIDs | ( | ) | const |
Find patch indices for a given polyPatch type.
Foam::label whichPatch | ( | const label | faceIndex | ) | const |
Return patch index for a given face label.
Definition at line 790 of file polyBoundaryMesh.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::findLower(), Foam::flatOutput(), found, mesh, primitiveMesh::nFaces(), nFaces(), primitiveMesh::nInternalFaces(), Foam::nl, p, patches, and range.
Referenced by meshRefinement::balance(), addPatchCellLayer::calcExtrudeInfo(), deltaBoundary::cellCenters_d(), polyMeshGeometry::checkFaceDotProduct(), polyMeshGeometry::checkFaceSkewness(), polyMeshGeometry::checkFaceTets(), polyMeshGeometry::checkFaceTwist(), polyMeshGeometry::checkFaceWeights(), faceZone::checkParallelSync(), polyMeshGeometry::checkVolRatio(), adjointBoundaryCondition< Type >::computePatchGrad(), localPointRegion::findDuplicateFacePairs(), patchProbes::findElements(), waWallFunctionFvPatchScalarField::manipulateMatrix(), volSurfaceMapping::mapInternalToSurface(), volSurfaceMapping::mapToField(), volSurfaceMapping::mapToSurface(), volSurfaceMapping::mapToVolume(), polyMeshAdder::mergePoints(), cellPointWeightWallModified::onWall(), patchProbes::sample(), addPatchCellLayer::setRefinement(), perfectInterface::setRefinement(), meshCutAndRemove::setRefinement(), removeFaces::setRefinement(), combineFaces::setRefinement(), duplicatePoints::setRefinement(), and sampledFaceZone::update().
const Foam::labelList & patchID | ( | ) | const |
Per boundary face label the patch index.
Definition at line 434 of file polyBoundaryMesh.C.
References forAll, and patches.
Referenced by polyMeshTetDecomposition::checkFaceTets(), directionalPressureGradientExplicitSource::correct(), FacePostProcessing< CloudType >::FacePostProcessing(), polyMeshTetDecomposition::findFaceBasePts(), interpolationCellPatchConstrained< Type >::interpolate(), isoAdvection::isoAdvection(), and RemoveParcels< CloudType >::RemoveParcels().
const Foam::HashTable< Foam::labelList > & groupPatchIDs | ( | ) | const |
The patch indices per patch group.
Definition at line 459 of file polyBoundaryMesh.C.
void setGroup | ( | const word & | groupName, |
const labelUList & | patchIDs | ||
) |
Set/add group with patches.
Definition at line 470 of file polyBoundaryMesh.C.
References forAll, UList< T >::found(), patches, List< T >::resize(), and UPtrList< T >::size().
Foam::labelHashSet patchSet | ( | const UList< wordRe > & | patchNames, |
const bool | warnNotFound = true , |
||
const bool | useGroups = true |
||
) | const |
Return the set of patch IDs corresponding to the given names.
By default warns if given names are not found. Optionally matches to patchGroups as well as patchNames.
Definition at line 841 of file polyBoundaryMesh.C.
References UList< T >::empty(), Foam::endl(), Foam::findMatchingStrings(), forAllConstIters, HashSet< Key, Hash >::insert(), patchNames(), and WarningInFunction.
Referenced by preservePatches::add(), preservePatches::apply(), inversePointDistanceDiffusivity::correct(), structuredDecomp::decompose(), patchProbes::findElements(), cellDistFuncs::getPatchIDs(), objectivePtLosses::initialize(), patchInjection::patchInjection(), powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), wallShearStress::read(), wallHeatFlux::read(), structuredRenumber::renumber(), Foam::selectPatchFaces(), and shapeOptimisation::shapeOptimisation().
void matchGroups | ( | const labelUList & | patchIDs, |
wordList & | groups, | ||
labelHashSet & | nonGroupPatches | ||
) | const |
Match the patches to groups.
Returns all the (fully matched) groups and any remaining unmatched patches.
Definition at line 910 of file polyBoundaryMesh.C.
References DynamicList< T, SizeMin >::append(), HashTable< T, Key, Hash >::erase(), forAllConstIters, HashTable< T, Key, Hash >::size(), HashTable< T, Key, Hash >::transfer(), and List< T >::transfer().
Check whether all procs have all patches and in same order.
Definition at line 950 of file polyBoundaryMesh.C.
References Foam::endl(), forAll, globalIndex::gather(), Foam::Info, splitCell::master(), IOobject::name(), UPstream::parRun(), Foam::Pout, procAddr(), globalIndex::range(), Foam::reduce(), List< T >::resize(), UPtrList< T >::size(), UList< T >::slice(), and globalIndex::subProcs().
Referenced by fvMeshDistribute::distribute(), fvMeshTools::loadOrCreateMesh(), and Foam::nonProcessorPatchNames().
Check boundary definition.
Definition at line 1038 of file polyBoundaryMesh.C.
References polyBoundaryMesh::checkDefinition(), Foam::endl(), forAll, Foam::Info, mesh, IOobject::name(), primitiveMesh::nInternalFaces(), patchNames(), Foam::Pout, Foam::reduce(), UPtrList< T >::size(), and polyBoundaryMesh::start().
Referenced by polyBoundaryMesh::checkDefinition(), and fvMeshTools::loadOrCreateMesh().
void movePoints | ( | const pointField & | p | ) |
Correct polyBoundaryMesh after moving points.
Definition at line 1095 of file polyBoundaryMesh.C.
References UPstream::blocking, PstreamBuffers::commsType(), UPstream::defaultCommsType, PstreamBuffers::finishedSends(), forAll, polyMesh::globalData(), mesh, UPstream::nonBlocking, p, globalMeshData::patchSchedule(), and UPstream::scheduled.
void updateMesh | ( | ) |
Correct polyBoundaryMesh after topology update.
Definition at line 1141 of file polyBoundaryMesh.C.
References UPstream::blocking, PstreamBuffers::commsType(), UPstream::defaultCommsType, PstreamBuffers::finishedSends(), forAll, polyMesh::globalData(), mesh, UPstream::nonBlocking, globalMeshData::patchSchedule(), and UPstream::scheduled.
Referenced by polyMesh::polyMesh(), and polyMesh::updateMesh().
void reorder | ( | const labelUList & | oldToNew, |
const bool | validBoundary | ||
) |
Reorders patches. Ordering does not have to be done in.
ascending or descending order. Reordering has to be unique. (is shuffle) If validBoundary calls updateMesh() after reordering to recalculate data (so call needs to be parallel sync in that case)
Definition at line 1191 of file polyBoundaryMesh.C.
References forAll, and patches.
Referenced by meshRefinement::addPatch().
writeData member function required by regIOobject
Implements regIOobject.
Definition at line 1215 of file polyBoundaryMesh.C.
References token::BEGIN_LIST, Ostream::beginBlock(), IOstream::check(), Foam::decrIndent(), token::END_LIST, Ostream::endBlock(), FUNCTION_NAME, IOstream::good(), Foam::incrIndent(), Foam::nl, os(), patches, UPtrList< T >::size(), and polyBoundaryMesh::writeData().
Referenced by Foam::operator<<(), and polyBoundaryMesh::writeData().
|
virtual |
Write using stream options.
Reimplemented from regIOobject.
Definition at line 1235 of file polyBoundaryMesh.C.
References IOstreamOption::compression(), IOstreamOption::UNCOMPRESSED, and regIOobject::writeObject().
const Foam::polyPatch & operator[] | ( | const word & | patchName | ) | const |
Return const reference to polyPatch by name.
Definition at line 1248 of file polyBoundaryMesh.C.
References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, and Foam::nl.
Foam::polyPatch & operator[] | ( | const word & | patchName | ) |
Return reference to polyPatch by name.
Definition at line 1267 of file polyBoundaryMesh.C.
References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, and Foam::nl.
Identical to the indices() method (AUG-2018)
Definition at line 329 of file polyBoundaryMesh.H.
References polyBoundaryMesh::indices().
Foam::labelHashSet findPatchIDs | ( | ) | const |
Definition at line 31 of file polyBoundaryMeshTemplates.C.
References forAll, HashSet< Key, Hash >::insert(), patches, and UPtrList< T >::size().
|
friend |
Declare friendship with polyMesh.
Definition at line 106 of file polyBoundaryMesh.H.
|
friend |