Go to the documentation of this file.
48 bool parallel = Pstream::parRun();
59 for (
const label zoneId : cellZoneParts.sortedToc())
68 for (
const label
patchId : boundaryParts.sortedToc())
72 if (patchId < 0 || patchId >= bmesh.size())
100 if (faceZoneParts.empty())
114 const polyPatch& pp = bm[patchi].patch();
117 if (isA<processorFvPatch>(bm[patchi]))
127 ) = (0.5 * (bf.patchInternalField() + bf));
129 else if (!isA<emptyFvPatch>(bm[patchi]))
147 const auto& sfld = tsfld();
155 maxLen =
max(maxLen, iter.val().size());
164 for (
const label zoneId : faceZoneParts.sortedToc())
176 auto valIter =
values.begin();
207 bool parallel = Pstream::parRun();
218 for (
const label zoneId : cellZoneParts.sortedToc())
222 if (Pstream::master())
243 for (
const label
patchId : boundaryParts.sortedToc())
247 if (Pstream::master())
258 const auto* vpp = isA<Field<Type>>(bfld);
268 for (label& pointi : uniquePointLabels)
296 for (
const label zoneId : faceZoneParts.sortedToc())
300 if (Pstream::master())
334 const bool nodeValues
343 pfld.
ref().checkOut();
344 pfld.ref().rename(vf.name());
346 return ensightOutput::writePointField<Type>(
os, pfld, ensMesh);
349 return ensightOutput::writeVolField<Type>(
os, vf, ensMesh);
const labelList & faceIds() const noexcept
Processor-local face ids of all elements.
const Map< ensightCells > & cellZoneParts() const noexcept
Face elements per selected patch, lookup by patch index.
Encapsulation of volume meshes for writing in ensight format. It manages cellZones,...
void decrFaceIds(const label off)
Decrease face ids by specified offset value.
label index() const noexcept
The index in a list (0-based)
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
A class for managing temporary objects.
static constexpr const zero Zero
Global zero (0)
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
A List obtained as a section of another List.
A HashTable to objects of type <T> with a label key.
label offset() const
The offset where this patch starts in the boundary face list.
bool writeFieldComponents(ensightFile &os, const char *key, const FieldContainer< Type > &fld, bool parallel)
Write field content (component-wise) for the given ensight element type.
label uniqueMeshPoints(const polyMesh &mesh, labelList &uniqueMeshPointLabels, bool parallel) const
Globally unique mesh points. Required when writing point fields.
const Internal & internalField() const
Return a const-reference to the dimensioned internal field.
const polyMesh & mesh() const noexcept
Reference to the underlying polyMesh.
label start() const
The start label of the boundary faces in the polyMesh face list.
Sorting/classification of faces (2D) into corresponding ensight types.
Mesh consisting of general polyhedral cells.
#define forAll(list, i)
Loop across all elements in list.
Generic templated field type.
A patch is a list of labels that address the faces in the global face list.
PtrList< coordinateSystem > coordinates(solidRegions.size())
Sorting/classification of cells (3D) into corresponding ensight element types.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
bool writeFaceSubField(ensightFile &os, const Field< Type > &fld, const ensightFaces &part, bool parallel)
OBJstream os(runTime.globalPath()/outputName)
A collection of functions for writing volField content in ensight format.
Mesh data needed to do the Finite Volume discretisation.
Ensight output with specialized write() for strings, integers and floats. Correctly handles binary wr...
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
label uniqueMeshPoints(const polyMesh &mesh, labelList &uniqueMeshPointLabels, bool parallel) const
bool writeField(ensightFile &os, const Field< Type > &fld, const ensightCells &part, bool parallel)
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > linearInterpolate(const GeometricField< Type, fvPatchField, volMesh > &vf)
forAllConstIters(mixture.phases(), phase)
bool writePointField(ensightFile &os, const GeometricField< Type, pointPatchField, pointMesh > &pf, const ensightMesh &ensMesh)
Write point field component-wise.
A List with indirect addressing.
const Map< label > & meshPointMap() const
Mesh point map.
const Map< ensightFaces > & faceZoneParts() const noexcept
Face elements per faceZone, lookup by zone index.
bool writeVolField(ensightFile &os, const GeometricField< Type, fvPatchField, volMesh > &vf, const ensightMesh &ensMesh)
Write volume field component-wise.
static tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate(const GeometricField< Type, faPatchField, areaMesh > &tvf, const edgeScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
label size(const elemType etype) const
Processor-local size of the specified element type.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
const Map< ensightFaces > & boundaryParts() const noexcept
Face elements per selected patch, lookup by patch index.