38void Foam::ensightCells::writePolysConnectivity
42 const ensightCells& part,
43 const labelList& pointToGlobal,
49 const label nTotal = part.total(etype);
57 const IntRange<int> senders =
85 for (
const int proci : senders)
116 os.writeLabels(send);
119 for (
const int proci : senders)
124 os.writeLabels(recv);
155 for (
const int proci : senders)
194void Foam::ensightCells::writeShapeConnectivity
197 const polyMesh&
mesh,
199 const ensightCells& part,
207 <<
"Called for ensight NFACED cell. Programming error\n"
211 const label nTotal = part.total(etype);
220 const IntRange<int> senders =
245 for (
const int proci : senders)
287 uniqueMeshPointLabels,
308 writePolysConnectivity
319 writeShapeConnectivity
344 os << part.
name().c_str();
351 <<
':' << part.
total(etype);
const Key & key() const
The key associated with the iterator.
A helper class for outputting values to Ostream.
virtual Ostream & write(const char c)
Write character.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
virtual Ostream & writeKeyword(const keyType &kw)
Write the keyword followed by an appropriate indentation.
UPstream::rangeType subProcs() const noexcept
Range of sub-processes indices associated with PstreamBuffers.
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
A List with indirect addressing. Like IndirectList but does not store addressing.
static constexpr int masterNo() noexcept
Process index of the master (always 0)
static bool & parRun() noexcept
Test if this a parallel run.
Sorting/classification of cells (3D) into corresponding ensight element types.
static constexpr int nTypes
Number of 'Cell' element types (5)
static const char * elemNames[nTypes]
The ensight 'Cell' element type names.
elemType
Supported ensight 'Cell' element types.
label total() const
The global size of all element types.
Specialized Ensight output with extra geometry file header.
label index() const noexcept
The index in a list (0-based)
const string & name() const noexcept
The part name or description.
virtual bool write()
Write the output fields.
Mesh consisting of general polyhedral cells.
virtual const faceList & faces() const
Return raw faces.
virtual const labelList & faceOwner() const
Return face owner.
virtual const pointField & points() const
Return raw points.
const cellShapeList & cellShapes() const
Return cell shapes.
splitCell * master() const
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
OBJstream os(runTime.globalPath()/outputName)
void inplaceRenumber(const labelUList &oldToNew, IntListType &lists)
Inplace renumber the values (not the indices) of a list of lists.
bool writeCoordinates(ensightGeoFile &os, const label partId, const word &partName, const label nPoints, const FieldContainer< Foam::point > &fld, bool parallel)
Write coordinates (component-wise) for the given part.
labelList getPolysNPointsPerFace(const polyMesh &mesh, const labelUList &addr)
The number of points for each face of the poly elements.
labelList getPolysNFaces(const polyMesh &mesh, const labelUList &addr)
The number of faces per poly element.
void writePolysPoints(ensightGeoFile &os, const cellUList &meshCells, const labelUList &addr, const faceUList &meshFaces, const labelUList &faceOwner)
Write the point ids per poly element.
void writeCellShapes(ensightGeoFile &os, const UList< cellShape > &shapes, const label pointOffset=0)
Write cell connectivity via cell shapes.
List< cellShape > cellShapeList
List of cellShapes and PtrList of List of cellShape.
List< label > labelList
A List of labels.
List< cell > cellList
A List of cells.
List< face > faceList
A List of faces.
errorManipArg< error, int > exit(error &err, const int errNo=1)
UList< label > labelUList
A UList of labels.
constexpr char nl
The newline '\n' character (0x0a)