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&)");
label end() const
Return end vertex label.
#define forAll(list, i)
Loop across all elements in list.
streamFormat format() const
Return current stream format.
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.
const double e
Elementary charge.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Cell-face mesh analysis engine.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
void size(const label)
Override size to be inconsistent with allocated storage.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
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...
const dimensionedScalar b
Wien displacement law constant: default SI units: [m.K].
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.
errorManip< error > abort(error &err)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
label start() const
Return start vertex label.
label findIndex(const ListType &, typename ListType::const_reference, const label start=0)
Find first occurence of given element and return index,.
Holds direction in which to split cell (in fact a local coordinate axes). Information is a label and ...
virtual const faceList & faces() const =0
Return faces.
virtual Ostream & write(const token &)=0
Write next token to stream.