All refinement history. Used in unrefinement. More...
Classes | |
| class | splitCell8 |
Public Member Functions | |
| TypeName ("refinementHistory") | |
| refinementHistory (const IOobject &) | |
| Construct (read) given an IOobject. More... | |
| refinementHistory (const IOobject &, const List< splitCell8 > &splitCells, const labelList &visibleCells, const bool active) | |
| Construct (read) or construct from components. More... | |
| refinementHistory (const IOobject &, const label nCells) | |
| refinementHistory (const IOobject &, const label nCells, const bool active) | |
| refinementHistory (const IOobject &, const refinementHistory &) | |
| Construct as copy. More... | |
| refinementHistory (const IOobject &, const UPtrList< const labelList > &cellMaps, const UPtrList< const refinementHistory > &) | |
| Construct from multiple refinement histories. More... | |
| refinementHistory (const IOobject &, Istream &) | |
| Construct from Istream. More... | |
| const labelList & | visibleCells () const |
| const DynamicList< splitCell8 > & | splitCells () const |
| Storage for splitCell8s. More... | |
| const DynamicList< label > & | freeSplitCells () const |
| Cache of unused indices in splitCells. More... | |
| bool | active () const |
| Is there unrefinement history? More... | |
| bool & | active () |
| Is there unrefinement history? More... | |
| label | parentIndex (const label celli) const |
| Get parent of cell. More... | |
| void | storeSplit (const label celli, const labelList &addedCells) |
| Store splitting of cell into 8. More... | |
| void | combineCells (const label masterCelli, const labelList &combinedCells) |
| Store combining 8 cells into master. More... | |
| autoPtr< refinementHistory > | clone (const IOobject &io, const labelList &decomposition, const labelList &splitCellProc, const labelList &splitCellNum, const label procI, labelList &oldToNewSplit) const |
| Low level clone. More... | |
| autoPtr< refinementHistory > | clone (const IOobject &io, const labelList &cellMap) const |
| Create clone from subset. More... | |
| void | updateMesh (const mapPolyMesh &) |
| Update numbering for mesh changes. More... | |
| void | subset (const labelList &pointMap, const labelList &faceMap, const labelList &cellMap) |
| Update numbering for subsetting. More... | |
| void | distribute (const mapDistributePolyMesh &) |
| Update local numbering for mesh redistribution. More... | |
| void | compact () |
| Compact splitCells_. Removes all freeSplitCells_ elements. More... | |
| void | resize (const label nCells) |
| Extend/shrink storage. additional visibleCells_ elements get. More... | |
| void | writeDebug () const |
| Debug write. More... | |
| virtual bool | read () |
| Read object. If global number of visible cells > 0 becomes active. More... | |
| virtual bool | readData (Istream &) |
| ReadData function required for regIOobject read operation. Note: More... | |
| virtual bool | writeData (Ostream &) const |
| WriteData function required for regIOobject write operation. More... | |
| void | add (boolList &blockedFace, PtrList< labelList > &specifiedProcessorFaces, labelList &specifiedProcessor, List< labelPair > &explicitConnections) const |
| Add my decomposition constraints. More... | |
| void | apply (const boolList &blockedFace, const PtrList< labelList > &specifiedProcessorFaces, const labelList &specifiedProcessor, const List< labelPair > &explicitConnections, labelList &decomposition) const |
| Apply any additional post-decomposition constraints. More... | |
Public Member Functions inherited from regIOobject | |
| TypeName ("regIOobject") | |
| Runtime type information. More... | |
| regIOobject (const IOobject &io, const bool isTime=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 | ownedByRegistry () const |
| Is this object owned by the registry? More... | |
| bool | store () |
| void | release (const bool unregister=false) |
| Release ownership of this object from its registry. More... | |
| label | eventNo () const |
| Event number at last update. More... | |
| label & | eventNo () |
| 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... | |
| virtual fileName | filePath () const |
| Return complete path + object name if the file exists. More... | |
| bool | headerOk () |
| Read and check header info. 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 label | addWatch (const fileName &) |
| Add file watch for fileName on object if not yet watched. More... | |
| const labelList & | watchIndices () const |
| Return file-monitoring handles. More... | |
| labelList & | watchIndices () |
| Return file-monitoring handles. More... | |
| virtual bool | modified () const |
| virtual bool | readIfModified () |
| Read object if modified (as set by call to modified) 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 (IOstream::streamFormat fmt, IOstream::versionNumber ver, IOstream::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 r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true) | |
| Construct from name, instance, registry, io options. More... | |
| IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry ®istry, readOption r=NO_READ, writeOption w=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 r=NO_READ, writeOption w=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... | |
| autoPtr< IOobject > | clone () const |
| Clone. More... | |
| autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
| Clone resetting registry. More... | |
| const objectRegistry & | db () const |
| Return the local objectRegistry. More... | |
| const Time & | time () const |
| Return time. More... | |
| const word & | name () const |
| Return name. More... | |
| const word & | headerClassName () const |
| Return name of the class name read from header. More... | |
| word & | headerClassName () |
| Return non-constant access to the class name read from header. More... | |
| const string & | note () const |
| Return the optional note. More... | |
| string & | note () |
| Return non-constant access to the optional note. More... | |
| bool | registerObject () const |
| Should object created with this IOobject be registered? More... | |
| bool & | registerObject () |
| Should object created with this IOobject be registered? More... | |
| bool | globalObject () const |
| Is object same for all processors? More... | |
| bool & | globalObject () |
| Is object same for all processors? More... | |
| unsigned | labelByteSize () const |
| The label byte-size, possibly read from the header. More... | |
| unsigned | scalarByteSize () const |
| The scalar byte-size, possibly read from the header. More... | |
| bool | isHeaderClassName (const word &clsName) const |
| Test if headerClassName() equals the given class name. More... | |
| template<class Type > | |
| bool | isHeaderClassName () const |
| Test if headerClassName() equals Type::typeName. More... | |
| readOption | readOpt () const |
| The read option. More... | |
| readOption & | readOpt () |
| Non-constant access to the read option. More... | |
| writeOption | writeOpt () const |
| The write option. More... | |
| writeOption & | writeOpt () |
| Non-constant access to the write option. 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 |
| const fileName & | caseName () const |
| const fileName & | instance () const |
| fileName & | instance () |
| const fileName & | local () const |
| 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 | 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... | |
| bool | readHeader (Istream &is) |
| Read header. More... | |
| 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. More... | |
| bool | writeHeader (Ostream &os, const word &objectType) const |
| Write header. Allow override of type. More... | |
| bool | good () const |
| bool | bad () const |
| InfoProxy< IOobject > | info () const |
| Return info proxy. More... | |
| void | operator= (const IOobject &io) |
| template<> | |
| bool | isHeaderClassName () const |
Specialization for void always returns true (no headerClassName check). More... | |
| template<class StringType > | |
| Foam::word | groupName (StringType base, const word &group) |
| template<class StringType > | |
| Foam::word | scopedName (StringType scope, const word &name) |
Static Public Member Functions | |
| static void | removeFiles (const polyMesh &) |
| Helper: remove all sets files from mesh instance. More... | |
Static Public Member Functions inherited from regIOobject | |
| template<class Type > | |
| static Type & | store (Type *p) |
| template<class Type > | |
| static Type & | store (autoPtr< Type > &aptr) |
| template<class Type > | |
| static Type & | store (autoPtr< Type > &&aptr) |
| template<class Type > | |
| static Type & | store (tmp< Type > &tptr) |
| template<class Type > | |
| static Type & | store (tmp< Type > &&tptr) |
Static Public Member Functions inherited from IOobject | |
| 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... | |
| template<class StringType > | |
| static word | scopedName (StringType 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, bool noHint=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... | |
Friends | |
| Istream & | operator>> (Istream &, refinementHistory &) |
| Istream operator. Note: does not do a reduction - does not set. More... | |
| Ostream & | operator<< (Ostream &, const refinementHistory &) |
Additional Inherited Members | |
Public Types inherited from IOobject | |
| enum | objectState : char { GOOD, BAD } |
| Enumeration defining the valid states of an IOobject. More... | |
| enum | readOption : char { MUST_READ, MUST_READ_IF_MODIFIED, READ_IF_PRESENT, NO_READ } |
| Enumeration defining the read options. More... | |
| enum | writeOption : char { AUTO_WRITE = 0, NO_WRITE = 1 } |
| Enumeration defining the write options. More... | |
| enum | fileCheckTypes : char { timeStamp, timeStampMaster, inotify, inotifyMaster } |
| Enumeration defining the file checking options. More... | |
Static Public Attributes inherited from regIOobject | |
| static float | fileModificationSkew |
| static int | maxFileModificationPolls |
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... | |
Protected Member Functions inherited from regIOobject | |
| bool | readHeaderOk (const IOstream::streamFormat PstreamFormat, const word &typeName) |
| Helper: check readOpt flags and read if necessary. More... | |
| Istream * | objectStream () |
| Construct and return an IFstream for the object. More... | |
Protected Member Functions inherited from IOobject | |
| void | setBad (const string &s) |
| Set the object state to bad. More... | |
Static Protected Attributes inherited from regIOobject | |
| static bool | masterOnlyReading = false |
| To flag master-only reading of objects. More... | |
All refinement history. Used in unrefinement.
- visibleCells: valid for the current mesh and contains per cell -1 (cell unrefined) or an index into splitCells_.
E.g. 2 cells, cell 1 gets refined so end up with 9 cells:
// splitCells
9
(
-1 (1 2 3 4 5 6 7 8)
0 0()
0 0()
0 0()
0 0()
0 0()
0 0()
0 0()
0 0()
)
// visibleCells
9(-1 1 2 3 4 5 6 7 8)
So cell0 (visibleCells=-1) is unrefined. Cells 1-8 have all valid splitCells entries which are:
The parent 0 refers back to the splitcell entries.
Definition at line 102 of file refinementHistory.H.
|
explicit |
Construct (read) given an IOobject.
If global number of visible cells > 0 becomes active
Definition at line 549 of file refinementHistory.C.
References regIOobject::close(), Foam::expressions::patchExpr::debug, Foam::endl(), regIOobject::headerOk(), IOobject::MUST_READ, IOobject::MUST_READ_IF_MODIFIED, Foam::Pout, IOobject::READ_IF_PRESENT, IOobject::readOpt(), regIOobject::readStream(), and Foam::returnReduce().
| refinementHistory | ( | const IOobject & | io, |
| const List< splitCell8 > & | splitCells, | ||
| const labelList & | visibleCells, | ||
| const bool | active | ||
| ) |
Construct (read) or construct from components.
Definition at line 586 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), IOobject::MUST_READ, IOobject::MUST_READ_IF_MODIFIED, Foam::Pout, IOobject::READ_IF_PRESENT, and IOobject::readOpt().
| refinementHistory | ( | const IOobject & | io, |
| const label | nCells | ||
| ) |
Construct (read) or construct from initial number of cells (all visible).
If global number of visible cells > 0 becomes active
Definition at line 629 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), IOobject::MUST_READ, IOobject::MUST_READ_IF_MODIFIED, Foam::Pout, IOobject::READ_IF_PRESENT, IOobject::readOpt(), and Foam::returnReduce().
| refinementHistory | ( | const IOobject & | io, |
| const label | nCells, | ||
| const bool | active | ||
| ) |
Construct (read) or construct from initial number of cells (all visible) and active flag
Definition at line 683 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), IOobject::MUST_READ, IOobject::MUST_READ_IF_MODIFIED, Foam::Pout, IOobject::READ_IF_PRESENT, and IOobject::readOpt().
| refinementHistory | ( | const IOobject & | io, |
| const refinementHistory & | rh | ||
| ) |
Construct as copy.
Definition at line 734 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), and Foam::Pout.
| refinementHistory | ( | const IOobject & | io, |
| const UPtrList< const labelList > & | cellMaps, | ||
| const UPtrList< const refinementHistory > & | refs | ||
| ) |
Construct from multiple refinement histories.
If global number of visible cells > 0 becomes active
Definition at line 754 of file refinementHistory.C.
References refinementHistory::splitCell8::addedCellsPtr_, Foam::expressions::patchExpr::debug, Foam::endl(), forAll, mesh, IOobject::MUST_READ, IOobject::MUST_READ_IF_MODIFIED, primitiveMesh::nCells(), refinementHistory::splitCell8::parent_, Foam::Pout, IOobject::READ_IF_PRESENT, IOobject::readOpt(), DynamicList< T, SizeMin >::setSize(), FixedList< T, N >::setSize(), UPtrList< T >::size(), and WarningInFunction.
|
explicit |
Construct from Istream.
If global number of visible cells > 0 becomes active
Definition at line 869 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::Pout, and Foam::returnReduce().
| TypeName | ( | "refinementHistory" | ) |
|
inline |
Per cell in the current mesh (i.e. visible) either -1 (unrefined) or an index into splitCells.
Definition at line 268 of file refinementHistory.H.
Referenced by hexRef8::hexRef8().
|
inline |
Storage for splitCell8s.
Definition at line 274 of file refinementHistory.H.
|
inline |
Cache of unused indices in splitCells.
Definition at line 280 of file refinementHistory.H.
|
inline |
Is there unrefinement history?
Definition at line 286 of file refinementHistory.H.
Referenced by hexRef8::hexRef8().
|
inline |
Is there unrefinement history?
Definition at line 292 of file refinementHistory.H.
|
inline |
Get parent of cell.
Definition at line 298 of file refinementHistory.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
| void storeSplit | ( | const label | celli, |
| const labelList & | addedCells | ||
| ) |
Store splitting of cell into 8.
Definition at line 1640 of file refinementHistory.C.
References forAll.
| void combineCells | ( | const label | masterCelli, |
| const labelList & | combinedCells | ||
| ) |
Store combining 8 cells into master.
Definition at line 1678 of file refinementHistory.C.
References refinementHistory::splitCell8::addedCellsPtr_, and forAll.
| Foam::autoPtr< Foam::refinementHistory > clone | ( | const IOobject & | io, |
| const labelList & | decomposition, | ||
| const labelList & | splitCellProc, | ||
| const labelList & | splitCellNum, | ||
| const label | procI, | ||
| labelList & | oldToNewSplit | ||
| ) | const |
Low level clone.
Definition at line 895 of file refinementHistory.C.
References List< T >::append(), forAll, List< T >::setSize(), and split().
| Foam::autoPtr< Foam::refinementHistory > clone | ( | const IOobject & | io, |
| const labelList & | cellMap | ||
| ) | const |
Create clone from subset.
Definition at line 1016 of file refinementHistory.C.
References forAll, and Foam::Zero.
| void updateMesh | ( | const mapPolyMesh & | map | ) |
Update numbering for mesh changes.
Definition at line 1100 of file refinementHistory.C.
References Foam::abort(), mapPolyMesh::cellMap(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Pout, and mapPolyMesh::reverseCellMap().
Update numbering for subsetting.
Definition at line 1146 of file refinementHistory.C.
References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::Pout.
| void distribute | ( | const mapDistributePolyMesh & | map | ) |
Update local numbering for mesh redistribution.
Can only distribute clusters sent across in one go; cannot handle parts recombined in multiple passes.
Definition at line 1227 of file refinementHistory.C.
References Foam::abort(), UPstream::blocking, mapDistributePolyMesh::cellMap(), mapDistributeBase::constructMap(), Foam::FatalError, FatalErrorInFunction, forAll, mesh, primitiveMesh::nCells(), UPstream::nProcs(), UPstream::parRun(), split(), mapDistributeBase::subMap(), and Foam::Zero.
| void compact | ( | ) |
Compact splitCells_. Removes all freeSplitCells_ elements.
Definition at line 1477 of file refinementHistory.C.
References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Pout, and split().
| void resize | ( | const label | nCells | ) |
Extend/shrink storage. additional visibleCells_ elements get.
set to -1.
Definition at line 1080 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), and Foam::Pout.
| void writeDebug | ( | ) | const |
Debug write.
Definition at line 1633 of file refinementHistory.C.
|
virtual |
Read object. If global number of visible cells > 0 becomes active.
Reimplemented from regIOobject.
Definition at line 1701 of file refinementHistory.C.
References Foam::returnReduce().
Referenced by hexRef8::hexRef8().
ReadData function required for regIOobject read operation. Note:
does not do a reduction - does not set active_ flag
Reimplemented from regIOobject.
Definition at line 1712 of file refinementHistory.C.
References IOstream::bad().
WriteData function required for regIOobject write operation.
Implements regIOobject.
Definition at line 1719 of file refinementHistory.C.
References IOstream::good().
| void add | ( | boolList & | blockedFace, |
| PtrList< labelList > & | specifiedProcessorFaces, | ||
| labelList & | specifiedProcessor, | ||
| List< labelPair > & | explicitConnections | ||
| ) | const |
Add my decomposition constraints.
Definition at line 443 of file refinementHistory.C.
References IOobject::db(), Foam::expressions::patchExpr::debug, Foam::endl(), forAll, Foam::Info, mesh, Foam::reduce(), List< T >::setSize(), syncTools::syncFaceList(), and Foam::type().
| void apply | ( | const boolList & | blockedFace, |
| const PtrList< labelList > & | specifiedProcessorFaces, | ||
| const labelList & | specifiedProcessor, | ||
| const List< labelPair > & | explicitConnections, | ||
| labelList & | decomposition | ||
| ) | const |
Apply any additional post-decomposition constraints.
Definition at line 489 of file refinementHistory.C.
References IOobject::db(), Foam::expressions::patchExpr::debug, Foam::endl(), forAll, Foam::Info, mesh, Foam::reduce(), and Foam::type().
|
static |
Helper: remove all sets files from mesh instance.
Definition at line 1727 of file refinementHistory.C.
References Foam::expressions::patchExpr::debug, DebugVar, Foam::exists(), polyMesh::facesInstance(), mesh, polyMesh::meshSubDir, IOobject::path(), and Foam::rm().
Referenced by hexRef8::removeFiles(), and hexRef8::write().
|
friend |
Istream operator. Note: does not do a reduction - does not set.
active_ flag
|
friend |