85 rio.
rename(
"refinementHistory");
108 if (data.cellLevelPtr_.valid())
111 rio.
rename(data.cellLevelPtr_().name());
122 if (data.pointLevelPtr_.valid())
125 rio.
rename(data.pointLevelPtr_().name());
136 if (data.level0EdgePtr_.valid())
139 rio.
rename(data.level0EdgePtr_().name());
146 if (data.refHistoryPtr_.valid())
149 rio.
rename(data.refHistoryPtr_().name());
151 refHistoryPtr_ = data.refHistoryPtr_().clone(rio, cellMap);
168 if (procDatas[0].cellLevelPtr_.valid())
171 rio.
rename(procDatas[0].cellLevelPtr_().
name());
178 const labelList& procCellLevel = procDatas[procI].cellLevelPtr_();
186 if (procDatas[0].pointLevelPtr_.valid())
189 rio.
rename(procDatas[0].pointLevelPtr_().
name());
192 labelList& pointLevel = pointLevelPtr_();
196 const labelList& procPointLevel = procDatas[procI].pointLevelPtr_();
204 if (procDatas[0].level0EdgePtr_.valid())
207 rio.
rename(procDatas[0].level0EdgePtr_().
name());
214 procDatas[0].level0EdgePtr_()
222 if (procDatas[0].refHistoryPtr_.valid())
225 rio.
rename(procDatas[0].refHistoryPtr_().
name());
230 procRefs.set(i, &procDatas[i].refHistoryPtr_());
259 if (hasCellLevel && !cellLevelPtr_.valid())
268 if (hasPointLevel && !pointLevelPtr_.valid())
283 scalar masterLen = level0EdgePtr_().value();
285 if (!level0EdgePtr_.valid())
302 if (hasHistory && !refHistoryPtr_.valid())
305 rio.
rename(
"refinementHistory");
314 if (cellLevelPtr_.valid())
319 if (pointLevelPtr_.valid())
327 if (refHistoryPtr_.valid() && refHistoryPtr_().active())
329 refHistoryPtr_().updateMesh(map);
337 if (cellLevelPtr_.valid())
341 if (pointLevelPtr_.valid())
348 if (refHistoryPtr_.valid() && refHistoryPtr_().active())
350 refHistoryPtr_().distribute(map);
358 if (cellLevelPtr_.valid())
360 ok = ok && cellLevelPtr_().write();
362 if (pointLevelPtr_.valid())
364 ok = ok && pointLevelPtr_().write();
366 if (level0EdgePtr_.valid())
368 ok = ok && level0EdgePtr_().write();
370 if (refHistoryPtr_.valid())
372 ok = ok && refHistoryPtr_().write();
#define forAll(list, i)
Loop across all elements in list.
const mapDistribute & pointMap() const
Point distribute map.
const word & name() const
Return name.
bool typeHeaderOk(const bool checkType=true)
Read header (uses typeFilePath to find file) and check header.
const labelList & cellMap() const
Old cell map.
const fileName & facesInstance() const
Return the current instance directory for faces.
void sync(const IOobject &io)
Parallel synchronise. This enforces valid objects on all processors.
void distribute(List< T > &fld, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Distribute data using default commsType.
const mapDistribute & cellMap() const
Cell distribute map.
virtual void rename(const word &newName)
Rename.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
UniformDimensionedField< scalar > uniformDimensionedScalarField
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
List< label > labelList
A List of labels.
void updateMesh(const mapPolyMesh &)
In-place update for topology changes.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
static void scatter(const List< commsStruct > &comms, T &Value, const int tag, const label comm)
Scatter data. Distribute without modification. Reverse of gather.
const labelList & pointMap() const
Old point map.
hexRef8Data(const IOobject &io)
Construct read. Has special provision for only some processors.
word name(const complex &)
Return a string representation of a complex.
label size() const
Return the number of elements in the UPtrList.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A List with indirect addressing.
const polyMesh & mesh() const
Return polyMesh.
T returnReduce(const T &Value, const BinaryOp &bop, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm)
void distribute(const mapDistributePolyMesh &)
In-place distribute.
Various for reading/decomposing/reconstructing/distributing refinement data.
Mesh consisting of general polyhedral cells.
All refinement history. Used in unrefinement.
const objectRegistry & db() const
Return the local objectRegistry.
readOption readOpt() const
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
~hexRef8Data()
Destructor.
IOList< label > labelIOList
Label container classes.