Classes | Public Member Functions | Static Public Member Functions | Friends | List of all members
refinementHistory Class Reference

All refinement history. Used in unrefinement. More...

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

Classes

class  splitCell8
 

Public Member Functions

 TypeName ("refinementHistory")
 
 refinementHistory (const IOobject &)
 
 refinementHistory (const IOobject &, const List< splitCell8 > &splitCells, const labelList &visibleCells, const bool active)
 
 refinementHistory (const IOobject &, const label nCells)
 
 refinementHistory (const IOobject &, const label nCells, const bool active)
 
 refinementHistory (const IOobject &, const refinementHistory &)
 
 refinementHistory (const IOobject &, const UPtrList< const labelList > &cellMaps, const UPtrList< const refinementHistory > &)
 
 refinementHistory (const IOobject &, Istream &)
 
const labelListvisibleCells () const
 
const DynamicList< splitCell8 > & splitCells () const
 
const DynamicList< label > & freeSplitCells () const
 
bool active () const
 
boolactive ()
 
label parentIndex (const label celli) const
 
void storeSplit (const label celli, const labelList &addedCells)
 
void combineCells (const label masterCelli, const labelList &combinedCells)
 
autoPtr< refinementHistoryclone (const IOobject &io, const labelList &decomposition, const labelList &splitCellProc, const labelList &splitCellNum, const label procI, labelList &oldToNewSplit) const
 
autoPtr< refinementHistoryclone (const IOobject &io, const labelList &cellMap) const
 
void updateMesh (const mapPolyMesh &)
 
void subset (const labelList &pointMap, const labelList &faceMap, const labelList &cellMap)
 
void distribute (const mapDistributePolyMesh &)
 
void compact ()
 
void resize (const label nCells)
 
void writeDebug () const
 
virtual bool read ()
 
virtual bool readData (Istream &)
 
virtual bool writeData (Ostream &) const
 
void add (boolList &blockedFace, PtrList< labelList > &specifiedProcessorFaces, labelList &specifiedProcessor, List< labelPair > &explicitConnections) const
 
void apply (const boolList &blockedFace, const PtrList< labelList > &specifiedProcessorFaces, const labelList &specifiedProcessor, const List< labelPair > &explicitConnections, labelList &decomposition) const
 
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 
 regIOobject (const IOobject &io, const bool isTimeObject=false)
 
 regIOobject (const regIOobject &rio)
 
 regIOobject (const regIOobject &rio, bool registerCopy)
 
 regIOobject (const word &newName, const regIOobject &, bool registerCopy)
 
 regIOobject (const IOobject &io, const regIOobject &rio)
 
virtual ~regIOobject ()
 
bool checkIn ()
 
bool checkOut ()
 
virtual void addWatch ()
 
bool ownedByRegistry () const
 
bool store ()
 
void release (const bool unregister=false)
 
label eventNo () const
 
label & eventNo ()
 
bool upToDate (const regIOobject &) const
 
bool upToDate (const regIOobject &, const regIOobject &) const
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const
 
void setUpToDate ()
 
virtual void rename (const word &newName)
 
const dictionaryfindMetaData () const noexcept
 
dictionarygetMetaData () noexcept
 
void removeMetaData ()
 
virtual void updateMetaData ()
 
virtual fileName filePath () const
 
bool headerOk ()
 
IstreamreadStream (const word &, const bool valid=true)
 
void close ()
 
virtual label addWatch (const fileName &)
 
const labelListwatchIndices () const
 
labelListwatchIndices ()
 
virtual bool modified () const
 
virtual bool readIfModified ()
 
virtual bool writeObject (IOstreamOption streamOpt, const bool valid) const
 
virtual bool write (const bool valid=true) const
 
virtual bool global () const
 
void operator= (const IOobject &io)
 
virtual bool writeObject (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType comp, const bool valid) const
 
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 
 IOobject (const IOobject &)=default
 
virtual ~IOobject ()=default
 
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false)
 
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false)
 
 IOobject (const fileName &path, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false)
 
 IOobject (const IOobject &io, const objectRegistry &registry)
 
 IOobject (const IOobject &io, const word &name)
 
 IOobject (const IOobject &io, readOption, writeOption)
 
autoPtr< IOobjectclone () const
 
autoPtr< IOobjectclone (const objectRegistry &registry) const
 
const objectRegistrydb () const noexcept
 
const Timetime () const
 
const wordname () const noexcept
 
const wordheaderClassName () const noexcept
 
wordheaderClassName () noexcept
 
const stringnote () const noexcept
 
stringnote () noexcept
 
bool registerObject () const noexcept
 
bool registerObject (bool on) noexcept
 
bool globalObject () const noexcept
 
bool globalObject (bool on) noexcept
 
unsigned labelByteSize () const noexcept
 
unsigned scalarByteSize () const noexcept
 
bool isHeaderClassName (const word &clsName) const
 
template<class Type >
bool isHeaderClassName () const
 
readOption readOpt () const noexcept
 
readOption readOpt (readOption opt) noexcept
 
writeOption writeOpt () const noexcept
 
writeOption writeOpt (writeOption opt) noexcept
 
word group () const
 
word member () const
 
const fileNamerootPath () const
 
const fileNamecaseName () const
 
const fileNameinstance () const noexcept
 
fileNameinstance () noexcept
 
const fileNamelocal () const noexcept
 
fileName path () const
 
fileName path (const word &instance, const fileName &local=fileName::null) const
 
fileName objectPath () const
 
fileName objectRelPath () const
 
fileName localFilePath (const word &typeName, const bool search=true) const
 
fileName globalFilePath (const word &typeName, const bool search=true) const
 
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)
 
template<class Type >
void warnNoRereading () const
 
bool writeHeader (Ostream &os) const
 
bool writeHeader (Ostream &os, const word &objectType) const
 
void writeHeader (dictionary &dict, IOstreamOption streamOpt) const
 
void writeHeader (dictionary &dict, const word &objectType, IOstreamOption streamOpt) const
 
bool good () const noexcept
 
bool bad () const noexcept
 
InfoProxy< IOobjectinfo () const
 
void operator= (const IOobject &io)
 
readOptionreadOpt () noexcept
 
writeOptionwriteOpt () noexcept
 
boolregisterObject () noexcept
 
boolglobalObject () noexcept
 
template<>
bool isHeaderClassName () const
 
template<class StringType >
Foam::word groupName (StringType base, const word &group)
 

Static Public Member Functions

static void removeFiles (const polyMesh &)
 
- Static Public Member Functions inherited from regIOobject
template<class Type >
static Type & store (Type *p)
 
template<class Type >
static Type & store (autoPtr< Type > &ptr)
 
template<class Type >
static Type & store (autoPtr< Type > &&ptr)
 
template<class Type >
static Type & store (refPtr< Type > &ptr)
 
template<class Type >
static Type & store (refPtr< Type > &&ptr)
 
template<class Type >
static Type & store (tmp< Type > &ptr)
 
template<class Type >
static Type & store (tmp< Type > &&ptr)
 
- Static Public Member Functions inherited from IOobject
static bool bannerEnabled () noexcept
 
static bool bannerEnabled (bool on) noexcept
 
static bool fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name)
 
template<class StringType >
static word groupName (StringType base, const word &group)
 
static word group (const word &name)
 
static word member (const word &name)
 
static word scopedName (const std::string &scope, const word &name)
 
static IOobject selectIO (const IOobject &io, const fileName &altFile, const word &ioName="")
 
static OstreamwriteBanner (Ostream &os, const bool noSyntaxHint=false)
 
static OstreamwriteDivider (Ostream &os)
 
static OstreamwriteEndDivider (Ostream &os)
 

Friends

Istreamoperator>> (Istream &, refinementHistory &)
 
Ostreamoperator<< (Ostream &, const refinementHistory &)
 

Additional Inherited Members

- Public Types inherited from IOobject
enum  objectState : char { GOOD, BAD }
 
enum  readOption : char { MUST_READ, MUST_READ_IF_MODIFIED, READ_IF_PRESENT, NO_READ }
 
enum  writeOption : char { AUTO_WRITE = 0, NO_WRITE = 1 }
 
enum  fileCheckTypes : char { timeStamp, timeStampMaster, inotify, inotifyMaster }
 
- Static Public Attributes inherited from IOobject
static const Enum< fileCheckTypesfileCheckTypesNames
 
static char scopeSeparator
 
static fileCheckTypes fileModificationChecking
 
static float fileModificationSkew
 
static int maxFileModificationPolls
 
- Protected Member Functions inherited from regIOobject
bool readHeaderOk (const IOstreamOption::streamFormat fmt, const word &typeName)
 
- Protected Member Functions inherited from IOobject
void setBad (const string &s)
 
- 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
 

Detailed Description

All refinement history. Used in unrefinement.

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.

Source files

Definition at line 98 of file refinementHistory.H.

Constructor & Destructor Documentation

◆ refinementHistory() [1/7]

refinementHistory ( const IOobject io)
explicit

◆ refinementHistory() [2/7]

refinementHistory ( const IOobject io,
const List< splitCell8 > &  splitCells,
const labelList visibleCells,
const bool  active 
)

◆ refinementHistory() [3/7]

refinementHistory ( const IOobject io,
const label  nCells 
)

◆ refinementHistory() [4/7]

refinementHistory ( const IOobject io,
const label  nCells,
const bool  active 
)

◆ refinementHistory() [5/7]

refinementHistory ( const IOobject io,
const refinementHistory rh 
)

Definition at line 727 of file refinementHistory.C.

References Foam::expressions::patchExpr::debug, Foam::endl(), and Foam::Pout.

Here is the call graph for this function:

◆ refinementHistory() [6/7]

refinementHistory ( const IOobject io,
const UPtrList< const labelList > &  cellMaps,
const UPtrList< const refinementHistory > &  refs 
)

◆ refinementHistory() [7/7]

refinementHistory ( const IOobject io,
Istream is 
)
explicit

Definition at line 862 of file refinementHistory.C.

References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::Pout, and Foam::returnReduce().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "refinementHistory"  )

◆ visibleCells()

const labelList& visibleCells ( ) const
inline

Definition at line 264 of file refinementHistory.H.

Referenced by hexRef8::hexRef8().

Here is the caller graph for this function:

◆ splitCells()

const DynamicList<splitCell8>& splitCells ( ) const
inline

Definition at line 270 of file refinementHistory.H.

◆ freeSplitCells()

const DynamicList<label>& freeSplitCells ( ) const
inline

Definition at line 276 of file refinementHistory.H.

◆ active() [1/2]

bool active ( ) const
inline

Definition at line 282 of file refinementHistory.H.

Referenced by hexRef8::hexRef8().

Here is the caller graph for this function:

◆ active() [2/2]

bool& active ( )
inline

Definition at line 288 of file refinementHistory.H.

◆ parentIndex()

label parentIndex ( const label  celli) const
inline

Definition at line 294 of file refinementHistory.H.

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

Here is the call graph for this function:

◆ storeSplit()

void storeSplit ( const label  celli,
const labelList addedCells 
)

Definition at line 1633 of file refinementHistory.C.

References forAll.

◆ combineCells()

void combineCells ( const label  masterCelli,
const labelList combinedCells 
)

Definition at line 1671 of file refinementHistory.C.

References refinementHistory::splitCell8::addedCellsPtr_, and forAll.

◆ clone() [1/2]

Foam::autoPtr< Foam::refinementHistory > clone ( const IOobject io,
const labelList decomposition,
const labelList splitCellProc,
const labelList splitCellNum,
const label  procI,
labelList oldToNewSplit 
) const

Definition at line 888 of file refinementHistory.C.

References DynamicList::append(), forAll, List::setSize(), DynamicList::shrink(), and split().

Here is the call graph for this function:

◆ clone() [2/2]

Foam::autoPtr< Foam::refinementHistory > clone ( const IOobject io,
const labelList cellMap 
) const

Definition at line 1009 of file refinementHistory.C.

References forAll, and Foam::Zero.

◆ updateMesh()

void updateMesh ( const mapPolyMesh map)

◆ subset()

void subset ( const labelList pointMap,
const labelList faceMap,
const labelList cellMap 
)

Definition at line 1139 of file refinementHistory.C.

References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::Pout.

Here is the call graph for this function:

◆ distribute()

void distribute ( const mapDistributePolyMesh map)

◆ compact()

void compact ( )

Definition at line 1470 of file refinementHistory.C.

References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Pout, and split().

Here is the call graph for this function:

◆ resize()

void resize ( const label  nCells)

Definition at line 1073 of file refinementHistory.C.

References Foam::expressions::patchExpr::debug, Foam::endl(), and Foam::Pout.

Here is the call graph for this function:

◆ writeDebug()

void writeDebug ( ) const

Definition at line 1626 of file refinementHistory.C.

◆ read()

bool read ( )
virtual

Reimplemented from regIOobject.

Definition at line 1694 of file refinementHistory.C.

References Foam::returnReduce().

Referenced by hexRef8::hexRef8().

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

◆ readData()

bool readData ( Istream is)
virtual

Reimplemented from regIOobject.

Definition at line 1705 of file refinementHistory.C.

References IOstream::bad().

Here is the call graph for this function:

◆ writeData()

bool writeData ( Ostream os) const
virtual

Implements regIOobject.

Definition at line 1712 of file refinementHistory.C.

References IOstream::good(), and os().

Here is the call graph for this function:

◆ add()

void add ( boolList blockedFace,
PtrList< labelList > &  specifiedProcessorFaces,
labelList specifiedProcessor,
List< labelPair > &  explicitConnections 
) const

◆ apply()

void apply ( const boolList blockedFace,
const PtrList< labelList > &  specifiedProcessorFaces,
const labelList specifiedProcessor,
const List< labelPair > &  explicitConnections,
labelList decomposition 
) const

Definition at line 482 of file refinementHistory.C.

References IOobject::db(), Foam::expressions::patchExpr::debug, Foam::endl(), forAll, Foam::Info, mesh, Foam::reduce(), and Foam::type().

Here is the call graph for this function:

◆ removeFiles()

void removeFiles ( const polyMesh mesh)
static

Definition at line 1720 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().

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

Friends And Related Function Documentation

◆ operator>>

Istream& operator>> ( Istream ,
refinementHistory  
)
friend

◆ operator<<

Ostream& operator<< ( Ostream ,
const refinementHistory  
)
friend

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