#include <ExoIIUtil.hpp>
Public Member Functions | |
ExoIIUtil (Interface *mdb) | |
~ExoIIUtil () | |
virtual ExoIIElementType | element_name_to_type (const char *name) |
given the element name, return the type More... | |
virtual ExoIIElementType | get_element_type (EntityHandle entity, Tag mid_nodes_tag, Tag geom_dimension_tag, EntityType indiv_entity_type=MBMAXTYPE) |
get the element type of the entity; this entity can either be a meshset, in which case it will be assumed to be a material set meshset, or an individual entity. More... | |
virtual void | has_mid_nodes (ExoIIElementType elem_type, int *array) |
virtual int | has_mid_nodes (ExoIIElementType elem_type, int dimension) |
virtual int | geometric_dimension (const ExoIIElementType elem_type) |
return the geometric dimension of the specified element type More... | |
virtual const char * | element_type_name (ExoIIElementType type) |
Public Member Functions inherited from moab::ExoIIInterface | |
ExoIIInterface () | |
virtual | ~ExoIIInterface () |
Static Public Member Functions | |
static ExoIIElementType | static_element_name_to_type (const char *name) |
given the element name, return the type More... | |
static ExoIIElementType | static_get_element_type (Interface *mdbImpl, const EntityHandle entity, const Tag mid_nodes_tag, const Tag geom_dimension_tag, const EntityType indiv_entity_type=MBMAXTYPE) |
get the element type of the entity; this entity can either be a meshset, in which case it will be assumed to be a material set meshset, or an individual entity. If a meshset, and indiv_entity_type is input, that type is used to start the search for the connectivity tag which determines how many vertices per entity are defined for that meshset More... | |
static ExoIIElementType | get_element_type_from_num_verts (const int num_verts, const EntityType entity_type=MBMAXTYPE, const int dimension=3) |
given the number of vertices in an entity, and optionally the entity type and geometric dimension, return the corresponding exodusII element type; dimension defaults to 3 following TSTT convention More... | |
Static Public Attributes | |
static const EntityType | ExoIIElementMBEntity [] |
the MB entity type used for each element type More... | |
static const char * | ElementTypeNames [] |
names for all the element types that MB ExoII reader supports More... | |
static const int | VerticesPerElement [] |
number of vertices per element More... | |
static const int | HasMidNodes [][4] |
HasMidNode[elem_type][dim] = 1 denotes that elem_type has mid-nodes on sub-entities of dimension dim. More... | |
static const int | ElementGeometricDimension [] |
geometric dimension of each element More... | |
Private Attributes | |
Interface * | mMB |
Additional Inherited Members | |
Public Types inherited from moab::ExoIIInterface | |
enum | { MAX_STR_LENGTH = 33 , MAX_LINE_LENGTH = 80 } |
Definition at line 33 of file ExoIIUtil.hpp.
|
inline |
Definition at line 39 of file ExoIIUtil.hpp.
|
inline |
Definition at line 40 of file ExoIIUtil.hpp.
|
inlinevirtual |
given the element name, return the type
Implements moab::ExoIIInterface.
Definition at line 43 of file ExoIIUtil.hpp.
References static_element_name_to_type().
|
inlinevirtual |
Implements moab::ExoIIInterface.
Definition at line 77 of file ExoIIUtil.hpp.
References ElementTypeNames.
|
inlinevirtual |
return the geometric dimension of the specified element type
Implements moab::ExoIIInterface.
Definition at line 72 of file ExoIIUtil.hpp.
References ElementGeometricDimension.
|
inlinevirtual |
get the element type of the entity; this entity can either be a meshset, in which case it will be assumed to be a material set meshset, or an individual entity.
Implements moab::ExoIIInterface.
Definition at line 51 of file ExoIIUtil.hpp.
References mMB, and static_get_element_type().
|
static |
given the number of vertices in an entity, and optionally the entity type and geometric dimension, return the corresponding exodusII element type; dimension defaults to 3 following TSTT convention
Definition at line 300 of file ExoIIUtil.cpp.
References ElementGeometricDimension, moab::EXOII_MAX_ELEM_TYPE, moab::EXOII_POLYGON, moab::EXOII_POLYHEDRON, ExoIIElementMBEntity, MBMAXTYPE, MBPOLYGON, MBPOLYHEDRON, and VerticesPerElement.
Referenced by moab::WriteNCDF::gather_mesh_information(), moab::WriteSLAC::gather_mesh_information(), moab::WriteTemplate::gather_mesh_information(), and static_get_element_type().
|
inlinevirtual |
Implements moab::ExoIIInterface.
Definition at line 59 of file ExoIIUtil.hpp.
References HasMidNodes.
Referenced by static_get_element_type().
|
inlinevirtual |
Implements moab::ExoIIInterface.
Definition at line 67 of file ExoIIUtil.hpp.
References HasMidNodes.
|
static |
given the element name, return the type
Definition at line 218 of file ExoIIUtil.cpp.
References ElementTypeNames, and moab::EXOII_MAX_ELEM_TYPE.
Referenced by element_name_to_type(), moab::ReadNCDF::read_elements(), and moab::ReadNCDF::update().
|
static |
get the element type of the entity; this entity can either be a meshset, in which case it will be assumed to be a material set meshset, or an individual entity. If a meshset, and indiv_entity_type is input, that type is used to start the search for the connectivity tag which determines how many vertices per entity are defined for that meshset
Definition at line 227 of file ExoIIUtil.cpp.
References moab::CN::Dimension(), ElementGeometricDimension, moab::EXOII_MAX_ELEM_TYPE, moab::EXOII_SPHERE, ExoIIElementMBEntity, moab::Interface::get_connectivity(), get_element_type_from_num_verts(), has_mid_nodes(), HasMidNodes, MB_SUCCESS, MBEDGE, MBENTITYSET, MBMAXTYPE, MBQUAD, MBTRI, MBVERTEX, moab::Interface::tag_get_data(), moab::Interface::type_from_handle(), and moab::CN::VerticesPerEntity().
Referenced by get_element_type().
|
static |
geometric dimension of each element
Definition at line 117 of file ExoIIUtil.hpp.
Referenced by geometric_dimension(), get_element_type_from_num_verts(), and static_get_element_type().
|
static |
names for all the element types that MB ExoII reader supports
Definition at line 107 of file ExoIIUtil.hpp.
Referenced by element_type_name(), moab::WriteNCDF::initialize_exodus_file(), and static_element_name_to_type().
|
static |
the MB entity type used for each element type
Definition at line 104 of file ExoIIUtil.hpp.
Referenced by moab::ReadNCDF::create_ss_elements(), get_element_type_from_num_verts(), moab::ReadNCDF::read_elements(), static_get_element_type(), moab::ReadNCDF::update(), and moab::WriteNCDF::write_elementblocks().
|
static |
HasMidNode[elem_type][dim] = 1 denotes that elem_type has mid-nodes on sub-entities of dimension dim.
Definition at line 114 of file ExoIIUtil.hpp.
Referenced by has_mid_nodes(), and static_get_element_type().
|
private |
Definition at line 36 of file ExoIIUtil.hpp.
Referenced by get_element_type().
|
static |
number of vertices per element
Definition at line 110 of file ExoIIUtil.hpp.
Referenced by moab::WriteNCDF::gather_mesh_information(), moab::WriteSLAC::gather_mesh_information(), moab::WriteTemplate::gather_mesh_information(), get_element_type_from_num_verts(), moab::ReadNCDF::read_elements(), and moab::ReadNCDF::update().