Sierra Toolkit Version of the Day
stk::mesh::TopologicalMetaData Class Reference

Augment mesh meta data with topological meta data including entity ranks, shards' cell topologies appropriate for the given spatial dimension, and part to cell topology mapping. More...

#include <TopologicalMetaData.hpp>

List of all members.

Public Member Functions

 TopologicalMetaData (MetaData &, unsigned spatial_dimension)
 Construct topological meta data including the map from Parts to shards' cell topologies.
Partdeclare_part (const std::string &name, const CellTopologyData *top)
 Declare part of a given name and associated cell topology.
template<class Top >
Partdeclare_part (const std::string &name)
 Declare part of a given name and associated cell topology.
void declare_cell_topology (const CellTopologyData *, EntityRank entity_rank)
 Extend the list of defined cell topologies for mesh entities of the given rank.
EntityRank get_entity_rank (const CellTopologyData *) const

Static Public Member Functions

static void verify_spatial_dimension (unsigned spatial_dimension, const char *method)
static std::vector< std::string > entity_rank_names (unsigned spatial_dimension)
 Entity rank text names that match the entity rank values in this class.
static const CellTopologyData * get_cell_topology (const Part &part, const char *required_by=0)
 Get the cell topology associated with a mesh part.
static const CellTopologyData * get_cell_topology (const Bucket &bucket, const char *required_by=0)
 Query the cell topology associated with a bucket.
static const CellTopologyData * get_cell_topology (const Entity &entity, const char *required_by=0)

Public Attributes

const unsigned spatial_dimension
 Spatial dimension.
const EntityRank node_rank
 Rank of nodes (always zero)
const EntityRank edge_rank
 Rank of edges (1 for 2D and 3D)
const EntityRank side_rank
 Rank of sides (1 for 2D, 2 for 3D)
const EntityRank element_rank
 Rank of elements (spatial_dimension)
const EntityRank patch_rank
 Rank of arbitrary patches (element+1)

Detailed Description

Augment mesh meta data with topological meta data including entity ranks, shards' cell topologies appropriate for the given spatial dimension, and part to cell topology mapping.

Definition at line 27 of file TopologicalMetaData.hpp.


Constructor & Destructor Documentation

stk::mesh::TopologicalMetaData::TopologicalMetaData ( MetaData arg_meta_data,
unsigned  spatial_dimension 
)

Construct topological meta data including the map from Parts to shards' cell topologies.

Required that 1 <= spatial_dimension <= 3 .

Definition at line 72 of file TopologicalMetaData.cpp.


Member Function Documentation

const CellTopologyData * stk::mesh::TopologicalMetaData::get_cell_topology ( const Part part,
const char *  required_by = 0 
) [static]

Get the cell topology associated with a mesh part.

The supersets of the mesh part are not checked.

Definition at line 379 of file TopologicalMetaData.cpp.

const CellTopologyData * stk::mesh::TopologicalMetaData::get_cell_topology ( const Bucket bucket,
const char *  required_by = 0 
) [static]

Query the cell topology associated with a bucket.

The bucket's superset mesh parts of the bucket's entity rank are queried for their associated cell topology.

If no cell topology is found and required_by is zero then zero is returned, otherwise an exception is thrown with the required_by string in the message.

If there is exactly one cell topology then it is returned.

If more than one cell topology is found then an exception is thrown.

Definition at line 418 of file TopologicalMetaData.cpp.

Part & stk::mesh::TopologicalMetaData::declare_part ( const std::string &  name,
const CellTopologyData *  top 
)

Declare part of a given name and associated cell topology.

If the cell topology is not already defined then the entity rank is defined to be the dimension of the cell topology.

Definition at line 208 of file TopologicalMetaData.cpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends