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&)");
#define forAll(list, i)
Loop across all elements in list.
virtual Ostream & write(const char)=0
Write character.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A face is a list of labels corresponding to mesh vertices.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
Cell-face mesh analysis engine.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
void size(const label)
Override size to be inconsistent with allocated storage.
const dimensionedScalar b
Wien displacement law constant: default SI units: [m K].
Ostream & endl(Ostream &os)
Add newline and flush stream.
iterator end()
Return an iterator to end traversing the UList.
virtual Istream & read(token &)=0
Return next token from stream.
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
Istream & operator>>(Istream &, directionInfo &)
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.
List< label > labelList
A List of labels.
streamFormat format() const
Return current stream format.
errorManip< error > abort(error &err)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
label findIndex(const ListType &, typename ListType::const_reference, const label start=0)
Find first occurrence of given element and return index,.
Holds direction in which to split cell (in fact a local coordinate axes). Information is a label and ...
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
label end() const
Return end vertex label.
virtual const faceList & faces() const =0
Return faces.
const doubleScalar e
Elementary charge.
label start() const
Return start vertex label.