IOSS 2.0

Public Member Functions | Private Attributes | List of all members
Iogn::ExodusMesh Class Reference

`#include <Iogn_DashSurfaceMesh.h>`

## Public Member Functions
| ExodusMesh (const ExodusData &exodusData)
| ~ExodusMesh () override=default
int64_t | node_count () const override
int64_t | node_count_proc () const override
int64_t | element_count () const override
int64_t | element_count (int64_t blockNumber) const override
int64_t | element_count_proc () const override
int64_t | element_count_proc (int64_t blockNumber) const override
int64_t | block_count () const override
int64_t | nodeset_count () const override
int64_t | nodeset_node_count_proc (int64_t id) const override
int64_t | sideset_count () const override
int64_t | sideset_side_count_proc (int64_t id) const override
int64_t | communication_node_count_proc () const override
void | coordinates (double *coord) const override
void | coordinates (std::vector< double > &coord) const override
void | coordinates (int component, std::vector< double > &xyz) const override
void | coordinates (std::vector< double > &x, std::vector< double > &y, std::vector< double > &z) const override
void | connectivity (int64_t blockNumber, int *connectivityForBlock) const override
std::pair< std::string, int > | topology_type (int64_t blockNumber) const override
void | sideset_elem_sides (int64_t setId, std::vector< int64_t > &elem_sides) const override
std::vector< std::string > | sideset_touching_blocks (int64_t setId) const override
void | nodeset_nodes (int64_t nset_id, std::vector< int64_t > &nodes) const override
void | node_communication_map (std::vector< int64_t > &map, std::vector< int > &proc) override
void | node_map (std::vector< int > &map) const override
void | node_map (std::vector< int64_t > &map) const override
void | element_map (int64_t blockNumber, std::vector< int > &map) const override
void | element_map (int64_t blockNumber, std::vector< int64_t > &map) const override
void | element_map (std::vector< int64_t > &map) const override
void | element_map (std::vector< int > &map) const override
Public Member Functions inherited from Iogn::GeneratedMesh
| GeneratedMesh (const std::string &parameters, int proc_count=1, int my_proc=0)
| GeneratedMesh (int64_t num_x, int64_t num_y, int64_t num_z, int proc_count=1, int my_proc=0)
| GeneratedMesh ()
virtual | ~GeneratedMesh ()
void | create_tets (bool yesno)
int64_t | add_shell_block (ShellLocation loc)
int64_t | add_nodeset (ShellLocation loc)
int64_t | add_sideset (ShellLocation loc)
void | set_scale (double scl_x, double scl_y, double scl_z)
void | set_offset (double off_x, double off_y, double off_z)
void | set_bbox (double xmin, double ymin, double zmin, double xmax, double ymax, double zmax)
void | set_rotation (const std::string &axis, double angle_degrees)
int64_t | nodeset_node_count (int64_t id) const
int64_t | sideset_side_count (int64_t id) const
int64_t | shell_element_count (ShellLocation) const
int64_t | shell_element_count_proc (ShellLocation) const
int64_t | timestep_count () const
void | build_node_map (Ioss::Int64Vector &map, std::vector< int > &proc, int64_t slab, size_t slabOffset, size_t adjacentProc, size_t index)
virtual void | owning_processor (int *owner, int64_t num_node)
void | element_surface_map (ShellLocation loc, MapVector &map) const
void | connectivity (int64_t block_number, Ioss::Int64Vector &connect) const
void | connectivity (int64_t block_number, Ioss::IntVector &connect) const
void | connectivity (int64_t block_number, int64_t *connect) const
int64_t | get_num_x () const
int64_t | get_num_y () const
int64_t | get_num_z () const
size_t | get_variable_count (Ioss::EntityType type) const

## Private Attributes
int64_t | mGlobalNumberOfElements
int64_t | mLocalNumberOfElements
const ExodusData & | mExodusData
std::vector< int64_t > | mElementOffsetForBlock

## Additional Inherited Members
Public Types inherited from Iogn::GeneratedMesh
enum | ShellLocation { MX = 0, PX = 1, MY = 2, PY = 3, MZ = 4, PZ = 5 }

## Constructor & Destructor Documentation

## ◆ ExodusMesh()

Iogn::ExodusMesh::ExodusMesh | ( | const ExodusData & | exodusData | ) |
| explicit

## ◆ ~ExodusMesh()

Iogn::ExodusMesh::~ExodusMesh | ( |  | ) |
| override default

## Member Function Documentation

## ◆ block_count()

int64_t Iogn::ExodusMesh::block_count | ( |  | ) | const
| override virtual

Return number of element blocks in the entire model.

Reimplemented from Iogn::GeneratedMesh.

## ◆ communication_node_count_proc()

int64_t Iogn::ExodusMesh::communication_node_count_proc | ( |  | ) | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ connectivity()

void Iogn::ExodusMesh::connectivity | ( | int64_t | blockNumber,
|  | int * | connectivityForBlock
| ) |  | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ coordinates() [1/4]

void Iogn::ExodusMesh::coordinates | ( | double * | coord | ) | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ coordinates() [2/4]

void Iogn::ExodusMesh::coordinates | ( | std::vector< double > & | coord | ) | const
| override virtual

Return the coordinates for all nodes on this processor. The first 3 entries in the 'coord' vector are the x, y, and z coordinates of the first node, etc. The 'coord' vector will be resized to the size required to contain the nodal coordinates; all information in 'coord' will be overwritten.

Reimplemented from Iogn::GeneratedMesh.

## ◆ coordinates() [3/4]

void Iogn::ExodusMesh::coordinates | ( | int | component,
|  | std::vector< double > & | xyz
| ) |  | const
| override virtual

Return the coordinates for componenet 'comp' (1=x, 2=y, 3=z) for all nodes on this processor. The vector will be resized to the size required to contain the nodal coordinates; all information in the vector will be overwritten. It is an error to request the coordinates via this function if a rotation is defined.

Reimplemented from Iogn::GeneratedMesh.

## ◆ coordinates() [4/4]

void Iogn::ExodusMesh::coordinates | ( | std::vector< double > & | x,
|  | std::vector< double > & | y,
|  | std::vector< double > & | z
| ) |  | const
| override virtual

Return the coordinates for all nodes on this processor in separate vectors. The vectors will be resized to the size required to contain the nodal coordinates; all information in the vectors will be overwritten.

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_count() [1/2]

int64_t Iogn::ExodusMesh::element_count | ( |  | ) | const
| override virtual

Return number of elements in all element blocks in the model.

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_count() [2/2]

int64_t Iogn::ExodusMesh::element_count | ( | int64_t | block_number | ) | const
| override virtual

Return number of elements in the element block with id 'block_number'. The 'block_number' ranges from '1' to 'block_count()'.

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_count_proc() [1/2]

int64_t Iogn::ExodusMesh::element_count_proc | ( |  | ) | const
| override virtual

Return number of elements in all element blocks on this processor.

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_count_proc() [2/2]

int64_t Iogn::ExodusMesh::element_count_proc | ( | int64_t | block_number | ) | const
| override virtual

Return number of elements on this processor in the element block with id 'block_number'. The 'block_number' ranges from '1' to 'block_count()'.

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_map() [1/4]

void Iogn::ExodusMesh::element_map | ( | int64_t | blockNumber,
|  | std::vector< int > & | map
| ) |  | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_map() [2/4]

void Iogn::ExodusMesh::element_map | ( | int64_t | block_number,
|  | std::vector< int64_t > & | map
| ) |  | const
| override virtual

Fill the passed in 'map' argument with the element map "map[local_position] = global_id" for the elements on this processor in block "block_number".

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_map() [3/4]

void Iogn::ExodusMesh::element_map | ( | std::vector< int64_t > & | map | ) | const
| override virtual

Fill the passed in 'map' argument with the element map "map[local_position] = global_id" for all elements on this processor

Reimplemented from Iogn::GeneratedMesh.

## ◆ element_map() [4/4]

void Iogn::ExodusMesh::element_map | ( | std::vector< int > & | map | ) | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ node_communication_map()

void Iogn::ExodusMesh::node_communication_map | ( | std::vector< int64_t > & | map,
|  | std::vector< int > & | proc
| ) |  |
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ node_count()

int64_t Iogn::ExodusMesh::node_count | ( |  | ) | const
| override virtual

Return number of nodes in the entire model.

Reimplemented from Iogn::GeneratedMesh.

## ◆ node_count_proc()

int64_t Iogn::ExodusMesh::node_count_proc | ( |  | ) | const
| override virtual

Return number of nodes on this processor.

Reimplemented from Iogn::GeneratedMesh.

## ◆ node_map() [1/2]

void Iogn::ExodusMesh::node_map | ( | std::vector< int > & | map | ) | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ node_map() [2/2]

void Iogn::ExodusMesh::node_map | ( | std::vector< int64_t > & | map | ) | const
| override virtual

Fill the passed in 'map' argument with the node map "map[local_position] = global_id" for the nodes on this processor.

Reimplemented from Iogn::GeneratedMesh.

## ◆ nodeset_count()

int64_t Iogn::ExodusMesh::nodeset_count | ( |  | ) | const
| override virtual

Return number of nodesets in the entire model.

Reimplemented from Iogn::GeneratedMesh.

## ◆ nodeset_node_count_proc()

int64_t Iogn::ExodusMesh::nodeset_node_count_proc | ( | int64_t | id | ) | const
| override virtual

Return number of nodeset nodes on nodeset 'id' on the current processor

Reimplemented from Iogn::GeneratedMesh.

## ◆ nodeset_nodes()

void Iogn::ExodusMesh::nodeset_nodes | ( | int64_t | id,
|  | std::vector< int64_t > & | nodes
| ) |  | const
| override virtual

Return the list of nodes in nodeset 'id' on this processor. The 'nodes' vector will be resized to the size required to contain the node list. The ids are global ids.

Reimplemented from Iogn::GeneratedMesh.

## ◆ sideset_count()

int64_t Iogn::ExodusMesh::sideset_count | ( |  | ) | const
| override virtual

Return number of sidesets in the entire model.

Reimplemented from Iogn::GeneratedMesh.

## ◆ sideset_elem_sides()

void Iogn::ExodusMesh::sideset_elem_sides | ( | int64_t | id,
|  | std::vector< int64_t > & | elem_sides
| ) |  | const
| override virtual

Return the list of the face/ordinal pairs "elem_sides[local_position] = element global_id" and "elem_sides[local_position+1] = element local face id (0-based)" for the faces in sideset 'id' on this processor. The 'elem_sides' vector will be resized to the size required to contain the list. The element ids are global ids, the side ordinal is 0-based.

Reimplemented from Iogn::GeneratedMesh.

## ◆ sideset_side_count_proc()

int64_t Iogn::ExodusMesh::sideset_side_count_proc | ( | int64_t | id | ) | const
| override virtual

Return number of sideset 'sides' on sideset 'id' on the current processor.

Reimplemented from Iogn::GeneratedMesh.

## ◆ sideset_touching_blocks()

std::vector< std::string > Iogn::ExodusMesh::sideset_touching_blocks | ( | int64_t | setId | ) | const
| override virtual

Reimplemented from Iogn::GeneratedMesh.

## ◆ topology_type()

std::pair< std::string, int > Iogn::ExodusMesh::topology_type | ( | int64_t | block_number | ) | const
| override virtual

Returns pair containing "topology type string" and "number of nodes / element". The topology type string will be "hex8" for the hex element block and "shell4" for the shell element blocks.

Reimplemented from Iogn::GeneratedMesh.

## Member Data Documentation

## ◆ mElementOffsetForBlock

std::vector<int64_t> Iogn::ExodusMesh::mElementOffsetForBlock
| private

## ◆ mExodusData

const ExodusData& Iogn::ExodusMesh::mExodusData
| private

## ◆ mGlobalNumberOfElements

int64_t Iogn::ExodusMesh::mGlobalNumberOfElements
| private

## ◆ mLocalNumberOfElements

int64_t Iogn::ExodusMesh::mLocalNumberOfElements
| private

The documentation for this class was generated from the following files:

- src/generated/Iogn_DashSurfaceMesh.h
- src/generated/Iogn_DashSurfaceMesh.C