34 const primitiveMesh& mesh,
40 forAll(edgeLabels, edgeLabelI)
42 label edgeI = edgeLabels[edgeLabelI];
44 if (mesh.edges()[edgeI] == edge(v0, v1))
51 <<
"Cannot find an edge among " << edgeLabels <<
endl 52 <<
"that uses vertices " << v0
68 label a1 = (a + 1) % size;
76 label b1 = (b + 1) % size;
81 <<
"Problem : a:" << a <<
" b:" << b <<
" size:" << size
100 if ((edgeI < 0) || (edgeI >= mesh.
nEdges()))
103 <<
"Illegal edge label:" << edgeI
104 <<
" when projecting cut edge from cell " << cellI
105 <<
" to face " << faceI
125 return lowest(f.
size(), fpA, fpB);
164 if ((fpA != -1) && (fpB != -1))
166 return lowest(f.
size(), fpA, fpB);
182 if ((fpA != -1) && (fpB != -1))
184 return lowest(f.
size(), fpA, fpB);
188 <<
"Found connected faces " << mesh.
faces()[f0I] <<
" and " 189 << mesh.
faces()[f1I] <<
" sharing edge " << edgeI <<
endl 190 <<
"But none seems to be connected to face " << faceI
210 os << wDist.index_ << wDist.n_;
216 reinterpret_cast<const char*>(&wDist.index_),
222 os.check(
"Ostream& operator<<(Ostream&, const directionInfo&)");
232 is >> wDist.index_ >> wDist.n_;
238 reinterpret_cast<char*>(&wDist.index_),
244 is.
check(
"Istream& operator>>(Istream&, directionInfo&)");
Holds direction in which to split cell (in fact a local coordinate axes). Information is a label and ...
iterator end()
Return an iterator to end traversing the UList.
label findIndex(const ListType &, typename ListType::const_reference, const label start=0)
Find first occurence of given element and return index,.
const dimensionedScalar b
Wien displacement law constant: default SI units: [m.K].
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
void getEdgeFaces(const primitiveMesh &, const label cellI, const label edgeI, label &face0, label &face1)
Get faces on cell using edgeI. Throws error if no two found.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
virtual Istream & read(token &)=0
Return next token from stream.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void size(const label)
Override size to be inconsistent with allocated storage.
virtual const faceList & faces() const =0
Return faces.
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
virtual bool check(const char *operation) const
Check IOstream status for given operation.
A face is a list of labels corresponding to mesh vertices.
Cell-face mesh analysis engine.
const double e
Elementary charge.
Ostream & endl(Ostream &os)
Add newline and flush stream.
streamFormat format() const
Return current stream format.
errorManip< error > abort(error &err)
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
label end() const
Return end vertex label.
List< label > labelList
A List of labels.
Istream & operator>>(Istream &, edgeMesh &)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
label walkFace(const primitiveMesh &, const label faceI, const label startEdgeI, const label startVertI, const label nEdges)
Returns label of edge nEdges away from startEdge (in the direction.
label start() const
Return start vertex label.
static label edgeToFaceIndex(const primitiveMesh &mesh, const label cellI, const label faceI, const label edgeI)
Given edge on hex cell find corresponding edge on face. Is either.