9 Info<<
"Entering: USERD_get_part_elements_by_type" <<
nl 10 <<
"part_number = " << part_number <<
nl 11 <<
"element_type = " << element_type;
12 if (element_type == Z_HEX08)
16 else if (element_type == Z_PEN06)
20 else if (element_type == Z_PYR05)
24 else if (element_type == Z_TET04)
28 else if (element_type == Z_TRI03)
32 else if (element_type == Z_QUA04)
36 else if (element_type == Z_NFACED)
40 else if (element_type == Z_NSIDED)
58 if (element_type == Z_HEX08)
65 const cellShape& cellShape = cellShapes[celli];
66 const cellModel& cellModel = cellShape.model();
72 conn_array[nHex08][ip] = cellShape[ip] + 1;
81 else if (element_type == Z_PEN06)
88 const cellShape& cellShape = cellShapes[celli];
89 const cellModel& cellModel = cellShape.model();
91 if (cellModel == prism)
95 conn_array[nPen06][ip] = cellShape[ip] + 1;
104 else if (element_type == Z_PYR05)
111 const cellShape& cellShape = cellShapes[celli];
112 const cellModel& cellModel = cellShape.model();
114 if (cellModel == pyr)
118 conn_array[nPyr05][ip] = cellShape[ip] + 1;
127 else if (element_type == Z_TET04)
134 const cellShape& cellShape = cellShapes[celli];
135 const cellModel& cellModel = cellShape.model();
137 if (cellModel == tet)
141 conn_array[nTet04][ip] = cellShape[ip] + 1;
152 label nCells = cellShapes.size();
158 label nFacesInCell = cells[
n].size();
160 if ((nFacesInCell == 6) && (points.size() == 8))
162 else if ((nFacesInCell == 4) && (points.size() == 4))
164 else if (nFacesInCell == 5)
166 if (points.size() == 6)
168 else if (points.size() == 5)
172 conn_array[nFaced++][0] = nFacesInCell;
177 conn_array[nFaced++][0] = nFacesInCell;
185 const polyBoundaryMesh&
bMesh =
meshPtr->boundaryMesh();
189 if (element_type == Z_TRI03)
199 conn_array[nTri03][i] = ip + 1;
205 else if (element_type == Z_QUA04)
215 conn_array[nQuad04][i] = ip + 1;
222 else if (element_type == Z_NSIDED)
228 if ((nPoints != 3) && (nPoints != 4))
230 conn_array[nPoly++][0] =
nPoints;
239 conn_array[
n][0] =
n + 1;
248 Info<<
"Leaving: USERD_get_part_elements_by_type" <<
endl;
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
IOstream & hex(IOstream &io)
static Cloud< passiveParticle > * sprayPtr
Ostream & endl(Ostream &os)
Add newline and flush stream.
int USERD_get_part_elements_by_type(int part_number, int element_type, int **conn_array)
stressControl lookup("compactNormalStress") >> compactNormalStress
List< cellShape > cellShapeList
List of cellShapes and PtrList of List of cellShape.
const cellShapeList & cellShapes
List< label > labelList
A List of labels.
Ostream & flush(Ostream &os)
Flush stream.
PrimitivePatch< face, List, const pointField > bMesh
Holder of faceList and points. (v.s. e.g. primitivePatch which references points) ...
List< cell > cellList
list of cells