Go to the documentation of this file.
33 template<
class FaceList,
class Po
intField>
36 const FaceList& faces,
44 boundaryPointsPtr_(
nullptr),
45 faceFacesPtr_(
nullptr),
46 edgeFacesPtr_(
nullptr),
47 faceEdgesPtr_(
nullptr),
48 pointEdgesPtr_(
nullptr),
49 pointFacesPtr_(
nullptr),
50 localFacesPtr_(
nullptr),
51 meshPointsPtr_(
nullptr),
52 meshPointMapPtr_(
nullptr),
53 edgeLoopsPtr_(
nullptr),
54 localPointsPtr_(
nullptr),
55 localPointOrderPtr_(
nullptr),
56 faceCentresPtr_(
nullptr),
57 faceAreasPtr_(
nullptr),
58 magFaceAreasPtr_(
nullptr),
59 faceNormalsPtr_(
nullptr),
60 pointNormalsPtr_(
nullptr)
64 template<
class FaceList,
class Po
intField>
71 FaceList(std::move(faces)),
75 boundaryPointsPtr_(
nullptr),
76 faceFacesPtr_(
nullptr),
77 edgeFacesPtr_(
nullptr),
78 faceEdgesPtr_(
nullptr),
79 pointEdgesPtr_(
nullptr),
80 pointFacesPtr_(
nullptr),
81 localFacesPtr_(
nullptr),
82 meshPointsPtr_(
nullptr),
83 meshPointMapPtr_(
nullptr),
84 edgeLoopsPtr_(
nullptr),
85 localPointsPtr_(
nullptr),
86 localPointOrderPtr_(
nullptr),
87 faceCentresPtr_(
nullptr),
88 faceAreasPtr_(
nullptr),
89 magFaceAreasPtr_(
nullptr),
90 faceNormalsPtr_(
nullptr),
91 pointNormalsPtr_(
nullptr)
95 template<
class FaceList,
class Po
intField>
103 FaceList(faces, reuse),
107 boundaryPointsPtr_(
nullptr),
108 faceFacesPtr_(
nullptr),
109 edgeFacesPtr_(
nullptr),
110 faceEdgesPtr_(
nullptr),
111 pointEdgesPtr_(
nullptr),
112 pointFacesPtr_(
nullptr),
113 localFacesPtr_(
nullptr),
114 meshPointsPtr_(
nullptr),
115 meshPointMapPtr_(
nullptr),
116 edgeLoopsPtr_(
nullptr),
117 localPointsPtr_(
nullptr),
118 localPointOrderPtr_(
nullptr),
119 faceCentresPtr_(
nullptr),
120 faceAreasPtr_(
nullptr),
121 magFaceAreasPtr_(
nullptr),
122 faceNormalsPtr_(
nullptr),
123 pointNormalsPtr_(
nullptr)
127 template<
class FaceList,
class Po
intField>
133 PrimitivePatchName(),
138 boundaryPointsPtr_(
nullptr),
139 faceFacesPtr_(
nullptr),
140 edgeFacesPtr_(
nullptr),
141 faceEdgesPtr_(
nullptr),
142 pointEdgesPtr_(
nullptr),
143 pointFacesPtr_(
nullptr),
144 localFacesPtr_(
nullptr),
145 meshPointsPtr_(
nullptr),
146 meshPointMapPtr_(
nullptr),
147 edgeLoopsPtr_(
nullptr),
148 localPointsPtr_(
nullptr),
149 localPointOrderPtr_(
nullptr),
150 faceCentresPtr_(
nullptr),
151 faceAreasPtr_(
nullptr),
152 magFaceAreasPtr_(
nullptr),
153 faceNormalsPtr_(
nullptr),
154 pointNormalsPtr_(
nullptr)
160 template<
class FaceList,
class Po
intField>
169 template<
class FaceList,
class Po
intField>
178 Pout<<
"PrimitivePatch<FaceList, PointField>::"
180 <<
"recalculating PrimitivePatch geometry following mesh motion"
188 template<
class FaceList,
class Po
intField>
201 template<
class FaceList,
class Po
intField>
210 return nInternalEdges_;
214 template<
class FaceList,
class Po
intField>
218 if (!boundaryPointsPtr_)
223 return *boundaryPointsPtr_;
227 template<
class FaceList,
class Po
intField>
236 return *faceFacesPtr_;
240 template<
class FaceList,
class Po
intField>
249 return *edgeFacesPtr_;
253 template<
class FaceList,
class Po
intField>
262 return *faceEdgesPtr_;
266 template<
class FaceList,
class Po
intField>
275 return *pointEdgesPtr_;
279 template<
class FaceList,
class Po
intField>
288 return *pointFacesPtr_;
292 template<
class FaceList,
class Po
intField>
304 return *localFacesPtr_;
308 template<
class FaceList,
class Po
intField>
317 return *meshPointsPtr_;
321 template<
class FaceList,
class Po
intField>
325 if (!meshPointMapPtr_)
330 return *meshPointMapPtr_;
334 template<
class FaceList,
class Po
intField>
341 if (!localPointsPtr_)
346 return *localPointsPtr_;
350 template<
class FaceList,
class Po
intField>
354 if (!localPointOrderPtr_)
356 calcLocalPointOrder();
359 return *localPointOrderPtr_;
363 template<
class FaceList,
class Po
intField>
371 return meshPointMap().lookup(gp, -1);
375 template<
class FaceList,
class Po
intField>
382 if (!faceCentresPtr_)
387 return *faceCentresPtr_;
391 template<
class FaceList,
class Po
intField>
403 return *faceAreasPtr_;
407 template<
class FaceList,
class Po
intField>
411 if (!magFaceAreasPtr_)
416 return *magFaceAreasPtr_;
420 template<
class FaceList,
class Po
intField>
427 if (!faceNormalsPtr_)
432 return *faceNormalsPtr_;
436 template<
class FaceList,
class Po
intField>
443 if (!pointNormalsPtr_)
448 return *pointNormalsPtr_;
454 template<
class FaceList,
class Po
intField>
468 FaceList::shallowCopy(rhs);
474 template<
class FaceList,
class Po
intField>
488 FaceList::operator=(std::move(rhs));
int debug
Static debugging option.
const labelListList & pointFaces() const
Return point-face addressing.
label whichPoint(const label gp) const
Given a global point index, return the local point index.
const labelListList & edgeFaces() const
Return edge-face addressing.
const edgeList & edges() const
Return list of edges, address into LOCAL point list.
const Field< point_type > & pointNormals() const
Return point normals for patch.
A HashTable to objects of type <T> with a label key.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const labelListList & faceEdges() const
Return face-edge addressing.
prefixOSstream Pout
OSstream wrapped stdout (std::cout) with parallel prefix.
Checks topology of the patch.
Generic templated field type.
const Field< point_type > & faceAreas() const
Return face area vectors for patch.
std::remove_reference< PointField >::type::value_type point_type
The point type.
const labelListList & pointEdges() const
Return point-edge addressing.
Create the list of loops of outside vertices. Goes wrong on multiply connected edges (loops will be u...
Point addressing on the patch: pointEdges and pointFaces.
const List< face_type > & localFaces() const
Return patch faces addressing into local point list.
const Field< point_type > & localPoints() const
Return pointField of points in patch.
const labelList & boundaryPoints() const
Return list of boundary points, address into LOCAL point list.
This function calculates the list of patch edges, defined on the list of points supporting the patch....
label nInternalEdges() const
Number of internal edges.
For every point on the patch find the closest face on the target side. Return a target face label for...
const labelList & localPointOrder() const
Return orders the local points for most efficient search.
Orders the local points on the patch for most efficient search.
const Field< point_type > & faceNormals() const
Return face unit normals for patch.
const Field< scalar > & magFaceAreas() const
Return face area magnitudes for patch.
std::remove_reference< FaceList >::type::value_type face_type
The face type.
virtual void movePoints(const Field< point_type > &)
Correct patch after moving points.
const Map< label > & meshPointMap() const
Mesh point map.
const labelListList & faceFaces() const
Return face-face addressing.
const labelList & meshPoints() const
Return labelList of mesh points in patch.
const Field< point_type > & faceCentres() const
Return face centres for patch.
A list of faces which address into the list of points.
PrimitivePatch(const FaceList &faces, const PointField &points)
Construct from components.