IOSS 2.0
Loading...
Searching...
No Matches
Ioss::ElementTopology Class Referenceabstract

Represents an element topology. More...

#include <Ioss_ElementTopology.h>

Inheritance diagram for Ioss::ElementTopology:
[legend]

Public Member Functions

void alias (const std::string &base, const std::string &syn)
 
IOSS_NODISCARD bool is_alias (const std::string &my_alias) const
 
 ElementTopology (const ElementTopology &)=delete
 
ElementTopologyoperator= (const ElementTopology &)=delete
 
virtual ~ElementTopology ()=default
 
IOSS_NODISCARD const std::string & name () const
 
IOSS_NODISCARD std::string master_element_name () const
 
virtual IOSS_NODISCARD ElementShape shape () const =0
 
virtual IOSS_NODISCARD bool is_element () const
 
virtual IOSS_NODISCARD bool is_shell () const =0
 
virtual IOSS_NODISCARD int spatial_dimension () const =0
 
virtual IOSS_NODISCARD int parametric_dimension () const =0
 
virtual IOSS_NODISCARD int order () const =0
 
virtual IOSS_NODISCARD bool edges_similar () const
 
virtual IOSS_NODISCARD bool faces_similar () const
 
virtual IOSS_NODISCARD int number_corner_nodes () const =0
 
virtual IOSS_NODISCARD int number_nodes () const =0
 
virtual IOSS_NODISCARD int number_edges () const =0
 
virtual IOSS_NODISCARD int number_faces () const =0
 
IOSS_NODISCARD int number_boundaries () const
 
virtual IOSS_NODISCARD int number_nodes_edge (int edge=0) const =0
 
virtual IOSS_NODISCARD int number_nodes_face (int face=0) const =0
 
virtual IOSS_NODISCARD int number_edges_face (int face=0) const =0
 
IOSS_NODISCARD IntVector boundary_connectivity (int edge_number) const
 
virtual IOSS_NODISCARD IntVector edge_connectivity (int edge_number) const =0
 
virtual IOSS_NODISCARD IntVector face_connectivity (int face_number) const =0
 
virtual IOSS_NODISCARD IntVector element_connectivity () const =0
 
virtual IOSS_NODISCARD IntVector face_edge_connectivity (int face_number) const
 
IOSS_NODISCARD IntVector element_edge_connectivity () const
 
IOSS_NODISCARD ElementTopologyboundary_type (int face_number=0) const
 
virtual IOSS_NODISCARD ElementTopologyface_type (int face_number=0) const =0
 
virtual IOSS_NODISCARD ElementTopologyedge_type (int edge_number=0) const =0
 
IOSS_NODISCARD bool operator== (const Ioss::ElementTopology &rhs) const
 
IOSS_NODISCARD bool operator!= (const Ioss::ElementTopology &rhs) const
 
IOSS_NODISCARD bool equal (const Ioss::ElementTopology &rhs) const
 
IOSS_NODISCARD ElementPermutationpermutation () const
 
virtual IOSS_NODISCARD const std::string & base_topology_permutation_name () const
 

Static Public Member Functions

static IOSS_NODISCARD ElementTopologyfactory (const std::string &type, bool ok_to_fail=false)
 
static IOSS_NODISCARD ElementTopologyfactory (unsigned int unique_id)
 
static IOSS_NODISCARD unsigned int get_unique_id (const std::string &type)
 
static int describe (NameList *names)
 Get the names of element topologies known to Ioss.
 
static IOSS_NODISCARD NameList describe ()
 Get the names of element topologies known to Ioss.
 

Protected Member Functions

 ElementTopology (std::string type, std::string master_elem_name, bool delete_me=false)
 
virtual bool validate_permutation_nodes () const
 

Private Member Functions

bool equal_ (const Ioss::ElementTopology &rhs, bool quiet) const
 

Static Private Member Functions

static const std::string & topology_shape_to_permutation_name (Ioss::ElementShape topoShape)
 
static ETRegistryregistry ()
 

Private Attributes

const std::string name_
 
const std::string masterElementName_
 

Detailed Description

Represents an element topology.

Defines node, edge, and face connectivity information of an element.

Constructor & Destructor Documentation

◆ ElementTopology() [1/2]

Ioss::ElementTopology::ElementTopology ( const ElementTopology & )
delete

◆ ~ElementTopology()

virtual Ioss::ElementTopology::~ElementTopology ( )
virtualdefault

◆ ElementTopology() [2/2]

Ioss::ElementTopology::ElementTopology ( std::string type,
std::string master_elem_name,
bool delete_me = false )
protected

Member Function Documentation

◆ alias()

void Ioss::ElementTopology::alias ( const std::string & base,
const std::string & syn )

◆ base_topology_permutation_name()

const std::string & Ioss::ElementTopology::base_topology_permutation_name ( ) const
virtual

Reimplemented in Ioss::Sphere, and Ioss::Super.

◆ boundary_connectivity()

Ioss::IntVector Ioss::ElementTopology::boundary_connectivity ( int edge_number) const

◆ boundary_type()

Ioss::ElementTopology * Ioss::ElementTopology::boundary_type ( int face_number = 0) const

◆ describe() [1/2]

Ioss::NameList Ioss::ElementTopology::describe ( )
static

Get the names of element topologies known to Ioss.

Returns
The list of known element topology names.

◆ describe() [2/2]

int Ioss::ElementTopology::describe ( NameList * names)
static

Get the names of element topologies known to Ioss.

Parameters
[out]namesThe list of known element topology names.
Returns
The number of known element topologies.

◆ edge_connectivity()

◆ edge_type()

◆ edges_similar()

bool Ioss::ElementTopology::edges_similar ( ) const
virtual

◆ element_connectivity()

◆ element_edge_connectivity()

Ioss::IntVector Ioss::ElementTopology::element_edge_connectivity ( ) const

◆ equal()

bool Ioss::ElementTopology::equal ( const Ioss::ElementTopology & rhs) const

◆ equal_()

bool Ioss::ElementTopology::equal_ ( const Ioss::ElementTopology & rhs,
bool quiet ) const
private

◆ face_connectivity()

◆ face_edge_connectivity()

◆ face_type()

◆ faces_similar()

◆ factory() [1/2]

Ioss::ElementTopology * Ioss::ElementTopology::factory ( const std::string & type,
bool ok_to_fail = false )
static

◆ factory() [2/2]

Ioss::ElementTopology * Ioss::ElementTopology::factory ( unsigned int unique_id)
static

◆ get_unique_id()

unsigned int Ioss::ElementTopology::get_unique_id ( const std::string & type)
static

◆ is_alias()

bool Ioss::ElementTopology::is_alias ( const std::string & my_alias) const

◆ is_element()

◆ is_shell()

◆ master_element_name()

IOSS_NODISCARD std::string Ioss::ElementTopology::master_element_name ( ) const
inline

◆ name()

IOSS_NODISCARD const std::string & Ioss::ElementTopology::name ( ) const
inline

◆ number_boundaries()

int Ioss::ElementTopology::number_boundaries ( ) const

◆ number_corner_nodes()

◆ number_edges()

◆ number_edges_face()

◆ number_faces()

◆ number_nodes()

◆ number_nodes_edge()

◆ number_nodes_face()

◆ operator!=()

bool Ioss::ElementTopology::operator!= ( const Ioss::ElementTopology & rhs) const

◆ operator=()

ElementTopology & Ioss::ElementTopology::operator= ( const ElementTopology & )
delete

◆ operator==()

bool Ioss::ElementTopology::operator== ( const Ioss::ElementTopology & rhs) const

◆ order()

◆ parametric_dimension()

◆ permutation()

Ioss::ElementPermutation * Ioss::ElementTopology::permutation ( ) const

◆ registry()

Ioss::ETRegistry & Ioss::ElementTopology::registry ( )
staticprivate

◆ shape()

◆ spatial_dimension()

◆ topology_shape_to_permutation_name()

const std::string & Ioss::ElementTopology::topology_shape_to_permutation_name ( Ioss::ElementShape topoShape)
staticprivate

◆ validate_permutation_nodes()

virtual bool Ioss::ElementTopology::validate_permutation_nodes ( ) const
inlineprotectedvirtual

Reimplemented in Ioss::Node.

Member Data Documentation

◆ masterElementName_

const std::string Ioss::ElementTopology::masterElementName_
private

◆ name_

const std::string Ioss::ElementTopology::name_
private

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