Sorting/classification of cells (3D) into corresponding ensight element types. More...


Public Types | |
| enum | elemType { TETRA4 = 0, PYRAMID5, PENTA6, HEXA8, NFACED } |
| Supported ensight 'Cell' element types. More... | |
Public Member Functions | |
| TypeName ("ensightCells") | |
| Declare type-name, virtual type (with debug switch) More... | |
| ensightCells () | |
| Default construct, with part index 0. More... | |
| ensightCells (const string &description) | |
| Default construct, with description/partName. More... | |
| virtual | ~ensightCells ()=default |
| Destructor. More... | |
| bool | manifold () const noexcept |
| Manifold mesh cells detected? Globally consistent quantity. More... | |
| label | size (const elemType etype) const |
| Processor-local size of the specified element type. More... | |
| labelRange | range (const elemType etype) const |
| Processor-local offset/size of element type. More... | |
| label | totalSize () const noexcept |
| The global size of all element types. More... | |
| label | total () const noexcept |
| Same as totalSize() More... | |
| label | total (const elemType etype) const |
| The global size of the specified element type. More... | |
| const FixedList< label, nTypes > & | totals () const |
| The global sizes for each element type. More... | |
| FixedList< label, nTypes > | sizes () const |
| Processor-local sizes per element type. More... | |
| const labelList & | cellIds () const |
| Processor-local cell ids of all elements. More... | |
| const labelUList | cellIds (const elemType etype) const |
| Processor-local cell ids of the specified element type. More... | |
| Map< label > | meshPointMap (const polyMesh &mesh) const |
| Mesh point map. More... | |
| void | classify (const polyMesh &mesh) |
| Classify cell types and set the element lists. More... | |
| void | classify (const polyMesh &mesh, const labelUList &cellIds) |
| Classify cell types and set element lists, using a subgroup of cells (eg, from a cellZone etc). More... | |
| void | classify (const polyMesh &mesh, const bitSet &selection) |
| Classify cell types and set element lists, using a subgroup of cells. More... | |
| void | clearOut () |
| Clear any demand-driven data. More... | |
| void | clear () |
| Set addressable sizes to zero, free up addressing memory. More... | |
| void | reduce () |
| Sum element counts across all processes. More... | |
| void | sort () |
| Sort element lists numerically. More... | |
| void | incrCellIds (const label off) |
| Increase cell ids by specified offset value. More... | |
| void | decrCellIds (const label off) |
| Decrease face ids by specified offset value. More... | |
| InfoProxy< ensightCells > | info () const noexcept |
| Return info proxy, used to print information to a stream. More... | |
| label | uniqueMeshPoints (const polyMesh &mesh, labelList &uniqueMeshPointLabels, bool parallel) const |
| Globally unique mesh points. Required when writing point fields. More... | |
| virtual void | writeDict (Ostream &os, const bool full=false) const |
| Write information about the object as a dictionary, optionally write all element addresses. More... | |
| virtual void | write (ensightGeoFile &os, const polyMesh &mesh, bool parallel) const |
| Write geometry, using a mesh reference (serial only) More... | |
| label | size () const noexcept |
| Processor-local size of all elements. More... | |
Public Member Functions inherited from ensightPart | |
| TypeNameNoDebug ("ensightPart") | |
| Declare type-name, virtual type (without debug switch) More... | |
| ensightPart () | |
| Default construct. Index=0, identifier = -1. More... | |
| ensightPart (const string &description) | |
| Default construct, with description/partName. More... | |
| virtual | ~ensightPart ()=default |
| Destructor. More... | |
| label | index () const noexcept |
| The index in a list (0-based) More... | |
| label & | index () noexcept |
| The index in a list (0-based) More... | |
| label | identifier () const noexcept |
| OpenFOAM identifier (patch, zone, etc), -1 when not in use. More... | |
| label & | identifier () noexcept |
| OpenFOAM identifier (patch, zone, etc), -1 when not in use. More... | |
| bool | empty () const noexcept |
| Processor-local test for any elements. More... | |
| label | size () const noexcept |
| Processor-local size of all elements. More... | |
| const string & | name () const noexcept |
| The part name or description. More... | |
| void | rename (const string &value) |
| Change the part name or description. More... | |
| void | rename (string &&value) |
| Change the part name or description. More... | |
| label | operator[] (const label i) const |
| Processor-local element id from linear-list of addresses. More... | |
Static Public Member Functions | |
| static const char * | key (const elemType etype) noexcept |
| The ensight element name for the specified 'Cell' type. More... | |
Static Public Attributes | |
| static constexpr int | nTypes = 5 |
| Number of 'Cell' element types (5) More... | |
| static const char * | elemNames [nTypes] |
| The ensight 'Cell' element type names. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ensightPart | |
| const labelList & | addressing () const noexcept |
| Element addressing. More... | |
| labelList & | addressing () noexcept |
| Element addressing. More... | |
| void | clear () |
| Clear element addressing. More... | |
| void | incrAddressing (const label off) |
| Increase addressing by specified offset value. More... | |
| void | decrAddressing (const label off) |
| Decrease addressing by specified offset value. More... | |
Sorting/classification of cells (3D) into corresponding ensight element types.
Definition at line 49 of file ensightCells.H.
| enum elemType |
Supported ensight 'Cell' element types.
Must be zero-based since they are also for internal bookkeeping.
| Enumerator | |
|---|---|
| TETRA4 | "tetra4" |
| PYRAMID5 | "pyramid5" |
| PENTA6 | "penta6" |
| HEXA8 | "hexa8" |
| NFACED | "nfaced" |
Definition at line 62 of file ensightCells.H.
| ensightCells | ( | ) |
Default construct, with part index 0.
Definition at line 72 of file ensightCells.C.
|
explicit |
Default construct, with description/partName.
Definition at line 81 of file ensightCells.C.
References ensightPart::rename().

|
virtualdefault |
Destructor.
|
inlinestaticnoexcept |
The ensight element name for the specified 'Cell' type.
Definition at line 42 of file ensightCellsI.H.
Referenced by ensightCells::writeDict().

| TypeName | ( | "ensightCells" | ) |
Declare type-name, virtual type (with debug switch)
|
inlinenoexcept |
Manifold mesh cells detected? Globally consistent quantity.
Definition at line 36 of file ensightCellsI.H.
|
inline |
Processor-local size of the specified element type.
Definition at line 60 of file ensightCellsI.H.
Referenced by Foam::ensightOutput::writeField().

|
inline |
Processor-local offset/size of element type.
Definition at line 66 of file ensightCellsI.H.
|
noexcept |
The global size of all element types.
This value is only meaningful after a reduce operation.
Definition at line 104 of file ensightCells.C.
References Foam::BitOps::count(), and n.
Referenced by ensightCells::total().


|
inlinenoexcept |
Same as totalSize()
Definition at line 231 of file ensightCells.H.
References ensightCells::totalSize().
Referenced by Foam::ensightOutput::writeField().


|
inline |
The global size of the specified element type.
This value is only meaningful after a reduce operation.
Definition at line 54 of file ensightCellsI.H.
|
inline |
The global sizes for each element type.
This value is only meaningful after a reduce operation.
Definition at line 48 of file ensightCellsI.H.
| Foam::FixedList< Foam::label, 5 > sizes | ( | ) | const |
Processor-local sizes per element type.
Definition at line 91 of file ensightCells.C.
References Foam::BitOps::count().

|
inline |
Processor-local cell ids of all elements.
Definition at line 72 of file ensightCellsI.H.
Referenced by ensightCells::meshPointMap(), and Foam::ensightOutput::writeField().

|
inline |
Processor-local cell ids of the specified element type.
Definition at line 79 of file ensightCellsI.H.
References range, and UList< T >::slice().

Mesh point map.
Map mesh point index to local (compact) point index
const cellList& meshCells = mesh.cells();
Definition at line 31 of file ensightCellsAddr.C.
References ensightCells::cellIds(), manifoldCellsMeshObject::cells(), HashTable< T, Key, Hash >::insert(), mesh, MeshObject< polyMesh, UpdateableMeshObject, manifoldCellsMeshObject >::New(), nPoints, ensightPart::size(), and HashTable< T, Key, Hash >::sortedToc().

| void classify | ( | const polyMesh & | mesh | ) |
Classify cell types and set the element lists.
Definition at line 235 of file ensightCells.C.
References mesh, and primitiveMesh::nCells().
Referenced by ensightMesh::correct().


| void classify | ( | const polyMesh & | mesh, |
| const labelUList & | cellIds | ||
| ) |
Classify cell types and set element lists, using a subgroup of cells (eg, from a cellZone etc).
Definition at line 243 of file ensightCells.C.
References mesh.
Classify cell types and set element lists, using a subgroup of cells.
Definition at line 253 of file ensightCells.C.
References mesh.
| void clearOut | ( | ) |
Clear any demand-driven data.
Definition at line 127 of file ensightCells.C.
| void clear | ( | ) |
Set addressable sizes to zero, free up addressing memory.
Definition at line 115 of file ensightCells.C.
References ensightPart::clear(), and Foam::Zero.
Referenced by ensightMesh::correct().


| void reduce | ( | ) |
Sum element counts across all processes.
Definition at line 131 of file ensightCells.C.
References Foam::reduce().
Referenced by ensightMesh::correct().


| void sort | ( | ) |
Sort element lists numerically.
Definition at line 141 of file ensightCells.C.
References IntRange< IntType >::empty(), range, and Foam::sort().

|
inline |
Increase cell ids by specified offset value.
Eg, to change zone local Ids to global Ids
Definition at line 85 of file ensightCellsI.H.
|
inline |
Decrease face ids by specified offset value.
Eg, to change global Ids to zone local Ids
Definition at line 91 of file ensightCellsI.H.
|
inlinenoexcept |
Return info proxy, used to print information to a stream.
Definition at line 338 of file ensightCells.H.
Referenced by ensightMesh::correct().

| Foam::label uniqueMeshPoints | ( | const polyMesh & | mesh, |
| labelList & | uniqueMeshPointLabels, | ||
| bool | parallel | ||
| ) | const |
Globally unique mesh points. Required when writing point fields.
Definition at line 221 of file ensightCellsAddr.C.
References mesh, and List< label >::null().
Referenced by Foam::ensightOutput::writePointField().


|
virtual |
Write information about the object as a dictionary, optionally write all element addresses.
Reimplemented from ensightPart.
Definition at line 262 of file ensightCells.C.
References Ostream::beginBlock(), Ostream::endBlock(), Foam::endEntry(), ensightCells::key(), Foam::name(), ensightCells::nTypes, os(), Foam::type(), Ostream::writeEntry(), Ostream::writeKeyword(), and UList< T >::writeList().

|
virtual |
Write geometry, using a mesh reference (serial only)
< Collective write?
Definition at line 260 of file ensightCellsIO.C.
References ensightPart::index(), mesh, ensightPart::name(), nPoints, ensightCells::nTypes, os(), UPstream::parRun(), polyMesh::points(), and Foam::ensightOutput::Detail::writeCoordinates().

|
inlinenoexcept |
Processor-local size of all elements.
Definition at line 193 of file ensightPart.H.
|
static |
Number of 'Cell' element types (5)
Definition at line 74 of file ensightCells.H.
Referenced by ensightCells::write(), and ensightCells::writeDict().
|
static |
The ensight 'Cell' element type names.
Definition at line 79 of file ensightCells.H.