Go to the documentation of this file.
69 cellCentresPtr_(NULL),
70 faceCentresPtr_(NULL),
71 cellVolumesPtr_(NULL),
81 const label nInternalFaces,
89 nInternalFaces_(nInternalFaces),
111 cellCentresPtr_(NULL),
112 faceCentresPtr_(NULL),
113 cellVolumesPtr_(NULL),
130 label& nInternalPoints,
133 const label nInternalFaces,
147 label nBoundaryPoints = 0;
148 for (
label faceI = nInternalFaces; faceI < faces.
size(); faceI++)
150 const face&
f = faces[faceI];
156 if (oldToNew[pointI] == -1)
158 oldToNew[pointI] = nBoundaryPoints++;
165 nInternalPoints =
nPoints - nBoundaryPoints;
170 if (oldToNew[pointI] != -1)
172 oldToNew[pointI] += nInternalPoints;
180 label internalPointI = 0;
184 for (
label faceI = 0; faceI < nInternalFaces; faceI++)
186 const face&
f = faces[faceI];
192 if (oldToNew[pointI] == -1)
194 if (pointI >= nInternalPoints)
198 oldToNew[pointI] = internalPointI++;
210 const label nInternalFaces,
219 nInternal0Edges_ = -1;
220 nInternal1Edges_ = -1;
221 nInternalEdges_ = -1;
223 nInternalFaces_ = nInternalFaces;
228 label nInternalPoints;
231 bool isOrdered = calcPointOrder
242 nInternalPoints_ = nInternalPoints;
246 nInternalPoints_ = -1;
251 Pout<<
"primitiveMesh::reset : mesh reset to"
252 <<
" nInternalPoints:" << nInternalPoints_
253 <<
" nPoints:" << nPoints_
254 <<
" nEdges:" << nEdges_
255 <<
" nInternalFaces:" << nInternalFaces_
256 <<
" nFaces:" << nFaces_
257 <<
" nCells:" << nCells_
266 const label nInternalFaces,
287 const label nInternalFaces,
290 const Xfer<cellList>& clst
314 <<
"Cannot move points: size of given point list smaller "
315 <<
"than the number of active points"
327 sweptVols[faceI] =
f[faceI].sweptVol(oldPoints, newPoints);
344 return *cellShapesPtr_;
vectorField pointField
pointField is a vectorField.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
primitiveMesh()
Construct null.
#define forAll(list, i)
Loop across all elements in list.
A class for managing temporary objects.
Template functions to aid in the implementation of demand driven data.
Ostream & endl(Ostream &os)
Add newline and flush stream.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
List< cell > cellList
list of cells
static bool calcPointOrder(label &nInternalPoints, labelList &pointMap, const faceList &, const label nInternalFaces, const label nPoints)
Helper function to calculate point ordering. Returns true.
errorManip< error > abort(error &err)
const cellShapeList & cellShapes() const
Return cell shapes.
void setSize(const label)
Reset size of List.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
prefixOSstream Pout(cout, "Pout")
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
tmp< scalarField > movePoints(const pointField &p, const pointField &oldP)
Move points, returns volumes swept by faces in motion.
void reset(const label nPoints, const label nInternalFaces, const label nFaces, const label nCells)
Reset this primitiveMesh given the primitive array sizes.
A face is a list of labels corresponding to mesh vertices.
void size(const label)
Override size to be inconsistent with allocated storage.
defineTypeNameAndDebug(combustionModel, 0)