Go to the documentation of this file.
50 constexpr
bool parallel =
true;
91 if (!zoneNames.empty())
108 const polyPatch& pp = bm[patchi].patch();
111 if (isA<processorFvPatch>(bm[patchi]))
121 ) = (0.5 * (bf.patchInternalField() + bf));
123 else if (!isA<emptyFvPatch>(bm[patchi]))
134 for (
const word& zoneName : zoneNames)
173 constexpr
bool parallel =
true;
186 if (Pstream::master())
216 mesh.globalData().mergePoints
218 p.patch().meshPoints(),
219 p.patch().meshPointMap(),
221 uniqueMeshPointLabels
224 if (Pstream::master())
242 for (
const word& zoneName : zoneNames)
260 mesh.globalData().mergePoints
265 uniqueMeshPointLabels
268 if (Pstream::master())
294 const bool nodeValues
303 pfld.
ref().checkOut();
304 pfld.ref().rename(vf.name());
306 return Detail::writePointField<Type>(pfld, ensMesh, os);
309 return Detail::writeVolField<Type>(vf, ensMesh, os);
323 constexpr
bool parallel =
false;
350 constexpr
bool parallel =
false;
bool writeVolField(const GeometricField< Type, fvPatchField, volMesh > &vf, const ensightPartFaces &part, ensightFile &os)
Write volume field component-wise for specified faces.
A collection of several ensightPart elements.
Encapsulation of volume meshes for writing in ensight format.
A class for handling words, derived from Foam::string.
bool writeVolField(const GeometricField< Type, fvPatchField, volMesh > &vf, const ensightMesh &ensMesh, ensightFile &os)
Write volume field component-wise.
A class for managing temporary objects.
static constexpr const zero Zero
Global zero.
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
bool useInternalMesh() const
Using internal?
const HashTable< ensightFaces > & faceZoneFaces() const
Face elements per selected faceZone.
A List obtained as a section of another List.
const fvMesh & mesh() const
Reference to the underlying fvMesh.
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.
label patchIndex() const
Return the patch index, -1 when not in use.
const Internal & internalField() const
Return a const-reference to the dimensioned internal field.
An implementation of ensightPart to hold volume mesh cells.
bool writeFieldComponents(const char *key, const FieldContainer< Type > &fld, ensightFile &os, bool parallel)
Write field content (component-wise) for the given ensight element type.
Sorting/classification of faces (2D) into corresponding ensight types.
#define forAll(list, i)
Loop across all elements in list.
bool writeCellField(const Field< Type > &fld, const ensightCells &part, ensightFile &os, bool parallel)
bool writePointField(const GeometricField< Type, pointPatchField, pointMesh > &pf, const ensightMesh &ensMesh, ensightFile &os)
Write point field component-wise.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Generic templated field type.
bool writeVolField(const GeometricField< Type, fvPatchField, volMesh > &, const ensightMesh &ensMesh, ensightFile &os, const bool nodeValues=false)
Write volume field component-wise.
A patch is a list of labels that address the faces in the global face list.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
const labelUList faceIds(const enum elemType) const
Return the (local) face ids of the specified element type.
Sorting/classification of cells (3D) into corresponding ensight element types.
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...
const HashTable< ensightFaces > & boundaryPatchFaces() const
Face elements per selected patch.
label size() const
The processor local size of all elements.
List< Key > sortedToc() const
The table of contents (the keys) in sorted order.
A HashTable similar to std::unordered_map.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const Map< word > & patches() const
The list of patches to be output.
label index() const
The index in a list.
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > linearInterpolate(const GeometricField< Type, fvPatchField, volMesh > &vf)
Base class for ensightPartCells and ensightPartFaces.
void beginPart(const label index)
Begin a part (0-based index internally).
bool writeFaceField(const Field< Type > &fld, const ensightFaces &part, ensightFile &os, bool parallel)
An implementation of ensightPart to hold mesh faces.
A List with indirect addressing.
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.
const ensightCells & meshCells() const
The volume cells (internalMesh)
const labelList & uniquePointMap() const
Local points that are unique.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
A list of faces which address into the list of points.
bool writeFaceSubField(const Field< Type > &fld, const ensightFaces &part, ensightFile &os, bool parallel)