Sierra Toolkit  Version of the Day
Bulk Data Finite Element Entities

Create entities with common used finite element topologies. More...

Collaboration diagram for Bulk Data Finite Element Entities:

Typedefs

typedef Field< double *, stk_classic::mesh::ElementNodestk_classic::mesh::fem::ElementNodePointerField
 

Functions

Entitystk_classic::mesh::fem::declare_element (BulkData &mesh, Part &part, const EntityId elem_id, const EntityId node_id[])
 Declare an element member of a Part with a CellTopology and nodes conformal to that topology.
 
Entitystk_classic::mesh::fem::declare_element_side (BulkData &mesh, const stk_classic::mesh::EntityId global_side_id, Entity &elem, const unsigned local_side_id, Part *part=NULL)
 Create (or find) an element side. More...
 
Entitystk_classic::mesh::fem::declare_element_edge (BulkData &mesh, const stk_classic::mesh::EntityId global_side_id, Entity &elem, const unsigned local_side_id, Part *part=NULL)
 Create (or find) an element edge. More...
 
bool stk_classic::mesh::fem::element_side_polarity (const Entity &elem, const Entity &side, int local_side_id=-1)
 Determine the polarity of the local side, more efficient if the local_side_id is known.
 
Entitystk_classic::mesh::fem::declare_element_side (Entity &elem, Entity &side, const unsigned local_side_id, Part *part=NULL)
 Create (or find) an element side. More...
 
Entitystk_classic::mesh::fem::declare_element_edge (Entity &elem, Entity &edge, const unsigned local_edge_id, Part *part=NULL)
 Create (or find) an element edge. More...
 
template<class Top >
Partstk_classic::mesh::fem::declare_part (FEMMetaData &meta_data, const std::string &name)
 Declare a part with a given cell topology. This is just a convenient function that wraps FEMMetaData's declare_part.
 
const CellTopologyData * stk_classic::mesh::fem::get_subcell_nodes (const Entity &entity, EntityRank subcell_rank, unsigned subcell_identifier, EntityVector &subcell_nodes)
 
int stk_classic::mesh::fem::get_entity_subcell_id (const Entity &entity, const EntityRank subcell_rank, const CellTopologyData *side_topology, const EntityVector &side_nodes)
 Given an entity and collection of nodes, return the local id of the subcell that contains those nodes in the correct orientation.
 
bool stk_classic::mesh::fem::comm_mesh_counts (BulkData &, std::vector< size_t > &counts, bool=false)
 Global counts for a mesh's entities.
 
template<class NodeField >
ElementNodePointerFieldstk_classic::mesh::fem::declare_element_node_pointer_field (FEMMetaData &fmd, const std::string &s, NodeField &node_field)
 Declare an element-to-node-data pointer field.
 
template<class Traits >
void stk_classic::mesh::fem::get_parts_with_topology (stk_classic::mesh::BulkData &mesh, stk_classic::mesh::PartVector &parts, bool skip_topology_root_parts=false)
 
unsigned stk_classic::mesh::fem::get_spatial_dimension (const Entity &entity)
 

Detailed Description

Create entities with common used finite element topologies.

Function Documentation

◆ declare_element_side() [1/2]

Entity & stk_classic::mesh::fem::declare_element_side ( BulkData mesh,
const stk_classic::mesh::EntityId  global_side_id,
Entity elem,
const unsigned  local_side_id,
Part part = NULL 
)

Create (or find) an element side.

The element must be a member of a Part with a CellTopology.

Definition at line 186 of file FEMHelpers.cpp.

◆ declare_element_edge() [1/2]

Entity & stk_classic::mesh::fem::declare_element_edge ( BulkData mesh,
const stk_classic::mesh::EntityId  global_side_id,
Entity elem,
const unsigned  local_side_id,
Part part = NULL 
)

Create (or find) an element edge.

The element must be a member of a Part with a CellTopology.

Definition at line 211 of file FEMHelpers.cpp.

◆ declare_element_side() [2/2]

Entity & stk_classic::mesh::fem::declare_element_side ( Entity elem,
Entity side,
const unsigned  local_side_id,
Part part = NULL 
)

Create (or find) an element side.

The element must be a member of a Part with a CellTopology.

Definition at line 104 of file FEMHelpers.cpp.

◆ declare_element_edge() [2/2]

Entity & stk_classic::mesh::fem::declare_element_edge ( Entity elem,
Entity edge,
const unsigned  local_edge_id,
Part part = NULL 
)

Create (or find) an element edge.

The element must be a member of a Part with a CellTopology.

Definition at line 145 of file FEMHelpers.cpp.

◆ get_subcell_nodes()

const CellTopologyData * stk_classic::mesh::fem::get_subcell_nodes ( const Entity entity,
EntityRank  subcell_rank,
unsigned  subcell_identifier,
EntityVector &  subcell_nodes 
)

Given an entity, subcell_rank, and subcell_id, return the nodes that make up the subcell in a correct order for the given polarity.

Parameters
entity
subcell_rank
subcell_indentifier
subcell_nodesEntityVector output of the subcell nodes
use_reverse_polarity
Returns
CellTopologyData * of the requested subcell

Definition at line 239 of file FEMHelpers.cpp.