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)
60 const cellModel&
hex = *(cellModeller::lookup(
"hex"));
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)
83 const cellModel& prism = *(cellModeller::lookup(
"prism"));
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)
106 const cellModel& pyr = *(cellModeller::lookup(
"pyr"));
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)
129 const cellModel& tet = *(cellModeller::lookup(
"tet"));
134 const cellShape& cellShape =
cellShapes[celli];
135 const cellModel& cellModel = cellShape.model();
137 if (cellModel == tet)
141 conn_array[nTet04][ip] = cellShape[ip] + 1;
160 if ((nFacesInCell == 6) && (
points.size() == 8))
162 else if ((nFacesInCell == 4) && (
points.size() == 4))
164 else if (nFacesInCell == 5)
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)
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.
int USERD_get_part_elements_by_type(int part_number, int element_type, int **conn_array)
const cellShapeList & cellShapes
const polyBoundaryMesh & bMesh
static Cloud< passiveParticle > * sprayPtr
List< cellShape > cellShapeList
List of cellShapes and PtrList of List of cellShape.
List< label > labelList
A List of labels.
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
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOstream & hex(IOstream &io)
Ostream & flush(Ostream &os)
Flush stream.