Go to the documentation of this file.
19 #include "libmesh/face_tri3_subdivision.h"
20 #include "libmesh/mesh_subdivision_support.h"
21 #include "libmesh/enum_order.h"
65 unsigned int irregular_idx = 0;
66 for (
unsigned int i = 0; i < 3; ++i)
68 if (this->
node_ptr(i)->valence() != 6)
72 libmesh_error_msg(
"Error: The mesh contains elements with more than one irregular vertex!");
81 switch (irregular_idx)
99 libmesh_error_msg(
"Unrecognized irregular_idx = " << irregular_idx);
122 libmesh_assert_less(
node_id, 3);
Tri3Subdivision()
Constructor without parent specification.
unsigned int n_neighbors() const
The libMesh namespace provides an interface to certain functionality in the library.
bool _subdivision_updated
true if the subdivision element is ready for use, i.e.
void prepare_subdivision_properties()
Prepares the element for use by reordering the nodes such that the irregular node (valence !...
Node ** _nodes
Pointers to the nodes we are connected to.
bool _is_ghost
true if the element is a ghost element (e.g.
unsigned int local_node_number(unsigned int node_id) const
Node * get_ordered_node(unsigned int node_id) const
A Node is like a Point, but with more information.
Node * _ordered_nodes[3]
A list containing the ordered nodes such that the irregular node (valence != 6), if there is one,...
unsigned int get_ordered_valence(unsigned int node_id) const
unsigned int valence() const
The Tri3 is an element in 2D composed of 3 nodes.
This is the base class from which all geometric element types are derived.
virtual Order default_order() const override
dof_id_type node_id(const unsigned int i) const
The Tri3Subdivision element is a three-noded subdivision surface shell element used in mechanics calc...
const Node * node_ptr(const unsigned int i) const
virtual ElemType type() const =0