Go to the documentation of this file.
43 Info <<
"Checking for invalid face connections" <<
endl;
57 const label start = boundaries[patchI].patchStart();
58 const label end = start + boundaries[patchI].patchSize();
60 for(
label faceI=start;faceI<end;++faceI)
63 # pragma omp task shared(decomposeFace,faces,cells,owner,faceI)
66 const face& bf = faces[faceI];
69 Info <<
"Checking boundary face " << faceI <<
" with vertices "
77 (
c[fI] < nIntFaces) ||
81 const face&
f = faces[
c[fI]];
93 Info <<
"Shared vertices with internal face " <<
f
94 <<
" are " << shN <<
endl;
100 Info <<
"1. Face has to be split" <<
endl;
103 decomposeFace[faceI] =
true;
107 else if( shN.
size() == 2 )
110 (shN[0] == bf.fcIndex(shN[1])) ||
111 (shN[0] == bf.rcIndex(shN[1]))
116 Info <<
"2. Face has to be split" <<
endl;
119 decomposeFace[faceI] =
true;
138 Info <<
"Finished checking for invalid face connections" <<
endl;
const labelList & owner() const
owner and neighbour cells for faces
#define forAll(list, i)
Loop across all elements in list.
Template functions to aid in the implementation of demand driven data.
static bool & parRun()
Is this a parallel run?
Ostream & endl(Ostream &os)
Add newline and flush stream.
const faceListPMG & faces() const
access to faces
label nInternalFaces() const
return number of internal faces
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
label faceIsInProcPatch(const label faceLabel) const
return processor patch label for the given face label
const cellListPMG & cells() const
access to cells
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
void checkNonConsecutiveBoundaryVertices()
check and fix incorrectly connected faces
void decomposeMeshFaces(const boolList &decomposeFace)
decompose selected faces into triangles using midnode subdivision
label size() const
return the number of used elements
const PtrList< boundaryPatch > & boundaries() const
ordinary boundaries
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
const dimensionedScalar c
Speed of light in a vacuum.
A face is a list of labels corresponding to mesh vertices.
A cell is defined as a list of faces with extra functionality.
void append(const T &e)
Append an element at the end of the list.