Go to the documentation of this file.
34 #include "PatchTools.H"
43 <<
"sortedEdgeFacesPtr_ already set"
61 <<
"edgeOwnerPtr_ already set"
71 const edge&
e = edges()[edgeI];
73 const labelList& myFaces = edgeFaces()[edgeI];
75 if (myFaces.size() == 1)
77 edgeOwner[edgeI] = myFaces[0];
83 edgeOwner[edgeI] = -1;
87 const labelledTri&
f = localFaces()[myFaces[i]];
91 ((
f[0] ==
e.start()) && (
f[1] ==
e.end()))
92 || ((
f[1] ==
e.start()) && (
f[2] ==
e.end()))
93 || ((
f[2] ==
e.start()) && (
f[0] ==
e.end()))
96 edgeOwner[edgeI] = myFaces[i];
102 if (edgeOwner[edgeI] == -1)
105 <<
"Edge " << edgeI <<
" vertices:" <<
e
106 <<
" is used by faces " << myFaces
108 << UIndirectList<labelledTri>(localFaces(), myFaces)()
109 <<
" none of which use the edge vertices in the same order"
const labelListList & edgeFaces() const
Return edge-face addressing.
List< label > labelList
A List of labels.
#define forAll(list, i)
Loop across all elements in list.
void calcSortedEdgeFaces() const
Calculate sorted edgeFaces.
void calcEdgeOwner() const
Calculate owner.
errorManip< error > abort(error &err)
const double e
Elementary charge.
List< labelList > labelListList
A List of labelList.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
labelListList * sortedEdgeFacesPtr_
Edge-face addressing (sorted)
const labelListList & sortedEdgeFaces() const
Return edge-face addressing sorted (for edges with more than.