A 1D geometric element with 3 nodes. More...
#include <edge_edge3.h>
Public Types | |
enum | RefinementState { COARSEN = 0, DO_NOTHING, REFINE, JUST_REFINED, JUST_COARSENED, INACTIVE, COARSEN_INACTIVE, INVALID_REFINEMENTSTATE } |
typedef Elem *const * | NeighborPtrIter |
typedef const Elem *const * | ConstNeighborPtrIter |
typedef Predicates::multi_predicate | Predicate |
Public Member Functions | |
Edge3 (Elem *p=nullptr) | |
Edge3 (Edge3 &&)=delete | |
Edge3 (const Edge3 &)=delete | |
Edge3 & | operator= (const Edge3 &)=delete |
Edge3 & | operator= (Edge3 &&)=delete |
virtual | ~Edge3 ()=default |
virtual Point | master_point (const unsigned int i) const override |
virtual unsigned int | n_nodes () const override |
virtual unsigned int | n_sub_elem () const override |
virtual bool | is_vertex (const unsigned int i) const override |
virtual bool | is_edge (const unsigned int i) const override |
virtual bool | is_face (const unsigned int i) const override |
virtual bool | is_node_on_side (const unsigned int n, const unsigned int s) const override |
virtual bool | is_node_on_edge (const unsigned int n, const unsigned int e) const override |
virtual bool | has_affine_map () const override |
virtual ElemType | type () const override |
virtual Order | default_order () const override |
virtual void | connectivity (const unsigned int sc, const IOPackage iop, std::vector< dof_id_type > &conn) const override |
virtual unsigned int | n_second_order_adjacent_vertices (const unsigned int) const override |
virtual unsigned short int | second_order_adjacent_vertex (const unsigned int, const unsigned int v) const override |
virtual std::pair< unsigned short int, unsigned short int > | second_order_child_vertex (const unsigned int n) const override |
virtual Real | volume () const override |
virtual BoundingBox | loose_bounding_box () const override |
virtual bool | infinite () const override |
virtual dof_id_type | key () const override |
virtual dof_id_type | key (const unsigned int s) const override final |
virtual dof_id_type | key (const unsigned int s) const =0 |
virtual dof_id_type | key () const |
virtual unsigned short | dim () const override final |
virtual unsigned int | n_sides () const override final |
virtual unsigned int | n_vertices () const override final |
virtual unsigned int | n_edges () const override final |
virtual unsigned int | n_faces () const override final |
virtual unsigned int | n_children () const override final |
virtual bool | is_child_on_side (const unsigned int c, const unsigned int s) const override final |
virtual bool | is_edge_on_side (const unsigned int, const unsigned int) const override final |
virtual unsigned int | opposite_side (const unsigned int s) const override final |
virtual unsigned int | opposite_node (const unsigned int n, const unsigned int s) const override final |
virtual dof_id_type | key (const unsigned int s) const override final |
virtual unsigned int | which_node_am_i (unsigned int side, unsigned int) const override final |
virtual std::unique_ptr< Elem > | side_ptr (const unsigned int i) override final |
virtual void | side_ptr (std::unique_ptr< Elem > &side, const unsigned int i) override final |
std::unique_ptr< const Elem > | side_ptr (unsigned int i) const |
void | side_ptr (std::unique_ptr< const Elem > &side, const unsigned int i) const |
virtual std::unique_ptr< Elem > | build_side_ptr (const unsigned int i, bool proxy) override final |
virtual void | build_side_ptr (std::unique_ptr< Elem > &elem, const unsigned int i) override final |
std::unique_ptr< const Elem > | build_side_ptr (const unsigned int i, bool proxy=true) const |
void | build_side_ptr (std::unique_ptr< const Elem > &side, const unsigned int i) const |
virtual std::unique_ptr< Elem > | build_edge_ptr (const unsigned int) override final |
std::unique_ptr< const Elem > | build_edge_ptr (const unsigned int i) const |
virtual std::vector< unsigned int > | nodes_on_side (const unsigned int s) const override |
const Point & | point (const unsigned int i) const |
Point & | point (const unsigned int i) |
dof_id_type | node_id (const unsigned int i) const |
dof_id_type | node (const unsigned int i) const |
unsigned int | local_node (const dof_id_type i) const |
unsigned int | get_node_index (const Node *node_ptr) const |
const Node *const * | get_nodes () const |
const Node * | node_ptr (const unsigned int i) const |
Node * | node_ptr (const unsigned int i) |
const Node & | node_ref (const unsigned int i) const |
Node & | node_ref (const unsigned int i) |
Node * | get_node (const unsigned int i) const |
virtual Node *& | set_node (const unsigned int i) |
SimpleRange< NodeRefIter > | node_ref_range () |
SimpleRange< ConstNodeRefIter > | node_ref_range () const |
subdomain_id_type | subdomain_id () const |
subdomain_id_type & | subdomain_id () |
const Elem * | reference_elem () const |
bool | operator== (const Elem &rhs) const |
const Elem * | neighbor_ptr (unsigned int i) const |
Elem * | neighbor_ptr (unsigned int i) |
Elem * | neighbor (const unsigned int i) const |
SimpleRange< NeighborPtrIter > | neighbor_ptr_range () |
SimpleRange< ConstNeighborPtrIter > | neighbor_ptr_range () const |
const Elem * | topological_neighbor (const unsigned int i, const MeshBase &mesh, const PointLocatorBase &point_locator, const PeriodicBoundaries *pb) const |
Elem * | topological_neighbor (const unsigned int i, MeshBase &mesh, const PointLocatorBase &point_locator, const PeriodicBoundaries *pb) |
bool | has_topological_neighbor (const Elem *elem, const MeshBase &mesh, const PointLocatorBase &point_locator, const PeriodicBoundaries *pb) const |
void | set_neighbor (const unsigned int i, Elem *n) |
bool | has_neighbor (const Elem *elem) const |
Elem * | child_neighbor (Elem *elem) |
const Elem * | child_neighbor (const Elem *elem) const |
bool | on_boundary () const |
bool | is_semilocal (const processor_id_type my_pid) const |
unsigned int | which_neighbor_am_i (const Elem *e) const |
unsigned int | which_side_am_i (const Elem *e) const |
bool | contains_vertex_of (const Elem *e) const |
bool | contains_edge_of (const Elem *e) const |
void | find_point_neighbors (const Point &p, std::set< const Elem *> &neighbor_set) const |
void | find_point_neighbors (std::set< const Elem *> &neighbor_set) const |
void | find_point_neighbors (std::set< const Elem *> &neighbor_set, const Elem *start_elem) const |
void | find_edge_neighbors (const Point &p1, const Point &p2, std::set< const Elem *> &neighbor_set) const |
void | find_edge_neighbors (std::set< const Elem *> &neighbor_set) const |
void | find_interior_neighbors (std::set< const Elem *> &neighbor_set) const |
void | remove_links_to_me () |
void | make_links_to_me_remote () |
void | make_links_to_me_local (unsigned int n) |
virtual bool | is_remote () const |
void | write_connectivity (std::ostream &out, const IOPackage iop) const |
IntRange< unsigned short > | node_index_range () const |
virtual unsigned int | n_nodes_in_child (unsigned int) const |
IntRange< unsigned short > | side_index_range () const |
unsigned int | n_neighbors () const |
IntRange< unsigned short > | edge_index_range () const |
virtual unsigned int | is_vertex_on_child (unsigned int, unsigned int n) const |
virtual bool | is_vertex_on_parent (unsigned int c, unsigned int n) const |
std::unique_ptr< Elem > | side (const unsigned int i) const |
std::unique_ptr< Elem > | build_side (const unsigned int i, bool proxy=true) const |
std::unique_ptr< Elem > | build_edge (const unsigned int i) const |
virtual Point | centroid () const |
virtual Real | hmin () const |
virtual Real | hmax () const |
virtual Real | quality (const ElemQuality q) const |
virtual std::pair< Real, Real > | qual_bounds (const ElemQuality) const |
virtual bool | contains_point (const Point &p, Real tol=TOLERANCE) const |
virtual bool | close_to_point (const Point &p, Real tol) const |
virtual bool | is_linear () const |
void | print_info (std::ostream &os=libMesh::out) const |
std::string | get_info () const |
bool | active () const |
bool | ancestor () const |
bool | subactive () const |
bool | has_children () const |
bool | has_ancestor_children () const |
bool | is_ancestor_of (const Elem *descendant) const |
const Elem * | parent () const |
Elem * | parent () |
void | set_parent (Elem *p) |
const Elem * | top_parent () const |
const Elem * | interior_parent () const |
Elem * | interior_parent () |
void | set_interior_parent (Elem *p) |
Real | length (const unsigned int n1, const unsigned int n2) const |
unsigned int | level () const |
unsigned int | p_level () const |
const Elem * | raw_child_ptr (unsigned int i) const |
const Elem * | child_ptr (unsigned int i) const |
Elem * | child_ptr (unsigned int i) |
Elem * | child (const unsigned int i) const |
SimpleRange< ChildRefIter > | child_ref_range () |
SimpleRange< ConstChildRefIter > | child_ref_range () const |
unsigned int | which_child_am_i (const Elem *e) const |
virtual bool | is_child_on_edge (const unsigned int c, const unsigned int e) const |
void | add_child (Elem *elem) |
void | add_child (Elem *elem, unsigned int c) |
void | replace_child (Elem *elem, unsigned int c) |
void | family_tree (std::vector< const Elem *> &family, const bool reset=true) const |
void | total_family_tree (std::vector< const Elem *> &active_family, const bool reset=true) const |
void | active_family_tree (std::vector< const Elem *> &active_family, const bool reset=true) const |
void | family_tree_by_side (std::vector< const Elem *> &family, const unsigned int side, const bool reset=true) const |
void | active_family_tree_by_side (std::vector< const Elem *> &family, const unsigned int side, const bool reset=true) const |
void | family_tree_by_neighbor (std::vector< const Elem *> &family, const Elem *neighbor, const bool reset=true) const |
void | total_family_tree_by_neighbor (std::vector< const Elem *> &family, const Elem *neighbor, const bool reset=true) const |
void | family_tree_by_subneighbor (std::vector< const Elem *> &family, const Elem *neighbor, const Elem *subneighbor, const bool reset=true) const |
void | total_family_tree_by_subneighbor (std::vector< const Elem *> &family, const Elem *neighbor, const Elem *subneighbor, const bool reset=true) const |
void | active_family_tree_by_neighbor (std::vector< const Elem *> &family, const Elem *neighbor, const bool reset=true) const |
void | active_family_tree_by_topological_neighbor (std::vector< const Elem *> &family, const Elem *neighbor, const MeshBase &mesh, const PointLocatorBase &point_locator, const PeriodicBoundaries *pb, const bool reset=true) const |
RefinementState | refinement_flag () const |
void | set_refinement_flag (const RefinementState rflag) |
RefinementState | p_refinement_flag () const |
void | set_p_refinement_flag (const RefinementState pflag) |
unsigned int | max_descendant_p_level () const |
unsigned int | min_p_level_by_neighbor (const Elem *neighbor, unsigned int current_min) const |
unsigned int | min_new_p_level_by_neighbor (const Elem *neighbor, unsigned int current_min) const |
void | set_p_level (const unsigned int p) |
void | hack_p_level (const unsigned int p) |
virtual void | refine (MeshRefinement &mesh_refinement) |
void | coarsen () |
void | contract () |
void | libmesh_assert_valid_neighbors () const |
void | libmesh_assert_valid_node_pointers () const |
side_iterator | boundary_sides_begin () |
side_iterator | boundary_sides_end () |
virtual bool | is_mid_infinite_edge_node (const unsigned int) const |
virtual Point | origin () const |
virtual unsigned int | as_parent_node (unsigned int c, unsigned int n) const |
virtual const std::vector< std::pair< unsigned char, unsigned char > > & | parent_bracketing_nodes (unsigned int c, unsigned int n) const |
virtual const std::vector< std::pair< dof_id_type, dof_id_type > > | bracketing_nodes (unsigned int c, unsigned int n) const |
virtual unsigned int | embedding_matrix_version () const |
void | nullify_neighbors () |
void | clear_old_dof_object () |
void | set_old_dof_object () |
void | clear_dofs () |
void | invalidate_dofs (const unsigned int sys_num=libMesh::invalid_uint) |
void | invalidate_id () |
void | invalidate_processor_id () |
void | invalidate () |
unsigned int | n_dofs (const unsigned int s, const unsigned int var=libMesh::invalid_uint) const |
dof_id_type | id () const |
dof_id_type & | set_id () |
void | set_id (const dof_id_type dofid) |
unique_id_type | unique_id () const |
unique_id_type & | set_unique_id () |
bool | valid_id () const |
bool | valid_unique_id () const |
processor_id_type | processor_id () const |
processor_id_type & | processor_id () |
void | processor_id (const processor_id_type pid) |
bool | valid_processor_id () const |
unsigned int | n_systems () const |
void | set_n_systems (const unsigned int s) |
void | add_system () |
unsigned int | n_var_groups (const unsigned int s) const |
unsigned int | n_vars (const unsigned int s, const unsigned int vg) const |
unsigned int | n_vars (const unsigned int s) const |
void | set_n_vars_per_group (const unsigned int s, const std::vector< unsigned int > &nvpg) |
unsigned int | n_comp (const unsigned int s, const unsigned int var) const |
unsigned int | n_comp_group (const unsigned int s, const unsigned int vg) const |
void | set_n_comp (const unsigned int s, const unsigned int var, const unsigned int ncomp) |
void | set_n_comp_group (const unsigned int s, const unsigned int vg, const unsigned int ncomp) |
dof_id_type | dof_number (const unsigned int s, const unsigned int var, const unsigned int comp) const |
dof_id_type | dof_number (const unsigned int s, const unsigned int vg, const unsigned int vig, const unsigned int comp, const unsigned int n_comp) const |
std::pair< unsigned int, unsigned int > | var_to_vg_and_offset (const unsigned int s, const unsigned int var) const |
void | set_dof_number (const unsigned int s, const unsigned int var, const unsigned int comp, const dof_id_type dn) |
bool | has_dofs (const unsigned int s=libMesh::invalid_uint) const |
void | set_vg_dof_base (const unsigned int s, const unsigned int vg, const dof_id_type db) |
dof_id_type | vg_dof_base (const unsigned int s, const unsigned int vg) const |
unsigned int | packed_indexing_size () const |
void | unpack_indexing (std::vector< largest_id_type >::const_iterator begin) |
void | pack_indexing (std::back_insert_iterator< std::vector< largest_id_type >> target) const |
void | debug_buffer () const |
void | print_dof_info () const |
void | set_buffer (const std::vector< dof_id_type > &buf) |
Static Public Member Functions | |
static void | print_info (std::ostream &out=libMesh::out) |
static void | print_info (std::ostream &out=libMesh::out) |
static std::string | get_info () |
static std::string | get_info () |
static ElemType | second_order_equivalent_type (const ElemType et, const bool full_ordered=true) |
static ElemType | first_order_equivalent_type (const ElemType et) |
static std::unique_ptr< Elem > | build (const ElemType type, Elem *p=nullptr) |
static unsigned int | n_objects () |
static unsigned int | n_objects () |
static void | enable_print_counter_info () |
static void | enable_print_counter_info () |
static void | disable_print_counter_info () |
static void | disable_print_counter_info () |
static unsigned int | unpackable_indexing_size (std::vector< largest_id_type >::const_iterator begin) |
Public Attributes | |
DofObject * | old_dof_object |
Static Public Attributes | |
static const int | num_nodes = 3 |
static const int | num_children = 2 |
static const subdomain_id_type | invalid_subdomain_id = std::numeric_limits<subdomain_id_type>::max() |
static const unsigned int | type_to_n_nodes_map [INVALID_ELEM] |
static const unsigned int | max_n_nodes = 27 |
static const unsigned int | type_to_n_sides_map [INVALID_ELEM] |
static const unsigned int | type_to_n_edges_map [INVALID_ELEM] |
static const dof_id_type | invalid_id = static_cast<dof_id_type>(-1) |
static const unique_id_type | invalid_unique_id = static_cast<unique_id_type>(-1) |
static const processor_id_type | invalid_processor_id = static_cast<processor_id_type>(-1) |
Protected Types | |
typedef std::map< std::string, std::pair< unsigned int, unsigned int > > | Counts |
typedef std::map< std::string, std::pair< unsigned int, unsigned int > > | Counts |
Protected Member Functions | |
virtual float | embedding_matrix (const unsigned int i, const unsigned int j, const unsigned int k) const override |
unsigned int | side_children_matrix (const unsigned int, const unsigned int) const |
template<typename Subclass > | |
void | simple_build_side_ptr (std::unique_ptr< Elem > &side, const unsigned int i, ElemType sidetype) |
virtual std::vector< std::vector< std::vector< std::vector< std::pair< unsigned char, unsigned char > > > > > & | _get_bracketing_node_cache () const |
virtual std::vector< std::vector< std::vector< signed char > > > & | _get_parent_indices_cache () const |
void | increment_constructor_count (const std::string &name) |
void | increment_constructor_count (const std::string &name) |
void | increment_destructor_count (const std::string &name) |
void | increment_destructor_count (const std::string &name) |
Static Protected Member Functions | |
static dof_id_type | compute_key (dof_id_type n0) |
static dof_id_type | compute_key (dof_id_type n0, dof_id_type n1) |
static dof_id_type | compute_key (dof_id_type n0, dof_id_type n1, dof_id_type n2) |
static dof_id_type | compute_key (dof_id_type n0, dof_id_type n1, dof_id_type n2, dof_id_type n3) |
Protected Attributes | |
Node * | _nodelinks_data [num_nodes] |
LIBMESH_ENABLE_TOPOLOGY_CACHES | |
Elem * | _elemlinks_data [3+(LIBMESH_DIM >1)] |
Node ** | _nodes |
Elem ** | _elemlinks |
Elem ** | _children |
subdomain_id_type | _sbd_id |
unsigned char | _rflag |
unsigned char | _pflag |
unsigned char | _p_level |
Static Protected Attributes | |
static const float | _embedding_matrix [num_children][num_nodes][num_nodes] |
static Counts | _counts |
static Counts | _counts |
static Threads::atomic< unsigned int > | _n_objects |
static Threads::atomic< unsigned int > | _n_objects |
static Threads::spin_mutex | _mutex |
static Threads::spin_mutex | _mutex |
static bool | _enable_print_counter = true |
static bool | _enable_print_counter = true |
A 1D geometric element with 3 nodes.
The Edge3
is an element in 1D composed of 3 nodes. It is numbered like this:
* EGDE3: o----o----o * 0 2 1 *
Definition at line 43 of file edge_edge3.h.
|
inherited |
|
protectedinherited |
Data structure to log the information. The log is identified by the class name.
Definition at line 117 of file reference_counter.h.
|
protectedinherited |
Data structure to log the information. The log is identified by the class name.
Definition at line 117 of file reference_counter.h.
|
inherited |
|
inherited |
|
inherited |
Enumeration of possible element refinement states.
Enumerator | |
---|---|
COARSEN | |
DO_NOTHING | |
REFINE | |
JUST_REFINED | |
JUST_COARSENED | |
INACTIVE | |
COARSEN_INACTIVE | |
INVALID_REFINEMENTSTATE |
Definition at line 1198 of file elem.h.
|
inlineexplicit |
|
delete |
|
delete |
|
virtualdefault |
|
inlineprotectedvirtualinherited |
Elem subclasses which don't do their own bracketing node calculations will need to supply a static cache, since the default calculation is slow.
Definition at line 1659 of file elem.h.
Referenced by libMesh::Elem::parent_bracketing_nodes().
|
inlineprotectedvirtualinherited |
Elem subclasses which don't do their own child-to-parent node calculations will need to supply a static cache, since the default calculation is slow.
Definition at line 1673 of file elem.h.
Referenced by libMesh::Elem::as_parent_node().
|
inlineinherited |
true
if the element is active (i.e. has no active descendants) or AMR is disabled, false
otherwise.Definition at line 2390 of file elem.h.
References libMesh::Elem::COARSEN_INACTIVE, libMesh::Elem::INACTIVE, and libMesh::Elem::refinement_flag().
Referenced by libMesh::DofMap::_dof_indices(), libMesh::Elem::active_family_tree(), libMesh::Elem::active_family_tree_by_neighbor(), libMesh::Elem::active_family_tree_by_side(), libMesh::Elem::active_family_tree_by_topological_neighbor(), libMesh::HPCoarsenTest::add_projection(), libMesh::Elem::ancestor(), libMesh::Patch::build_around_element(), libMesh::Partitioner::build_graph(), libMesh::Elem::coarsen(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEAbstract::compute_periodic_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::connect_families(), libMesh::UnstructuredMesh::contract(), libMesh::Elem::contract(), libMesh::DofMap::dof_indices(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::Elem::family_tree(), libMesh::Elem::family_tree_by_neighbor(), libMesh::Elem::family_tree_by_side(), libMesh::Elem::family_tree_by_subneighbor(), libMesh::Elem::find_interior_neighbors(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshTools::find_nodal_neighbors(), libMesh::Elem::find_point_neighbors(), libMesh::Elem::get_info(), libMesh::ErrorVector::is_active_elem(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_flags(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_p_levels(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::Elem::make_links_to_me_local(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::Elem::max_descendant_p_level(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::Elem::min_p_level_by_neighbor(), libMesh::DofMap::old_dof_indices(), libMesh::PointLocatorTree::operator()(), libMesh::MetisPartitioner::partition_range(), libMesh::Elem::refine(), libMesh::Elem::subactive(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::MeshRefinement::test_level_one(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Same as the family_tree()
member, but only adds the active children. Can be thought of as removing all the inactive elements from the vector created by family_tree
, but is implemented more efficiently.
Definition at line 1577 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), and libMesh::Elem::subactive().
Referenced by libMesh::MeshCommunication::delete_remote_elements(), and libMesh::SiblingCoupling::operator()().
|
inherited |
Same as the active_family_tree()
member, but only adds elements which are next to neighbor
.
Definition at line 1837 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_neighbor(), libMesh::Elem::level(), libMesh::remote_elem, and libMesh::Elem::subactive().
Referenced by libMesh::DefaultCoupling::operator()().
|
inherited |
Same as the active_family_tree()
member, but only adds elements which are next to side
.
Definition at line 1630 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::active_family_tree_by_side(), libMesh::Elem::child_ptr(), libMesh::Elem::is_child_on_side(), libMesh::Elem::is_remote(), libMesh::Elem::n_children(), libMesh::Elem::n_sides(), libMesh::remote_elem, and libMesh::Elem::subactive().
Referenced by libMesh::Elem::active_family_tree_by_side(), libMesh::Nemesis_IO_Helper::write_sidesets(), and libMesh::ExodusII_IO_Helper::write_sidesets().
|
inherited |
Same as the active_family_tree_by_neighbor()
member, but the neighbor
here may be a topological (e.g. periodic boundary condition) neighbor, not just a local neighbor.
Definition at line 1795 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_topological_neighbor(), libMesh::Elem::level(), mesh, libMesh::remote_elem, and libMesh::Elem::subactive().
Referenced by libMesh::DefaultCoupling::operator()().
|
inherited |
Adds a child pointer to the array of children of this element. If this is the first child to be added, this method allocates memory in the parent's _children array, otherwise, it just sets the pointer.
Definition at line 1461 of file elem.C.
References libMesh::Elem::_children, libMesh::Elem::n_children(), libMesh::Elem::parent(), libMesh::remote_elem, and libMesh::Elem::set_child().
Referenced by libMesh::UnstructuredMesh::all_first_order(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::CheckpointIO::read_connectivity(), libMesh::CheckpointIO::read_remote_elem(), libMesh::XdrIO::read_serialized_connectivity(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Adds a new child pointer to the specified index in the array of children of this element. If this is the first child to be added, this method allocates memory in the parent's _children array, otherwise, it just sets the pointer.
Definition at line 1488 of file elem.C.
References libMesh::Elem::_children, libMesh::Elem::child_ptr(), libMesh::Elem::has_children(), libMesh::Elem::n_children(), libMesh::Elem::parent(), libMesh::remote_elem, and libMesh::Elem::set_child().
|
inherited |
Adds an additional system to the DofObject
Definition at line 195 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::n_vars(), and libMesh::DofObject::set_n_systems().
|
inherited |
true
if the element is an ancestor (i.e. has an active child or ancestor child), false
otherwise or when AMR is disabled. Definition at line 1427 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_children(), libMesh::remote_elem, and libMesh::Elem::subactive().
Referenced by libMesh::UnstructuredMesh::contract(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::get_info(), and libMesh::Elem::refine().
|
virtualinherited |
n
of child c
, or invalid_uint
if no such parent node exists. Definition at line 1933 of file elem.C.
References libMesh::Elem::_get_parent_indices_cache(), libMesh::Elem::child(), libMesh::Elem::embedding_matrix(), libMesh::Elem::embedding_matrix_version(), libMesh::invalid_uint, libMesh::Elem::n_children(), libMesh::Elem::n_nodes(), libMesh::Elem::n_nodes_in_child(), and libMesh::parent_indices_mutex.
Referenced by libMesh::MeshRefinement::add_node(), and libMesh::Elem::parent_bracketing_nodes().
|
inherited |
Iterator accessor functions
Definition at line 2808 of file elem.C.
References libMesh::Elem::_first_side(), and libMesh::Elem::_last_side().
|
inherited |
|
virtualinherited |
n
of child c
. Definition at line 2206 of file elem.C.
References libMesh::Elem::build(), libMesh::Elem::child(), libMesh::Elem::child_ptr(), libMesh::Elem::default_order(), libMesh::FIRST, libMesh::HEX20, libMesh::DofObject::invalid_id, libMesh::Elem::n_nodes(), libMesh::Elem::n_nodes_in_child(), libMesh::Elem::node_id(), libMesh::Elem::parent_bracketing_nodes(), libMesh::Elem::second_order_equivalent_type(), and libMesh::Elem::type().
Referenced by libMesh::MeshRefinement::add_node(), and libMesh::TopologyMap::fill().
|
staticinherited |
type
wrapped in a smart pointer. Definition at line 245 of file elem.C.
References libMesh::EDGE2, libMesh::EDGE3, libMesh::EDGE4, libMesh::HEX20, libMesh::HEX27, libMesh::HEX8, libMesh::INFEDGE2, libMesh::INFHEX16, libMesh::INFHEX18, libMesh::INFHEX8, libMesh::INFPRISM12, libMesh::INFPRISM6, libMesh::INFQUAD4, libMesh::INFQUAD6, libMesh::NODEELEM, libMesh::PRISM15, libMesh::PRISM18, libMesh::PRISM6, libMesh::PYRAMID13, libMesh::PYRAMID14, libMesh::PYRAMID5, libMesh::QUAD4, libMesh::QUAD8, libMesh::QUAD9, libMesh::QUADSHELL4, libMesh::QUADSHELL8, libMesh::TET10, libMesh::TET4, libMesh::TRI3, libMesh::TRI3SUBDIVISION, libMesh::TRI6, libMesh::TRISHELL3, and libMesh::Elem::type().
Referenced by libMesh::GMVIO::_read_one_cell(), libMesh::UnstructuredMesh::all_first_order(), libMesh::UnstructuredMesh::all_second_order(), libMesh::Elem::bracketing_nodes(), libMesh::Nemesis_IO_Helper::build_element_and_node_maps(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::UnstructuredMesh::create_submesh(), libMesh::MeshTools::Modification::flatten(), libMesh::Elem::parent_bracketing_nodes(), libMesh::Nemesis_IO::read(), libMesh::ExodusII_IO::read(), libMesh::VTKIO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::AbaqusIO::read_elements(), libMesh::UCDIO::read_implementation(), libMesh::GmshIO::read_mesh(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::Elem::refine(), libMesh::Parallel::Packing< T >::unpack(), and libMesh::GMVIO::write_ascii_old_impl().
|
inlineinherited |
Creates an element coincident with edge i
.
Definition at line 2292 of file elem.h.
References libMesh::Elem::build_edge_ptr().
|
inlinefinaloverridevirtualinherited |
The Elem::build_edge_ptr()
member makes no sense for edges.
Implements libMesh::Elem.
|
inlineinherited |
Definition at line 2278 of file elem.h.
References libMesh::Elem::build_edge_ptr().
|
inlineinherited |
i
.Definition at line 2243 of file elem.h.
References libMesh::Elem::build_side_ptr().
|
finaloverridevirtualinherited |
Implements libMesh::Elem.
Definition at line 63 of file edge.C.
References libMesh::Elem::node_ptr().
Referenced by libMesh::Edge::side_ptr().
|
finaloverridevirtualinherited |
Rebuilds a NODEELEM for the specified node.
Implements libMesh::Elem.
Definition at line 72 of file edge.C.
References libMesh::Edge::side_ptr().
|
inlineinherited |
Definition at line 2215 of file elem.h.
References libMesh::Elem::build_side_ptr().
|
inlineinherited |
Definition at line 2228 of file elem.h.
References libMesh::Elem::build_side_ptr().
|
virtualinherited |
This method is virtual since some derived elements might want to use shortcuts to compute their centroid.
Definition at line 344 of file elem.C.
References libMesh::TypeVector< T >::add(), and libMesh::Elem::n_vertices().
Referenced by libMesh::UnstructuredMesh::find_neighbors(), libMesh::LocationMap< T >::point_of(), libMesh::FE< Dim, LAGRANGE_VEC >::shape(), libMesh::FE< Dim, LAGRANGE_VEC >::shape_deriv(), and libMesh::FE< Dim, LAGRANGE_VEC >::shape_second_deriv().
|
inlineinherited |
Definition at line 2598 of file elem.h.
References libMesh::Elem::child_ptr().
Referenced by libMesh::Elem::as_parent_node(), libMesh::Elem::bracketing_nodes(), libMesh::Elem::find_interior_neighbors(), libMesh::Elem::make_links_to_me_remote(), and libMesh::Elem::parent_bracketing_nodes().
elem
is a neighbor of a child of this element, a pointer to that child, otherwise nullptr
. Definition at line 2105 of file elem.h.
References libMesh::Elem::neighbor_ptr_range().
elem
is a neighbor of a child of this element, a pointer to that child, otherwise nullptr
. Definition at line 2117 of file elem.h.
References libMesh::Elem::neighbor_ptr_range().
|
inlineinherited |
Definition at line 2578 of file elem.h.
References libMesh::Elem::_children.
Referenced by libMesh::Elem::active_family_tree_by_side(), libMesh::Elem::add_child(), libMesh::UnstructuredMesh::all_first_order(), libMesh::Elem::bracketing_nodes(), libMesh::Elem::child(), libMesh::Elem::coarsen(), libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), libMesh::Elem::family_tree_by_side(), libMesh::TopologyMap::fill(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::is_vertex_on_parent(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::refine(), libMesh::Elem::replace_child(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Parallel::Packing< T >::unpack(), libMesh::Elem::which_child_am_i(), and libMesh::CheckpointIO::write_remote_elem().
|
inlineinherited |
Definition at line 2587 of file elem.h.
References libMesh::Elem::_children.
|
inlineinherited |
Returns a range with all children of a parent element, usable in range-based for loops. The exact type of the return value here may be subject to change in future libMesh releases, but the iterators will always dereference to produce a reference to a child element.
Definition at line 1779 of file elem.h.
References libMesh::Elem::_children, and libMesh::Elem::n_children().
Referenced by libMesh::Elem::active_family_tree(), libMesh::Elem::active_family_tree_by_neighbor(), libMesh::Elem::active_family_tree_by_topological_neighbor(), libMesh::HPCoarsenTest::add_projection(), libMesh::Elem::ancestor(), libMesh::OldSolutionBase< Output, point_output >::check_old_context(), libMesh::Elem::coarsen(), libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), libMesh::connect_children(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::Elem::family_tree(), libMesh::Elem::family_tree_by_neighbor(), libMesh::Elem::family_tree_by_subneighbor(), libMesh::Elem::find_interior_neighbors(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::Elem::has_ancestor_children(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Elem >(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::Elem::make_links_to_me_remote(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::Elem::max_descendant_p_level(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::Elem::min_p_level_by_neighbor(), libMesh::Elem::set_p_level(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::Elem::total_family_tree(), libMesh::Elem::total_family_tree_by_neighbor(), and libMesh::Elem::total_family_tree_by_subneighbor().
|
inlineinherited |
Definition at line 1787 of file elem.h.
References libMesh::Elem::_children, and libMesh::Elem::n_children().
|
inlineinherited |
Clear the DofMap
data structures and return to a pristine state.
Definition at line 621 of file dof_object.h.
References libMesh::DofObject::_idx_buf, and libMesh::DofObject::n_systems().
Referenced by libMesh::DofObject::set_n_systems(), and libMesh::DofObject::~DofObject().
|
inherited |
Sets the old_dof_object
to nullptr
Definition at line 142 of file dof_object.C.
References libMesh::DofObject::old_dof_object.
Referenced by libMesh::DofObject::operator=(), libMesh::DofObject::set_old_dof_object(), libMesh::DofObject::unpack_indexing(), and libMesh::DofObject::~DofObject().
true
if this element is "close" to the point p, where "close" is determined by the tolerance tol. Definition at line 2326 of file elem.C.
References libMesh::Elem::point_test().
|
inherited |
Coarsen the element. This function is non-virtual since it is the same for all element types.
Definition at line 106 of file elem_refinement.C.
References libMesh::Elem::active(), libMesh::TypeVector< T >::add_scaled(), libMesh::Elem::child_ptr(), libMesh::Elem::child_ref_range(), libMesh::Elem::COARSEN, libMesh::Elem::COARSEN_INACTIVE, libMesh::Elem::embedding_matrix(), libMesh::Elem::INACTIVE, libMesh::Elem::JUST_COARSENED, libMesh::Elem::n_children(), libMesh::Elem::n_nodes(), libMesh::Elem::point(), libMesh::Elem::refinement_flag(), libMesh::remote_elem, libMesh::Elem::set_p_level(), and libMesh::Elem::set_refinement_flag().
|
inlinestaticprotectedinherited |
Definition at line 2754 of file elem.h.
Referenced by libMesh::Tet::key(), libMesh::Prism::key(), libMesh::Tri::key(), libMesh::Pyramid::key(), libMesh::Hex::key(), libMesh::Edge::key(), libMesh::InfPrism::key(), libMesh::InfQuad6::key(), libMesh::Quad::key(), libMesh::InfHex::key(), libMesh::Quad9::key(), libMesh::Quad8::key(), libMesh::Tri6::key(), libMesh::InfQuad::key(), libMesh::Edge2::key(), libMesh::Hex27::key(), libMesh::Prism18::key(), libMesh::Pyramid14::key(), libMesh::Edge4::key(), libMesh::InfHex18::key(), key(), and libMesh::Tet4::key().
|
inlinestaticprotectedinherited |
Definition at line 2762 of file elem.h.
References libMesh::Utility::hashword2(), and swap().
|
inlinestaticprotectedinherited |
Definition at line 2774 of file elem.h.
References libMesh::Utility::hashword(), and swap().
|
inlinestaticprotectedinherited |
Definition at line 2808 of file elem.h.
References libMesh::Utility::hashword(), and swap().
|
overridevirtual |
Implements libMesh::Elem.
Definition at line 106 of file edge_edge3.C.
References libMesh::INVALID_IO_PACKAGE, n_sub_elem(), libMesh::Elem::node_id(), libMesh::TECPLOT, and libMesh::VTK.
|
inherited |
true
if an edge of e
is contained in this element. (Internally, this is done by checking whether at least two vertices of e
are contained in this element). Definition at line 477 of file elem.C.
References libMesh::Elem::contains_point(), libMesh::Elem::n_vertices(), and libMesh::Elem::point().
Referenced by libMesh::Elem::find_edge_neighbors().
true
if the point p is contained in this element, false otherwise.For linear elements, performs an initial tight bounding box check (as an optimization step) and (if that passes) then uses the user-defined tolerance "tol" in a call to inverse_map() to actually test if the point is in the element. For quadratic elements, the bounding box optimization is skipped, and only the inverse_map() steps are performed.
Reimplemented in libMesh::Tet4, libMesh::InfHex, libMesh::Tri3, libMesh::InfPrism, and libMesh::InfQuad4.
Definition at line 2301 of file elem.C.
References libMesh::err, libMesh::Elem::point_test(), and libMesh::TOLERANCE.
Referenced by libMesh::Elem::contains_edge_of(), libMesh::Elem::contains_vertex_of(), libMesh::Elem::find_edge_neighbors(), libMesh::Elem::find_interior_neighbors(), libMesh::Elem::find_point_neighbors(), libMesh::PointLocatorTree::operator()(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), and libMesh::System::point_value().
|
inherited |
true
if a vertex of e
is contained in this element. Definition at line 466 of file elem.C.
References libMesh::Elem::contains_point(), libMesh::Elem::n_vertices(), and libMesh::Elem::point().
Referenced by libMesh::Elem::find_interior_neighbors(), and libMesh::Elem::find_point_neighbors().
|
inherited |
Contract an active element, i.e. remove pointers to any subactive children. This should only be called via MeshRefinement::contract, which will also remove subactive children from the mesh.
Definition at line 171 of file elem_refinement.C.
References libMesh::Elem::_children, libMesh::Elem::active(), libMesh::Elem::DO_NOTHING, libMesh::Elem::JUST_COARSENED, libMesh::Elem::refinement_flag(), and libMesh::Elem::set_refinement_flag().
Referenced by libMesh::UnstructuredMesh::contract().
|
inherited |
Print our buffer for debugging.
Definition at line 538 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::MeshTools::Generation::Private::idx(), and libMesh::out.
|
overridevirtual |
Implements libMesh::Elem.
Definition at line 99 of file edge_edge3.C.
References libMesh::SECOND.
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
|
staticinherited |
Definition at line 106 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
Referenced by libMesh::LibMeshInit::LibMeshInit().
|
staticinherited |
Definition at line 106 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
Referenced by libMesh::LibMeshInit::LibMeshInit().
|
inlineinherited |
var
, component comp
for system s
associated with this DofObject
When partitioning and DoF numbering have been performed by libMesh, every current DoF on this DofObject will belong to its processor.
Definition at line 833 of file dof_object.h.
References libMesh::DofObject::n_comp(), libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), and libMesh::DofObject::var_to_vg_and_offset().
Referenced by libMesh::DofMap::_dof_indices(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::DofMap::constrain_p_dofs(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::dof_indices(), libMesh::DofObject::DofObject(), libMesh::OldSolutionValue< Output, point_output >::eval_at_node(), libMesh::OldSolutionCoefs< Output, point_output >::eval_at_node(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofMap::local_variable_indices(), libMesh::DofMap::old_dof_indices(), libMesh::BuildProjectionList::operator()(), libMesh::DofObject::operator=(), libMesh::DofObject::print_dof_info(), libMesh::HPCoarsenTest::select_refinement(), libMesh::DofObject::set_dof_number(), and libMesh::DofMap::set_nonlocal_dof_objects().
|
inlineinherited |
vg
, variable index vig
within the group, component comp
out of n_comp
, for system s
on this DofObject
Even users who need to call dof_number from user code probably don't want to call this overload.
Definition at line 854 of file dof_object.h.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::invalid_id, libMesh::DofObject::n_comp(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::n_vars(), and libMesh::DofObject::start_idx().
|
inlineinherited |
Definition at line 2157 of file elem.h.
References libMesh::Elem::n_edges().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), libMesh::BoundaryInfo::copy_boundary_ids(), libMesh::Parallel::Packing< T >::pack(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineoverrideprotectedvirtual |
Matrix used to create the elements children.
Implements libMesh::Elem.
Definition at line 206 of file edge_edge3.h.
References _embedding_matrix.
|
inlinevirtualinherited |
Some element types may use a different embedding matrix depending on their geometric characteristics.
Reimplemented in libMesh::Tet.
Definition at line 1609 of file elem.h.
Referenced by libMesh::Elem::as_parent_node(), and libMesh::Elem::parent_bracketing_nodes().
|
staticinherited |
Methods to enable/disable the reference counter output from print_info()
Definition at line 100 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
|
staticinherited |
Methods to enable/disable the reference counter output from print_info()
Definition at line 100 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter.
|
inherited |
Fills the vector family
with the children of this element, recursively. Calling this method on a twice-refined element will give you the element itself, its direct children, and their children, etc... When the optional parameter reset
is true, the vector will be cleared before the element and its descendants are added.
The family tree only includes ancestor and active elements. To include subactive elements as well, use total_family_tree().
Definition at line 1534 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), and libMesh::Elem::subactive().
|
inherited |
Same as the family_tree()
member, but only adds elements which are next to neighbor
.
Definition at line 1661 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_neighbor(), libMesh::remote_elem, and libMesh::Elem::subactive().
|
inherited |
Same as the family_tree()
member, but only adds elements which are next to side
.
Definition at line 1601 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ptr(), libMesh::Elem::family_tree_by_side(), libMesh::Elem::is_child_on_side(), libMesh::Elem::is_remote(), libMesh::Elem::n_children(), libMesh::Elem::n_sides(), and libMesh::Elem::subactive().
Referenced by libMesh::Elem::family_tree_by_side(), and libMesh::Elem::make_links_to_me_local().
|
inherited |
Same as the family_tree()
member, but only adds elements which are next to subneighbor
. Only applicable when this->has_neighbor(neighbor)
and neighbor->is_ancestor(subneighbor)
Definition at line 1712 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_neighbor(), libMesh::Elem::is_ancestor_of(), libMesh::remote_elem, and libMesh::Elem::subactive().
|
inherited |
This function finds all active elements in the same manifold as this element which touch the current active element along the whole edge defined by the two points p1
and p2
.
Definition at line 637 of file elem.C.
References libMesh::Elem::contains_point(), end, and libMesh::Elem::find_point_neighbors().
Referenced by libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement().
|
inherited |
This function finds all active elements in the same manifold as this element which touch the current active element along any edge (more precisely, at at least two points).
In this case, elements are included even if they do not touch a whole edge of this element.
Definition at line 664 of file elem.C.
References libMesh::Elem::contains_edge_of(), and libMesh::remote_elem.
|
inherited |
This function finds all active elements (not including this one) in the parent manifold of this element whose intersection with this element has non-zero measure.
Definition at line 725 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child(), libMesh::Elem::child_ref_range(), libMesh::Elem::contains_point(), libMesh::Elem::contains_vertex_of(), libMesh::Elem::dim(), end, libMesh::Elem::find_point_neighbors(), libMesh::Elem::interior_parent(), libMesh::Elem::level(), libMesh::Elem::node_ref_range(), and libMesh::Elem::subactive().
Referenced by libMesh::MetisPartitioner::partition_range().
|
inherited |
This function finds all active elements (including this one) which are in the same manifold as this element and which touch the current active element at the specified point, which should be a point in the current element.
Elements which are not "in the same manifold" (e.g. the interior_parent of a boundary element) will not be found with this method.
Elements which overlap the specified point but which are only connected to the current element via elements which do not overlap that point (e.g. in a folded or tangled mesh) are not considered to "touch" the current element and will not be found with this method.
Definition at line 498 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::contains_point(), and libMesh::remote_elem.
Referenced by libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::Elem::find_edge_neighbors(), libMesh::MeshFunction::find_element(), libMesh::Elem::find_interior_neighbors(), libMesh::Elem::find_point_neighbors(), and libMesh::Elem::is_semilocal().
|
inherited |
This function finds all active elements (including this one) in the same manifold as this element which touch this active element at any point.
Definition at line 561 of file elem.C.
References libMesh::Elem::find_point_neighbors().
|
inherited |
This function finds all active elements (including this one) in the same manifold as start_elem (which must be active and must touch this element) which touch this element at any point.
Definition at line 568 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::contains_vertex_of(), and libMesh::remote_elem.
INVALID_ELEM
for first-order or other elements that cannot be converted into lower order equivalents.For example, when this
is a TET10
, then TET4
is returned.
Definition at line 2584 of file elem.C.
References libMesh::EDGE2, libMesh::EDGE3, libMesh::EDGE4, libMesh::HEX20, libMesh::HEX27, libMesh::HEX8, libMesh::INFHEX16, libMesh::INFHEX18, libMesh::INFHEX8, libMesh::INFPRISM12, libMesh::INFPRISM6, libMesh::INFQUAD4, libMesh::INFQUAD6, libMesh::INVALID_ELEM, libMesh::PRISM15, libMesh::PRISM18, libMesh::PRISM6, libMesh::PYRAMID13, libMesh::PYRAMID14, libMesh::PYRAMID5, libMesh::QUAD4, libMesh::QUAD8, libMesh::QUAD9, libMesh::QUADSHELL4, libMesh::QUADSHELL8, libMesh::TET10, libMesh::TET4, libMesh::TRI3, libMesh::TRI6, and libMesh::TRISHELL3.
Referenced by libMesh::UnstructuredMesh::all_first_order(), and libMesh::GMVIO::write_ascii_old_impl().
|
staticinherited |
Gets a string containing the reference information.
Definition at line 47 of file reference_counter.C.
References libMesh::ReferenceCounter::_counts, and libMesh::Quality::name().
Referenced by libMesh::ReferenceCounter::print_info().
|
staticinherited |
Gets a string containing the reference information.
Definition at line 47 of file reference_counter.C.
References libMesh::ReferenceCounter::_counts, and libMesh::Quality::name().
Referenced by libMesh::ReferenceCounter::print_info().
|
inherited |
Prints relevant information about the element to a string.
Definition at line 2448 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::ancestor(), libMesh::Elem::dim(), libMesh::DofObject::dof_number(), libMesh::Utility::enum_to_string(), libMesh::Elem::has_children(), libMesh::Elem::hmax(), libMesh::Elem::hmin(), libMesh::DofObject::id(), libMesh::Elem::infinite(), libMesh::Elem::level(), libMesh::DofObject::n_comp(), libMesh::Elem::n_nodes(), libMesh::Elem::n_sides(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::node_ref(), libMesh::Elem::origin(), libMesh::Elem::p_level(), libMesh::Elem::p_refinement_flag(), libMesh::Elem::parent(), libMesh::DofObject::processor_id(), libMesh::Elem::refinement_flag(), libMesh::Elem::subactive(), libMesh::Elem::type(), libMesh::DofObject::unique_id(), libMesh::DofObject::valid_id(), libMesh::DofObject::valid_unique_id(), and libMesh::Elem::volume().
Referenced by libMesh::Elem::print_info().
|
inlineinherited |
Node
i
.Definition at line 1996 of file elem.h.
References libMesh::Elem::node_ptr().
|
inlineinherited |
Node
pointer node_ptr
, or invalid_id
if node_ptr
is not a local node. Definition at line 2012 of file elem.h.
References libMesh::Elem::_nodes, libMesh::invalid_uint, libMesh::Elem::n_nodes(), and libMesh::Elem::node_ptr().
Referenced by libMesh::ElemCutter::find_intersection_points().
|
inlineinherited |
Definition at line 1949 of file elem.h.
References libMesh::Elem::_nodes.
Referenced by libMesh::DofMap::dof_indices(), and libMesh::DofMap::old_dof_indices().
|
inlineinherited |
Sets the value of the p-refinement level for the element without altering the p-level of its ancestors
Definition at line 2739 of file elem.h.
References libMesh::Elem::_p_level, libMesh::Elem::JUST_REFINED, and libMesh::Elem::p_refinement_flag().
Referenced by libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_serialized_connectivity(), and libMesh::Parallel::Packing< T >::unpack().
|
overridevirtual |
true
if the element map is definitely affine within numerical tolerances. Reimplemented from libMesh::Elem.
Definition at line 91 of file edge_edge3.C.
References libMesh::Elem::point().
|
inlineinherited |
true
if the element has any descendants other than its immediate children, false
otherwise, or if AMR is disabled. Definition at line 2442 of file elem.h.
References libMesh::Elem::_children, and libMesh::Elem::child_ref_range().
|
inlineinherited |
true
if the element has any children (active or not), false
otherwise, or if AMR is disabled. Definition at line 2428 of file elem.h.
References libMesh::Elem::_children.
Referenced by libMesh::Elem::add_child(), libMesh::Elem::ancestor(), libMesh::connect_children(), libMesh::connect_families(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::Elem::get_info(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Elem >(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::FEMSystem::mesh_position_set(), libMesh::Parallel::Packing< T >::pack(), libMesh::Elem::remove_links_to_me(), libMesh::Elem::replace_child(), libMesh::Elem::set_child(), libMesh::Elem::subactive(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Elem::total_family_tree(), libMesh::Elem::total_family_tree_by_neighbor(), libMesh::Elem::total_family_tree_by_subneighbor(), libMesh::Parallel::Packing< T >::unpack(), and libMesh::Elem::which_child_am_i().
|
inlineinherited |
true
if any system has variables which have been assigned, false
otherwise. Definition at line 913 of file dof_object.h.
References libMesh::invalid_uint, libMesh::DofObject::n_systems(), and libMesh::DofObject::n_vars().
Referenced by libMesh::DofMap::old_dof_indices(), and libMesh::DofMap::reinit().
|
inlineinherited |
true
if the element elem
in question is a neighbor of this element, false
otherwise. Definition at line 2093 of file elem.h.
References libMesh::Elem::neighbor_ptr_range().
Referenced by libMesh::Elem::active_family_tree_by_neighbor(), libMesh::Elem::family_tree_by_neighbor(), libMesh::Elem::family_tree_by_subneighbor(), libMesh::Elem::has_topological_neighbor(), libMesh::MeshRefinement::has_topological_neighbor(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::Elem::min_p_level_by_neighbor(), libMesh::Elem::on_boundary(), libMesh::Elem::total_family_tree_by_neighbor(), and libMesh::Elem::total_family_tree_by_subneighbor().
|
inherited |
true
if the element elem
in question is a neighbor or topological neighbor of this element, false
otherwise. Definition at line 957 of file elem.C.
References libMesh::Elem::has_neighbor(), mesh, libMesh::Elem::side_index_range(), and libMesh::Elem::topological_neighbor().
Referenced by libMesh::Elem::active_family_tree_by_topological_neighbor(), and libMesh::MeshRefinement::has_topological_neighbor().
|
virtualinherited |
Definition at line 373 of file elem.C.
References std::max(), libMesh::Elem::n_vertices(), libMesh::TypeVector< T >::norm_sq(), libMesh::Elem::point(), and libMesh::Real.
Referenced by libMesh::DiscontinuityMeasure::boundary_side_integration(), libMesh::KellyErrorEstimator::boundary_side_integration(), libMesh::OldSolutionBase< Output, point_output >::check_old_context(), libMesh::Elem::get_info(), libMesh::LaplacianErrorEstimator::internal_side_integration(), libMesh::DiscontinuityMeasure::internal_side_integration(), libMesh::KellyErrorEstimator::internal_side_integration(), and libMesh::Elem::point_test().
|
virtualinherited |
Definition at line 356 of file elem.C.
References std::max(), std::min(), libMesh::Elem::n_vertices(), libMesh::TypeVector< T >::norm_sq(), libMesh::Elem::point(), and libMesh::Real.
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::MeshTools::Modification::distort(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::get_info(), libMesh::FEMSystem::numerical_jacobian(), and libMesh::ReplicatedMesh::stitching_helper().
|
inlineinherited |
id
for this DofObject
Definition at line 655 of file dof_object.h.
References libMesh::DofObject::_id, and libMesh::DofObject::valid_id().
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::ReplicatedMesh::add_elem(), libMesh::DistributedMesh::add_elem(), libMesh::BoundaryInfo::add_elements(), libMesh::TopologyMap::add_node(), libMesh::ReplicatedMesh::add_node(), libMesh::DistributedMesh::add_node(), libMesh::DistributedMesh::add_point(), libMesh::UnstructuredMesh::all_first_order(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::Node::build(), libMesh::Partitioner::build_graph(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEMap::compute_single_point_map(), libMesh::MeshRefinement::create_parent_error_vector(), libMesh::ReplicatedMesh::delete_elem(), libMesh::DistributedMesh::delete_elem(), libMesh::ReplicatedMesh::delete_node(), libMesh::DistributedMesh::delete_node(), libMesh::MeshBase::detect_interior_parents(), libMesh::DistributedMesh::DistributedMesh(), libMesh::UNVIO::elements_out(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshTools::find_nodal_neighbors(), libMesh::MeshRefinement::flag_elements_by_elem_fraction(), libMesh::MeshRefinement::flag_elements_by_error_fraction(), libMesh::MeshRefinement::flag_elements_by_error_tolerance(), libMesh::MeshTools::Modification::flatten(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofMap::get_local_constraints(), libMesh::ParmetisPartitioner::initialize(), libMesh::TreeNode< N >::insert(), libMesh::ReplicatedMesh::insert_elem(), libMesh::DistributedMesh::insert_elem(), libMesh::ReplicatedMesh::insert_node(), libMesh::FE< Dim, LAGRANGE_VEC >::inverse_map(), libMesh::MeshTools::libmesh_assert_valid_amr_elem_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::Tri3Subdivision::local_node_number(), libMesh::Elem::node_id(), libMesh::VTKIO::nodes_to_vtk(), libMesh::CompareElemIdsByLevel::operator()(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::DistributedMesh::own_node(), libMesh::Parallel::Packing< T >::pack(), libMesh::MetisPartitioner::partition_range(), libMesh::DofObject::print_dof_info(), libMesh::DistributedMesh::query_elem_ptr(), libMesh::DistributedMesh::query_node_ptr(), libMesh::Nemesis_IO::read(), libMesh::ExodusII_IO::read(), libMesh::AbaqusIO::read_elements(), libMesh::DistributedMesh::renumber_elem(), libMesh::DistributedMesh::renumber_node(), libMesh::DistributedMesh::renumber_nodes_and_elements(), libMesh::DofMap::scatter_constraints(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::PetscDMWrapper::set_point_range_in_section(), libMesh::MeshTools::Modification::smooth(), libMesh::BoundaryInfo::sync(), libMesh::Parallel::sync_dofobject_data_by_id(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Parallel::sync_node_data_by_element_id_once(), libMesh::TetGenMeshInterface::triangulate_conformingDelaunayMesh_carvehole(), libMesh::Parallel::Packing< T >::unpack(), libMesh::GmshIO::write_mesh(), and libMesh::ExodusII_IO_Helper::write_nodal_coordinates().
|
inlineprotectedinherited |
Increments the construction counter. Should be called in the constructor of any derived class that will be reference counted.
Definition at line 181 of file reference_counter.h.
References libMesh::ReferenceCounter::_counts, libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::ReferenceCountedObject().
|
inlineprotectedinherited |
Increments the construction counter. Should be called in the constructor of any derived class that will be reference counted.
Definition at line 181 of file reference_counter.h.
References libMesh::ReferenceCounter::_counts, libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::ReferenceCountedObject().
|
inlineprotectedinherited |
Increments the destruction counter. Should be called in the destructor of any derived class that will be reference counted.
Definition at line 194 of file reference_counter.h.
References libMesh::ReferenceCounter::_counts, libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::~ReferenceCountedObject().
|
inlineprotectedinherited |
Increments the destruction counter. Should be called in the destructor of any derived class that will be reference counted.
Definition at line 194 of file reference_counter.h.
References libMesh::ReferenceCounter::_counts, libMesh::Quality::name(), and libMesh::Threads::spin_mtx.
Referenced by libMesh::ReferenceCountedObject< RBParametrized >::~ReferenceCountedObject().
|
inlineoverridevirtual |
false
. This is a finite element. Implements libMesh::Elem.
Definition at line 169 of file edge_edge3.h.
|
inherited |
In some cases it is desirable to extract the boundary (or a subset thereof) of a D-dimensional mesh as a (D-1)-dimensional manifold. In this case we may want to know the 'parent' element from which the manifold elements were extracted. We can easily do that for the level-0 manifold elements by storing the D-dimensional parent. This method provides access to that element.
This method is not safe to call if this->dim() == LIBMESH_DIM; in such cases no data storage for an interior parent pointer has been allocated.
Definition at line 804 of file elem.C.
References libMesh::Elem::_elemlinks, libMesh::Elem::dim(), libMesh::Elem::level(), libMesh::Elem::n_sides(), and libMesh::remote_elem.
Referenced by libMesh::Elem::find_interior_neighbors(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::BoundaryInfo::get_side_and_node_maps(), libMesh::MeshTools::libmesh_assert_valid_amr_interior_parents(), libMesh::Parallel::Packing< T >::pack(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Definition at line 839 of file elem.C.
References libMesh::Elem::_elemlinks, libMesh::Elem::dim(), libMesh::Elem::level(), libMesh::Elem::n_sides(), and libMesh::remote_elem.
|
inlineinherited |
Invalidates all the indices for this DofObject
Definition at line 611 of file dof_object.h.
References libMesh::DofObject::invalidate_dofs(), libMesh::DofObject::invalidate_id(), and libMesh::DofObject::invalidate_processor_id().
Referenced by libMesh::DofObject::DofObject().
|
inlineinherited |
Sets all degree of freedom numbers to invalid_id
Definition at line 575 of file dof_object.h.
References libMesh::DofObject::invalid_id, libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), and libMesh::DofObject::set_vg_dof_base().
Referenced by libMesh::DofObject::invalidate().
|
inlineinherited |
Sets the id to invalid_id
Definition at line 595 of file dof_object.h.
References libMesh::DofObject::invalid_id, and libMesh::DofObject::set_id().
Referenced by libMesh::DofObject::invalidate().
|
inlineinherited |
Sets the processor id to invalid_processor_id
Definition at line 603 of file dof_object.h.
References libMesh::DofObject::invalid_processor_id, and libMesh::DofObject::processor_id().
Referenced by libMesh::DofObject::invalidate(), and libMesh::Partitioner::set_parent_processor_ids().
|
inlineinherited |
true
if descendant
is a child of this
, or a child of a child of this
, etc., false
otherwise or if AMR is disabled. Definition at line 2458 of file elem.h.
References libMesh::Elem::parent().
Referenced by libMesh::Elem::family_tree_by_subneighbor(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::make_links_to_me_local(), and libMesh::Elem::total_family_tree_by_subneighbor().
|
virtualinherited |
true
if the specified child is on the specified edge. Definition at line 1518 of file elem.C.
References libMesh::Elem::build_edge_ptr(), libMesh::Elem::n_children(), and libMesh::Elem::n_edges().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), and libMesh::BoundaryInfo::edge_boundary_ids().
|
finaloverridevirtualinherited |
true
if the specified child is on the specified side. Implements libMesh::Elem.
Definition at line 81 of file edge.C.
References libMesh::Edge::n_children(), and libMesh::Edge::n_sides().
|
overridevirtual |
true
if the specified (local) node number is an edge. Implements libMesh::Elem.
Definition at line 62 of file edge_edge3.C.
|
inlinefinaloverridevirtualinherited |
true
if the specified edge is on the specified side. Implements libMesh::Elem.
|
overridevirtual |
true
if the specified (local) node number is a face. Implements libMesh::Elem.
Definition at line 69 of file edge_edge3.C.
|
inlinevirtualinherited |
true
if the Lagrange shape functions on this element are linear. Reimplemented in libMesh::NodeElem, libMesh::Tet4, libMesh::Tri3, libMesh::Edge2, and libMesh::Tri3Subdivision.
Definition at line 994 of file elem.h.
Referenced by libMesh::FEMap::init_reference_to_physical_map().
|
inlinevirtualinherited |
true
if the specified (local) node number is a "mid-edge" node on an infinite element edge.This is false for all nodes on non-infinite elements, so we won't make it pure virtual, to simplify their code.
Reimplemented in libMesh::InfEdge2, libMesh::InfQuad, libMesh::InfPrism, and libMesh::InfHex.
Definition at line 1544 of file elem.h.
References libMesh::Elem::infinite().
Referenced by libMesh::Elem::parent_bracketing_nodes().
|
overridevirtual |
true
if the specified (local) node number is on the specified edge (always true in 1D). Implements libMesh::Elem.
Definition at line 82 of file edge_edge3.C.
|
overridevirtual |
true
if the specified (local) node number is on the specified side. Implements libMesh::Elem.
Definition at line 74 of file edge_edge3.C.
References num_nodes.
|
inlinevirtualinherited |
true
if this element is remote, false otherwise.A remote element (see RemoteElem
) is a syntactic convenience – it is a placeholder for an element which exists on some other processor. Local elements are required to have valid neighbors, and these ghost elements may have remote neighbors for data structure consistency. The use of remote elements helps ensure that any element we may access has a nullptr
neighbor only if it lies on the physical boundary of the domain.
Reimplemented in libMesh::RemoteElem.
Definition at line 555 of file elem.h.
Referenced by libMesh::Elem::active_family_tree_by_side(), libMesh::Elem::family_tree_by_side(), and libMesh::Elem::make_links_to_me_local().
|
inherited |
true
if this element is semilocal to the calling processor, which must specify its rank. Definition at line 451 of file elem.C.
References libMesh::Elem::find_point_neighbors().
|
overridevirtual |
true
if the specified (local) node number is a vertex. Implements libMesh::Elem.
Definition at line 55 of file edge_edge3.C.
|
inlinevirtualinherited |
true
if the specified child has a vertex at the specified (child-local) node number. Except in odd cases like pyramid refinement the child will have the same local structure as the parent element. Definition at line 694 of file elem.h.
References libMesh::Elem::is_vertex().
Referenced by libMesh::Elem::parent_bracketing_nodes().
|
virtualinherited |
true
if this element has a vertex at the specified (child-local) node number n
of the specified child c
. Definition at line 2879 of file elem.C.
References libMesh::Elem::child_ptr(), libMesh::libmesh_ignore(), libMesh::Elem::n_vertices(), and libMesh::Elem::node_ptr().
|
inlinefinaloverridevirtualinherited |
s
side of this element. The id is not necessarily unique, but should be close. This is particularly useful in the MeshBase::find_neighbors()
routine. Implements libMesh::Elem.
Definition at line 133 of file edge.h.
References libMesh::Elem::compute_key(), and libMesh::Elem::node_id().
dof_id_type libMesh::Elem::key |
Don't hide Edge::key(side) defined in the base class.
Definition at line 401 of file elem.C.
|
inlinefinaloverride |
virtual dof_id_type libMesh::Elem::key |
Don't hide Edge::key(side) defined in the base class.
|
overridevirtual |
Compute a unique key for this element which is suitable for hashing (not necessarily unique, but close). The key is based solely on the mid-edge node's global id, to be consistent with 2D elements that have Edge3 sides (Quad9, Quad8, etc.).
Reimplemented from libMesh::Elem.
Definition at line 239 of file edge_edge3.C.
References libMesh::Elem::compute_key(), and libMesh::Elem::node_id().
|
inherited |
Useful for computing the lengths of the sides of elements.
Definition at line 390 of file elem.C.
References libMesh::Elem::n_vertices(), and libMesh::Elem::point().
Referenced by libMesh::Hex::quality(), libMesh::InfHex::quality(), and libMesh::Quad::quality().
|
inlineinherited |
If the element's parent is nullptr
then by convention it is at level 0, otherwise it is simply at one level greater than its parent.
Definition at line 2521 of file elem.h.
References libMesh::Elem::dim(), libMesh::Elem::level(), and libMesh::Elem::parent().
Referenced by libMesh::Elem::active_family_tree_by_neighbor(), libMesh::Elem::active_family_tree_by_topological_neighbor(), libMesh::BoundaryInfo::add_edge(), libMesh::BoundaryInfo::add_shellface(), libMesh::BoundaryInfo::add_side(), libMesh::UnstructuredMesh::all_second_order(), libMesh::BoundaryInfo::boundary_ids(), libMesh::FEAbstract::compute_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEAbstract::compute_periodic_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::Elem::find_interior_neighbors(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::Elem::get_info(), libMesh::Elem::interior_parent(), libMesh::Elem::level(), libMesh::MeshTools::libmesh_assert_valid_amr_interior_parents(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::Elem::nullify_neighbors(), libMesh::CompareElemIdsByLevel::operator()(), libMesh::Parallel::Packing< T >::pack(), libMesh::Parallel::Packing< T >::packable_size(), libMesh::BoundaryInfo::remove_edge(), libMesh::Elem::remove_links_to_me(), libMesh::BoundaryInfo::remove_shellface(), libMesh::BoundaryInfo::remove_side(), libMesh::BoundaryInfo::shellface_boundary_ids(), libMesh::BoundaryInfo::side_with_boundary_id(), libMesh::ReplicatedMesh::stitching_helper(), libMesh::MeshRefinement::test_level_one(), libMesh::Elem::top_parent(), libMesh::Elem::topological_neighbor(), libMesh::Parallel::Packing< T >::unpack(), and libMesh::Elem::which_neighbor_am_i().
|
inherited |
Checks for consistent neighbor links on this element.
Definition at line 990 of file elem.C.
References libMesh::Elem::dim(), libMesh::Elem::n_neighbors(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::parent(), libMesh::remote_elem, libMesh::Elem::side_index_range(), libMesh::Elem::subactive(), and libMesh::Elem::which_neighbor_am_i().
|
inherited |
Checks for a valid id and pointers to nodes with valid ids on this element.
Definition at line 978 of file elem.C.
References libMesh::Elem::n_nodes(), libMesh::Elem::node_ptr(), and libMesh::DofObject::valid_id().
|
inlineinherited |
Definition at line 1937 of file elem.h.
References libMesh::invalid_uint, libMesh::Elem::n_nodes(), and libMesh::Elem::node_id().
Referenced by libMesh::MeshTools::find_nodal_neighbors(), and libMesh::ReplicatedMesh::stitching_helper().
|
overridevirtual |
Reimplemented from libMesh::Elem.
Definition at line 217 of file edge_edge3.C.
References std::abs(), std::max(), libMesh::Elem::point(), and libMesh::Real.
|
inherited |
Resets the appropriate neighbor pointers of our nth neighbor (and its descendants, if appropriate) to point to this Elem instead of to the global remote_elem. Used by the library when a formerly remote element is being added to the local processor.
Definition at line 1062 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::family_tree_by_side(), libMesh::Elem::has_children(), libMesh::Elem::is_ancestor_of(), libMesh::Elem::is_remote(), libMesh::Elem::JUST_REFINED, libMesh::Elem::level(), libMesh::Elem::n_sides(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::parent(), libMesh::Elem::refinement_flag(), libMesh::remote_elem, libMesh::Elem::set_neighbor(), libMesh::Elem::side_ptr(), and libMesh::Elem::subactive().
Referenced by libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Resets this element's neighbors' appropriate neighbor pointers and its parent's and children's appropriate pointers to point to the global remote_elem instead of this. Used by the library before an element becomes remote on the local processor.
Definition at line 1149 of file elem.C.
References libMesh::Elem::child(), libMesh::Elem::child_ptr(), libMesh::Elem::child_ref_range(), libMesh::Elem::dim(), libMesh::Elem::has_children(), libMesh::Elem::level(), libMesh::Elem::n_neighbors(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::neighbor_ptr_range(), libMesh::Elem::parent(), libMesh::remote_elem, libMesh::Elem::set_child(), libMesh::Elem::set_neighbor(), libMesh::Elem::subactive(), libMesh::Elem::which_child_am_i(), and libMesh::Elem::which_neighbor_am_i().
Referenced by libMesh::MeshCommunication::delete_remote_elements().
|
inlineoverridevirtual |
Implements libMesh::Elem.
Definition at line 64 of file edge_edge3.h.
References n_nodes(), and libMesh::Real.
|
inlineinherited |
Definition at line 2674 of file elem.h.
References libMesh::Elem::_p_level, libMesh::Elem::active(), libMesh::Elem::child_ref_range(), std::max(), libMesh::Elem::p_level(), and libMesh::Elem::subactive().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values().
|
inherited |
neighbor
. Definition at line 1899 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::COARSEN, libMesh::Elem::has_neighbor(), std::min(), libMesh::Elem::p_level(), libMesh::Elem::p_refinement_flag(), libMesh::Elem::REFINE, libMesh::remote_elem, and libMesh::Elem::subactive().
|
inherited |
neighbor
. Definition at line 1870 of file elem.C.
References libMesh::Elem::active(), libMesh::Elem::child_ref_range(), libMesh::Elem::has_neighbor(), std::min(), libMesh::Elem::p_level(), libMesh::remote_elem, and libMesh::Elem::subactive().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), and libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints().
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
Definition at line 94 of file edge.h.
Referenced by libMesh::Edge::is_child_on_side().
|
inlineinherited |
var
of system s
associated with this DofObject
. For example, the HIERARCHIC
shape functions may have multiple DoFs associated with one node. Another example is the MONOMIALs
, where only the elements hold the DoFs. For the different spatial directions, and orders, see FE
. Definition at line 803 of file dof_object.h.
References libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), and libMesh::DofObject::var_to_vg().
Referenced by libMesh::DofMap::allgather_recursive_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::DofMap::constrain_p_dofs(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::ExodusII_IO::copy_nodal_solution(), libMesh::DofMap::distribute_dofs(), libMesh::DofObject::dof_number(), libMesh::DofObject::DofObject(), libMesh::OldSolutionValue< Output, point_output >::eval_at_node(), libMesh::OldSolutionCoefs< Output, point_output >::eval_at_node(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofMap::local_variable_indices(), libMesh::DofObject::n_dofs(), libMesh::DofObject::operator=(), libMesh::DofObject::print_dof_info(), libMesh::DofObject::set_dof_number(), libMesh::DofObject::set_n_vars_per_group(), and libMesh::DofMap::set_nonlocal_dof_objects().
|
inlineinherited |
VariableGroup
vg
of system s
associated with this DofObject
. For example, the HIERARCHIC
shape functions may have multiple DoFs associated with one node. Another example is the MONOMIALs
, where only the elements hold the DoFs. For the different spatial directions, and orders, see FE
. Definition at line 816 of file dof_object.h.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::ncv_magic, and libMesh::DofObject::start_idx().
Referenced by libMesh::DofMap::_dof_indices(), libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DofMap::dof_indices(), libMesh::DofObject::dof_number(), libMesh::DofObject::invalidate_dofs(), libMesh::DofObject::n_comp(), libMesh::DofMap::old_dof_indices(), libMesh::BuildProjectionList::operator()(), libMesh::DofMap::reinit(), libMesh::DofObject::set_dof_number(), libMesh::DofObject::set_n_comp_group(), libMesh::DofObject::set_n_vars_per_group(), and libMesh::DofMap::set_nonlocal_dof_objects().
|
inlineinherited |
s
for this object. Optionally only counts degrees of freedom for variable number var
Definition at line 633 of file dof_object.h.
References libMesh::invalid_uint, libMesh::DofObject::n_comp(), libMesh::DofObject::n_systems(), and libMesh::DofObject::n_vars().
Referenced by libMesh::PetscDMWrapper::add_dofs_helper().
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
|
inlineinherited |
Only face (or edge in 2D) neighbors are stored, so this method returns n_sides(). At one point we intended to allow derived classes to override this, but too much current libMesh code assumes n_neighbors==n_sides.
Definition at line 644 of file elem.h.
References libMesh::Elem::n_sides().
Referenced by libMesh::Elem::_last_side(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::Tri3Subdivision::get_ordered_valence(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::neighbor_ptr_range(), libMesh::Elem::nullify_neighbors(), libMesh::Elem::remove_links_to_me(), libMesh::Elem::set_neighbor(), and libMesh::Elem::topological_neighbor().
|
inlineoverridevirtual |
Reimplemented from libMesh::Edge.
Definition at line 75 of file edge_edge3.h.
References num_nodes.
Referenced by master_point().
|
inlinevirtualinherited |
Definition at line 613 of file elem.h.
References libMesh::Elem::n_nodes().
Referenced by libMesh::Elem::as_parent_node(), libMesh::Elem::bracketing_nodes(), and libMesh::Elem::parent_bracketing_nodes().
|
inlinestaticinherited |
Prints the number of outstanding (created, but not yet destroyed) objects.
Definition at line 83 of file reference_counter.h.
References libMesh::ReferenceCounter::_n_objects.
|
inlinestaticinherited |
Prints the number of outstanding (created, but not yet destroyed) objects.
Definition at line 83 of file reference_counter.h.
References libMesh::ReferenceCounter::_n_objects.
|
inlineoverridevirtual |
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
Definition at line 74 of file edge.h.
Referenced by libMesh::Edge::is_child_on_side(), libMesh::Edge::opposite_node(), libMesh::Edge::side_ptr(), and libMesh::Edge::which_node_am_i().
|
inlineoverridevirtual |
Implements libMesh::Elem.
Definition at line 80 of file edge_edge3.h.
Referenced by connectivity().
|
inlineinherited |
DofObject
Definition at line 749 of file dof_object.h.
References libMesh::DofObject::_idx_buf.
Referenced by libMesh::DofMap::_dof_indices(), libMesh::DofObject::add_system(), libMesh::DofObject::clear_dofs(), libMesh::DofObject::dof_number(), libMesh::DofObject::DofObject(), libMesh::DofObject::end_idx(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofObject::has_dofs(), libMesh::DofObject::invalidate_dofs(), libMesh::DofObject::n_comp(), libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_dofs(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::n_vars(), libMesh::DofMap::old_dof_indices(), libMesh::DofObject::operator=(), libMesh::DofObject::print_dof_info(), libMesh::Elem::refine(), libMesh::DofObject::set_dof_number(), libMesh::DofObject::set_n_comp(), libMesh::DofObject::set_n_comp_group(), libMesh::DofObject::set_n_systems(), libMesh::DofObject::set_n_vars_per_group(), libMesh::DofObject::set_vg_dof_base(), libMesh::DofObject::start_idx(), and libMesh::DofObject::vg_dof_base().
|
inlineinherited |
VariableGroup
variable groups associated with system s
for this DofObject
Definition at line 758 of file dof_object.h.
References libMesh::DofObject::end_idx(), libMesh::DofObject::n_systems(), and libMesh::DofObject::start_idx().
Referenced by libMesh::DofObject::add_system(), libMesh::DofObject::dof_number(), libMesh::DofObject::DofObject(), libMesh::DofObject::invalidate_dofs(), libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_vars(), libMesh::BuildProjectionList::operator()(), libMesh::DofObject::operator=(), libMesh::DofObject::set_n_comp_group(), libMesh::DofObject::set_n_systems(), libMesh::DofObject::set_n_vars_per_group(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::DofObject::set_vg_dof_base(), libMesh::DofObject::var_to_vg(), libMesh::DofObject::var_to_vg_and_offset(), and libMesh::DofObject::vg_dof_base().
|
inlineinherited |
Variable
variables associated with VariableGroup
vg
in system s
for this DofObject
Definition at line 768 of file dof_object.h.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::ncv_magic_exp, and libMesh::DofObject::start_idx().
Referenced by libMesh::DofObject::add_system(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::DofMap::distribute_dofs(), libMesh::DofObject::dof_number(), libMesh::DofObject::DofObject(), libMesh::OldSolutionValue< Output, point_output >::eval_at_node(), libMesh::OldSolutionCoefs< Output, point_output >::eval_at_node(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofObject::has_dofs(), libMesh::DofObject::n_comp(), libMesh::DofObject::n_dofs(), libMesh::DofObject::n_vars(), libMesh::BuildProjectionList::operator()(), libMesh::DofObject::operator=(), libMesh::DofObject::print_dof_info(), libMesh::DofObject::set_dof_number(), libMesh::DofObject::set_n_comp(), libMesh::DofObject::set_n_comp_group(), libMesh::DofObject::set_n_systems(), libMesh::DofObject::set_n_vars_per_group(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::DofObject::system_var_to_vg_var(), libMesh::DofObject::var_to_vg(), and libMesh::DofObject::var_to_vg_and_offset().
|
inlineinherited |
Definition at line 785 of file dof_object.h.
References libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), and libMesh::DofObject::n_vars().
|
inlinefinaloverridevirtualinherited |
Implements libMesh::Elem.
|
inlineinherited |
Definition at line 2071 of file elem.h.
References libMesh::Elem::neighbor_ptr().
|
inlineinherited |
nullptr
if MeshBase::find_neighbors()
has not been called.MeshBase::find_neighbors()
has been called and this function still returns nullptr
, then the side is on a boundary of the domain. Definition at line 2050 of file elem.h.
References libMesh::Elem::_elemlinks, and libMesh::Elem::n_neighbors().
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::BoundaryInfo::add_elements(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::BoundaryInfo::boundary_ids(), libMesh::Partitioner::build_graph(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::FEAbstract::compute_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEAbstract::compute_periodic_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshTools::Subdivision::find_one_ring(), libMesh::MeshTools::Modification::flatten(), libMesh::Elem::get_info(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::neighbor(), libMesh::Elem::nullify_neighbors(), libMesh::DefaultCoupling::operator()(), libMesh::MetisPartitioner::partition_range(), libMesh::CheckpointIO::read_remote_elem(), libMesh::FE< Dim, LAGRANGE_VEC >::reinit(), libMesh::Elem::remove_links_to_me(), libMesh::FE< Dim, LAGRANGE_VEC >::side_map(), libMesh::Elem::SideIter::side_on_boundary(), libMesh::BoundaryInfo::side_with_boundary_id(), libMesh::MeshTools::Modification::smooth(), libMesh::ReplicatedMesh::stitching_helper(), libMesh::Elem::topological_neighbor(), libMesh::MeshRefinement::topological_neighbor(), libMesh::Parallel::Packing< T >::unpack(), libMesh::Elem::which_neighbor_am_i(), and libMesh::CheckpointIO::write_remote_elem().
|
inlineinherited |
Definition at line 2060 of file elem.h.
References libMesh::Elem::_elemlinks, and libMesh::Elem::n_neighbors().
|
inlineinherited |
Returns a range with all neighbors of an element, usable in range-based for loops. The exact type of the return value here may be subject to change in future libMesh releases, but the iterators will always dereference to produce a pointer to a neighbor element (or a null pointer, for sides which have no neighbors).
Definition at line 2988 of file elem.h.
References libMesh::Elem::_elemlinks, and libMesh::Elem::n_neighbors().
Referenced by libMesh::Elem::child_neighbor(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::has_neighbor(), libMesh::Elem::make_links_to_me_remote(), libMesh::Parallel::Packing< T >::pack(), and libMesh::Elem::remove_links_to_me().
|
inlineinherited |
Definition at line 2995 of file elem.h.
References libMesh::Elem::_elemlinks, and libMesh::Elem::n_neighbors().
|
inlineinherited |
Node
i
.Definition at line 1927 of file elem.h.
References libMesh::Elem::node_id().
Referenced by libMesh::Elem::refine().
|
inlineinherited |
Node
i
. Definition at line 1914 of file elem.h.
References libMesh::Elem::_nodes, libMesh::DofObject::id(), libMesh::DofObject::invalid_id, and libMesh::Elem::n_nodes().
Referenced by libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::Elem::bracketing_nodes(), libMesh::FEMap::compute_face_map(), libMesh::InfEdge2::connectivity(), libMesh::Edge2::connectivity(), connectivity(), libMesh::Edge4::connectivity(), libMesh::Quad4::connectivity(), libMesh::InfQuad4::connectivity(), libMesh::Pyramid5::connectivity(), libMesh::Tri3::connectivity(), libMesh::Prism6::connectivity(), libMesh::Hex8::connectivity(), libMesh::InfHex8::connectivity(), libMesh::InfPrism6::connectivity(), libMesh::InfQuad6::connectivity(), libMesh::Quad8::connectivity(), libMesh::Tet4::connectivity(), libMesh::InfPrism12::connectivity(), libMesh::Tri6::connectivity(), libMesh::Quad9::connectivity(), libMesh::Tet10::connectivity(), libMesh::Hex20::connectivity(), libMesh::InfHex16::connectivity(), libMesh::Prism15::connectivity(), libMesh::Hex27::connectivity(), libMesh::Prism18::connectivity(), libMesh::InfHex18::connectivity(), libMesh::MeshBase::detect_interior_parents(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::MeshTools::find_nodal_neighbors(), libMesh::Tri3Subdivision::get_ordered_node(), libMesh::Tri3Subdivision::get_ordered_valence(), libMesh::Tet::key(), libMesh::Prism::key(), libMesh::Tri::key(), libMesh::Pyramid::key(), libMesh::Hex::key(), libMesh::Edge::key(), libMesh::InfPrism::key(), libMesh::InfQuad6::key(), libMesh::Quad::key(), libMesh::InfHex::key(), libMesh::Quad8::key(), libMesh::Quad9::key(), libMesh::Tri6::key(), libMesh::InfQuad::key(), libMesh::Edge2::key(), libMesh::Hex27::key(), libMesh::Prism18::key(), libMesh::Pyramid14::key(), libMesh::Edge4::key(), libMesh::InfHex18::key(), key(), libMesh::Tet4::key(), libMesh::Elem::key(), libMesh::Elem::local_node(), libMesh::Tri3Subdivision::local_node_number(), libMesh::Elem::node(), libMesh::Elem::operator==(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), libMesh::CheckpointIO::read_connectivity(), libMesh::DistributedMesh::renumber_nodes_and_elements(), libMesh::FE< Dim, LAGRANGE_VEC >::side_map(), libMesh::Parallel::Packing< T >::unpack(), libMesh::Elem::write_connectivity(), and libMesh::ExodusII_IO_Helper::write_elements().
|
inlineinherited |
Definition at line 2148 of file elem.h.
References libMesh::Elem::n_nodes().
Referenced by libMesh::MeshRefinement::add_node(), libMesh::MeshTools::Modification::flatten(), libMesh::XdrIO::pack_element(), libMesh::MeshTools::Modification::smooth(), and libMesh::Elem::write_connectivity().
|
inlineinherited |
Node
i
. Definition at line 1957 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
Referenced by libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::BoundaryInfo::add_elements(), libMesh::MeshRefinement::add_node(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::Quad4::build_side_ptr(), libMesh::InfQuad4::build_side_ptr(), libMesh::Prism6::build_side_ptr(), libMesh::Pyramid5::build_side_ptr(), libMesh::InfHex8::build_side_ptr(), libMesh::Hex8::build_side_ptr(), libMesh::Tri3::build_side_ptr(), libMesh::InfPrism6::build_side_ptr(), libMesh::InfPrism12::build_side_ptr(), libMesh::Tet4::build_side_ptr(), libMesh::InfHex18::build_side_ptr(), libMesh::InfQuad6::build_side_ptr(), libMesh::Quad8::build_side_ptr(), libMesh::InfHex16::build_side_ptr(), libMesh::Tet10::build_side_ptr(), libMesh::Tri6::build_side_ptr(), libMesh::Hex20::build_side_ptr(), libMesh::Pyramid13::build_side_ptr(), libMesh::Prism15::build_side_ptr(), libMesh::Edge::build_side_ptr(), libMesh::Quad9::build_side_ptr(), libMesh::Hex27::build_side_ptr(), libMesh::Prism18::build_side_ptr(), libMesh::Pyramid14::build_side_ptr(), libMesh::FEMap::compute_affine_map(), libMesh::FEMap::compute_map(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::MeshTools::find_nodal_neighbors(), libMesh::MeshTools::Subdivision::find_one_ring(), libMesh::MeshTools::Modification::flatten(), libMesh::Elem::get_node(), libMesh::Elem::get_node_index(), libMesh::Elem::is_vertex_on_parent(), libMesh::MeshTools::libmesh_assert_consistent_distributed_nodes(), libMesh::MeshTools::libmesh_assert_parallel_consistent_new_node_procids(), libMesh::MeshTools::libmesh_assert_valid_boundary_ids(), libMesh::Elem::libmesh_assert_valid_node_pointers(), libMesh::Elem::node_ref(), libMesh::Tri3Subdivision::prepare_subdivision_properties(), libMesh::Tet::side_ptr(), libMesh::Prism::side_ptr(), libMesh::Pyramid::side_ptr(), libMesh::Hex::side_ptr(), libMesh::Tri::side_ptr(), libMesh::Edge::side_ptr(), libMesh::InfPrism::side_ptr(), libMesh::InfHex::side_ptr(), libMesh::Quad::side_ptr(), libMesh::InfQuad::side_ptr(), libMesh::Elem::simple_build_side_ptr(), libMesh::MeshTools::Modification::smooth(), and libMesh::ReplicatedMesh::stitching_helper().
|
inlineinherited |
Node
i
. Definition at line 1968 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
|
inlineinherited |
Node
i
. Definition at line 1979 of file elem.h.
References libMesh::Elem::node_ptr().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::DofMap::constrain_p_dofs(), libMesh::TopologyMap::fill(), libMesh::Elem::get_info(), libMesh::MeshCommunication::make_new_node_proc_ids_parallel_consistent(), and libMesh::Parallel::sync_node_data_by_element_id_once().
|
inlineinherited |
Node
i
. Definition at line 1987 of file elem.h.
References libMesh::Elem::node_ptr().
|
inlineinherited |
Returns a range with all nodes of an element, usable in range-based for loops. The exact type of the return value here may be subject to change in future libMesh releases, but the iterators will always dereference to produce a reference to a Node.
Definition at line 2130 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
Referenced by libMesh::MeshTools::Modification::distort(), libMesh::Elem::find_interior_neighbors(), libMesh::MeshCommunication::make_new_node_proc_ids_parallel_consistent(), libMesh::Elem::point_test(), libMesh::reconnect_nodes(), and libMesh::ReplicatedMesh::renumber_nodes_and_elements().
|
inlineinherited |
Definition at line 2139 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
|
overridevirtualinherited |
Implements libMesh::Elem.
Reimplemented in libMesh::InfEdge2.
|
inherited |
Replaces this element with nullptr
for all of its neighbors. This is useful when deleting an element.
Definition at line 2532 of file elem.C.
References libMesh::Elem::level(), libMesh::Elem::n_neighbors(), libMesh::Elem::neighbor_ptr(), libMesh::remote_elem, libMesh::Elem::set_neighbor(), libMesh::Elem::side_index_range(), and libMesh::Elem::which_neighbor_am_i().
|
inlineinherited |
true
if this element has a side coincident with a boundary (indicated by a nullptr
neighbor), false
otherwise. Definition at line 2304 of file elem.h.
References libMesh::Elem::has_neighbor().
|
inherited |
true
if two elements are identical, false otherwise. This is true if the elements are connected to identical global nodes, regardless of how those nodes might be numbered local to the elements. Definition at line 419 of file elem.C.
References libMesh::Elem::n_nodes(), libMesh::Elem::node_id(), and libMesh::Elem::type().
|
finaloverridevirtualinherited |
opposite_side(s)
(for a tensor product element), or throws an error otherwise. Reimplemented from libMesh::Elem.
Definition at line 100 of file edge.C.
References libMesh::Elem::is_node_on_side(), and libMesh::Edge::n_sides().
|
finaloverridevirtualinherited |
s
(for a tensor product element), or throws an error otherwise. Reimplemented from libMesh::Elem.
|
inlinevirtualinherited |
Currently, all infinite elements used in a mesh share the same origin. Override this in infinite element classes.
Reimplemented in libMesh::InfQuad, libMesh::InfEdge2, and libMesh::InfCell.
Definition at line 1553 of file elem.h.
Referenced by libMesh::InfFE< Dim, T_radial, T_map >::combine_base_radial(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), libMesh::Elem::get_info(), libMesh::InfFE< Dim, T_radial, T_map >::inverse_map(), and libMesh::InfFE< Dim, T_radial, T_map >::map().
|
inlineinherited |
Definition at line 2555 of file elem.h.
References libMesh::Elem::_p_level.
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), libMesh::FEInterface::compute_data(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::DofMap::constrain_p_dofs(), libMesh::DofMap::dof_indices(), libMesh::FE< Dim, LAGRANGE_VEC >::dofs_on_edge(), libMesh::FE< Dim, LAGRANGE_VEC >::dofs_on_side(), libMesh::FE< Dim, LAGRANGE_VEC >::edge_reinit(), libMesh::Elem::Elem(), libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::Elem::get_info(), libMesh::InfFE< Dim, T_radial, T_map >::init_face_shape_functions(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_p_levels(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::Elem::max_descendant_p_level(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::Elem::min_p_level_by_neighbor(), libMesh::DofMap::old_dof_indices(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), libMesh::Elem::refine(), libMesh::FE< Dim, LAGRANGE_VEC >::reinit(), libMesh::InfFE< Dim, T_radial, T_map >::reinit(), libMesh::FEXYZ< Dim >::reinit(), libMesh::HPCoarsenTest::select_refinement(), libMesh::Elem::set_p_level(), libMesh::Elem::set_p_refinement_flag(), libMesh::FE< Dim, LAGRANGE_VEC >::shape(), libMesh::FE< Dim, LAGRANGE_VEC >::shape_deriv(), libMesh::FE< Dim, LAGRANGE_VEC >::shape_second_deriv(), libMesh::FE< Dim, LAGRANGE_VEC >::side_map(), libMesh::MeshRefinement::test_level_one(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Definition at line 2654 of file elem.h.
References libMesh::Elem::_pflag.
Referenced by libMesh::FEMContext::build_new_fe(), libMesh::Elem::get_info(), libMesh::Elem::hack_p_level(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_flags(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::DofMap::old_dof_indices(), libMesh::Parallel::Packing< T >::pack(), libMesh::Elem::refine(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
A method for creating packed data from our index buffer - basically a copy with prepended size with our current implementation.
Definition at line 520 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::old_dof_object, and libMesh::DofObject::pack_indexing().
Referenced by libMesh::Parallel::Packing< T >::pack(), and libMesh::DofObject::pack_indexing().
|
inherited |
If we pack our indices into an buffer for communications, how many ints do we need?
Definition at line 445 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::old_dof_object, and libMesh::DofObject::packed_indexing_size().
Referenced by libMesh::Parallel::Packing< T >::packable_size(), libMesh::DofObject::packed_indexing_size(), libMesh::Node::packed_size(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
nullptr
if the element was not created via refinement. Definition at line 2479 of file elem.h.
References libMesh::Elem::_elemlinks.
Referenced by libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::Elem::add_child(), libMesh::BoundaryInfo::add_elements(), libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::BoundaryInfo::boundary_ids(), libMesh::OldSolutionBase< Output, point_output >::check_old_context(), libMesh::FEAbstract::compute_node_constraints(), libMesh::connect_families(), libMesh::UnstructuredMesh::contract(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::MeshRefinement::create_parent_error_vector(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::Elem::Elem(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshRefinement::flag_elements_by_elem_fraction(), libMesh::MeshRefinement::flag_elements_by_error_fraction(), libMesh::MeshRefinement::flag_elements_by_error_tolerance(), libMesh::Elem::get_info(), libMesh::Elem::is_ancestor_of(), libMesh::Elem::level(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_valid_amr_elem_ids(), libMesh::MeshTools::libmesh_assert_valid_amr_interior_parents(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::MeshTools::libmesh_assert_valid_remote_elems(), libMesh::MeshRefinement::limit_level_mismatch_at_edge(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::SiblingCoupling::operator()(), libMesh::BuildProjectionList::operator()(), libMesh::Parallel::Packing< T >::pack(), libMesh::BoundaryInfo::raw_boundary_ids(), libMesh::BoundaryInfo::raw_edge_boundary_ids(), libMesh::BoundaryInfo::raw_shellface_boundary_ids(), libMesh::CheckpointIO::read_connectivity(), libMesh::Elem::refine(), libMesh::Elem::remove_links_to_me(), libMesh::HPCoarsenTest::select_refinement(), libMesh::Elem::set_p_level(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::BoundaryInfo::shellface_boundary_ids(), libMesh::BoundaryInfo::side_with_boundary_id(), libMesh::MeshTools::Modification::smooth(), libMesh::Elem::subactive(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Elem::top_parent(), libMesh::Elem::topological_neighbor(), libMesh::Parallel::Packing< T >::unpack(), and libMesh::Elem::which_neighbor_am_i().
|
inlineinherited |
nullptr
if the element was not created via refinement. Definition at line 2487 of file elem.h.
References libMesh::Elem::_elemlinks.
|
virtualinherited |
n
of child c
. Definition at line 2001 of file elem.C.
References libMesh::Elem::_get_bracketing_node_cache(), libMesh::TypeVector< T >::absolute_fuzzy_equals(), libMesh::TypeVector< T >::add_scaled(), libMesh::Elem::as_parent_node(), libMesh::Elem::build(), libMesh::Elem::child(), libMesh::Elem::default_order(), libMesh::Elem::embedding_matrix(), libMesh::Elem::embedding_matrix_version(), libMesh::FIRST, libMesh::invalid_uint, libMesh::Elem::is_mid_infinite_edge_node(), libMesh::Elem::is_vertex_on_child(), libMesh::Elem::master_point(), libMesh::Elem::n_children(), libMesh::Elem::n_nodes(), libMesh::Elem::n_nodes_in_child(), libMesh::parent_bracketing_nodes_mutex, libMesh::Elem::second_order_equivalent_type(), and libMesh::Elem::type().
Referenced by libMesh::Elem::bracketing_nodes().
|
inlineinherited |
Definition at line 1892 of file elem.h.
References libMesh::Elem::_nodes, libMesh::DofObject::invalid_id, and libMesh::Elem::n_nodes().
Referenced by libMesh::PostscriptIO::_compute_edge_bezier_coeffs(), libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::BoundaryInfo::add_elements(), libMesh::MeshRefinement::add_node(), libMesh::MeshTools::Modification::all_tri(), libMesh::Tet::choose_diagonal(), libMesh::Elem::coarsen(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), libMesh::FEMap::compute_edge_map(), libMesh::Elem::contains_edge_of(), libMesh::InfQuad4::contains_point(), libMesh::InfPrism::contains_point(), libMesh::InfHex::contains_point(), libMesh::Tri3::contains_point(), libMesh::Tet4::contains_point(), libMesh::Elem::contains_vertex_of(), libMesh::ElemCutter::cut_2D(), libMesh::ElemCutter::cut_3D(), libMesh::FEMContext::elem_position_get(), libMesh::Quad4::has_affine_map(), libMesh::Prism6::has_affine_map(), has_affine_map(), libMesh::Edge4::has_affine_map(), libMesh::Quad8::has_affine_map(), libMesh::Quad9::has_affine_map(), libMesh::Hex8::has_affine_map(), libMesh::Tri6::has_affine_map(), libMesh::Tet10::has_affine_map(), libMesh::Hex27::has_affine_map(), libMesh::Hex20::has_affine_map(), libMesh::Prism18::has_affine_map(), libMesh::Prism15::has_affine_map(), libMesh::Elem::hmax(), libMesh::Elem::hmin(), libMesh::Elem::length(), libMesh::Edge4::loose_bounding_box(), loose_bounding_box(), libMesh::Quad8::loose_bounding_box(), libMesh::Tri6::loose_bounding_box(), libMesh::Quad9::loose_bounding_box(), libMesh::Elem::loose_bounding_box(), libMesh::InfFE< Dim, T_radial, T_map >::map(), libMesh::FE< Dim, LAGRANGE_VEC >::map(), libMesh::FE< Dim, LAGRANGE_VEC >::map_eta(), libMesh::FE< Dim, LAGRANGE_VEC >::map_xi(), libMesh::FE< Dim, LAGRANGE_VEC >::map_zeta(), libMesh::Tri3::min_and_max_angle(), libMesh::Tet4::min_and_max_angle(), libMesh::FEMSystem::numerical_jacobian(), libMesh::InfCell::origin(), libMesh::InfEdge2::origin(), libMesh::InfQuad::origin(), libMesh::PostscriptIO::plot_linear_elem(), libMesh::Tri::quality(), libMesh::Quad::quality(), libMesh::FE< Dim, LAGRANGE_VEC >::reinit(), libMesh::FE< Dim, LAGRANGE_VEC >::shape(), libMesh::FE< Dim, LAGRANGE_VEC >::shape_deriv(), libMesh::FE< Dim, LAGRANGE_VEC >::shape_second_deriv(), libMesh::MeshTools::Modification::smooth(), libMesh::Edge2::volume(), libMesh::Quad4::volume(), volume(), libMesh::Tri3::volume(), libMesh::Pyramid5::volume(), libMesh::Prism6::volume(), libMesh::Edge4::volume(), libMesh::Hex8::volume(), libMesh::Tet4::volume(), libMesh::Quad8::volume(), libMesh::Tri6::volume(), libMesh::Quad9::volume(), libMesh::Pyramid13::volume(), libMesh::Tet10::volume(), libMesh::Prism15::volume(), libMesh::Hex20::volume(), libMesh::Pyramid14::volume(), libMesh::Hex27::volume(), libMesh::Prism18::volume(), and libMesh::Elem::which_side_am_i().
|
inlineinherited |
Definition at line 1904 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
|
inherited |
Print out info for debugging.
Definition at line 548 of file dof_object.C.
References libMesh::DofObject::dof_number(), libMesh::DofObject::id(), libMesh::DofObject::n_comp(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), and libMesh::out.
|
staticinherited |
Prints the reference information, by default to libMesh::out
.
Definition at line 87 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter, and libMesh::ReferenceCounter::get_info().
|
staticinherited |
Prints the reference information, by default to libMesh::out
.
Definition at line 87 of file reference_counter.C.
References libMesh::ReferenceCounter::_enable_print_counter, and libMesh::ReferenceCounter::get_info().
|
inherited |
Prints relevant information about the element.
Definition at line 2440 of file elem.C.
References libMesh::Elem::get_info().
Referenced by libMesh::FEMap::compute_single_point_map(), libMesh::FE< Dim, LAGRANGE_VEC >::inverse_map(), and libMesh::operator<<().
|
inlineinherited |
When partitioning and DoF numbering have been performed by libMesh, every current DoF on this DofObject will belong to its processor.
Definition at line 717 of file dof_object.h.
References libMesh::DofObject::_processor_id.
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::DistributedMesh::add_elem(), libMesh::BoundaryInfo::add_elements(), libMesh::DofMap::add_neighbors_to_send_list(), libMesh::DistributedMesh::add_node(), libMesh::MeshRefinement::add_node(), libMesh::ReplicatedMesh::add_point(), libMesh::DistributedMesh::add_point(), libMesh::UnstructuredMesh::all_first_order(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::DofMap::allgather_recursive_constraints(), libMesh::Patch::build_around_element(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::Nemesis_IO_Helper::compute_num_global_nodesets(), libMesh::Nemesis_IO_Helper::compute_num_global_sidesets(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::UnstructuredMesh::create_submesh(), libMesh::DistributedMesh::delete_elem(), libMesh::DistributedMesh::delete_node(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::Elem::Elem(), libMesh::MeshFunction::find_element(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshTools::Modification::flatten(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofMap::get_info(), libMesh::DofMap::get_local_constraints(), libMesh::DistributedMesh::insert_elem(), libMesh::DofObject::invalidate_processor_id(), libMesh::MeshTools::libmesh_assert_consistent_distributed(), libMesh::MeshTools::libmesh_assert_consistent_distributed_nodes(), libMesh::MeshTools::libmesh_assert_parallel_consistent_new_node_procids(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_valid_amr_elem_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DofMap::local_variable_indices(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshCommunication::make_new_node_proc_ids_parallel_consistent(), libMesh::DistributedMesh::own_node(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), libMesh::LinearPartitioner::partition_range(), libMesh::SFCPartitioner::partition_range(), libMesh::CentroidPartitioner::partition_range(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::DofObject::processor_id(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::MeshBase::recalculate_n_partitions(), libMesh::Elem::refine(), libMesh::DofMap::scatter_constraints(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::Parallel::sync_dofobject_data_by_id(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Parallel::sync_node_data_by_element_id_once(), libMesh::Parallel::Packing< T >::unpack(), libMesh::GmshIO::write_mesh(), and libMesh::Nemesis_IO_Helper::write_sidesets().
|
inlineinherited |
Definition at line 725 of file dof_object.h.
References libMesh::DofObject::_processor_id.
|
inlineinherited |
Sets the processor_id
for this DofObject
.
Definition at line 733 of file dof_object.h.
References libMesh::DofObject::processor_id().
|
inlinevirtualinherited |
q
.These are the values suggested by the CUBIT User's Manual. Since this function can have no possible meaning for an abstract Elem, it is an error in the base class.
Reimplemented in libMesh::InfQuad, libMesh::Quad, libMesh::InfHex, libMesh::Tri, libMesh::Hex, and libMesh::Tet.
|
virtualinherited |
q
specified by the user. I don't know what to do for this metric.
Reimplemented in libMesh::InfQuad, libMesh::Quad, libMesh::InfHex, libMesh::Tri, libMesh::Hex, and libMesh::Tet.
Definition at line 1403 of file elem.C.
References libMesh::Utility::enum_to_string(), and libMesh::err.
Referenced by libMesh::Tet::quality(), libMesh::Hex::quality(), libMesh::Tri::quality(), libMesh::InfHex::quality(), and libMesh::Quad::quality().
|
inlineinherited |
Definition at line 2569 of file elem.h.
References libMesh::Elem::_children.
Referenced by libMesh::CheckpointIO::read_remote_elem().
|
inherited |
Quad4
elements share the same reference_elem()
. Definition at line 337 of file elem.C.
References libMesh::ReferenceElem::get(), and libMesh::Elem::type().
Referenced by libMesh::QComposite< QSubCell >::init().
|
virtualinherited |
Refine the element.
The following functions only apply when AMR is enabled and thus are not present otherwise.
Definition at line 41 of file elem_refinement.C.
References libMesh::Elem::_children, libMesh::Elem::active(), libMesh::MeshRefinement::add_elem(), libMesh::MeshRefinement::add_node(), libMesh::Elem::ancestor(), libMesh::Elem::build(), libMesh::Elem::child_ptr(), libMesh::Elem::INACTIVE, libMesh::Elem::JUST_REFINED, libMesh::Elem::n_children(), libMesh::Elem::n_nodes(), libMesh::DofObject::n_systems(), libMesh::Elem::node(), libMesh::Elem::p_level(), libMesh::Elem::p_refinement_flag(), libMesh::Elem::parent(), libMesh::DofObject::processor_id(), libMesh::Elem::REFINE, libMesh::Elem::refinement_flag(), libMesh::DofObject::set_n_systems(), libMesh::Elem::set_node(), libMesh::Elem::set_p_level(), libMesh::Elem::set_p_refinement_flag(), libMesh::Elem::set_refinement_flag(), libMesh::Elem::subactive(), and libMesh::Elem::type().
|
inlineinherited |
Definition at line 2638 of file elem.h.
References libMesh::Elem::_rflag.
Referenced by libMesh::Elem::active(), libMesh::OldSolutionBase< Output, point_output >::check_old_context(), libMesh::Elem::coarsen(), libMesh::Elem::contract(), libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::Elem::get_info(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_flags(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::Elem::make_links_to_me_local(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::DofMap::old_dof_indices(), libMesh::Parallel::Packing< T >::pack(), libMesh::Elem::refine(), libMesh::MeshRefinement::uniformly_coarsen(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Resets this element's neighbors' appropriate neighbor pointers and its parent's and children's appropriate pointers to point to null instead of to this.
Used by the library before an element is deleted from a mesh.
Definition at line 1260 of file elem.C.
References libMesh::Elem::has_children(), libMesh::Elem::level(), libMesh::Elem::n_neighbors(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::neighbor_ptr_range(), libMesh::Elem::parent(), libMesh::remote_elem, libMesh::Elem::set_neighbor(), libMesh::Elem::subactive(), and libMesh::Elem::which_neighbor_am_i().
|
inherited |
Replaces the child pointer at the specified index in the child array.
Definition at line 1507 of file elem.C.
References libMesh::Elem::child_ptr(), libMesh::Elem::has_children(), and libMesh::Elem::set_child().
Referenced by libMesh::UnstructuredMesh::all_first_order().
|
inlineoverridevirtual |
Reimplemented from libMesh::Elem.
Definition at line 141 of file edge_edge3.h.
|
overridevirtual |
c
and element-local index v
of the second-order node on the parent element. See elem.h for further details. Reimplemented from libMesh::Elem.
Definition at line 176 of file edge_edge3.C.
|
staticinherited |
For example, when this
is a TET4
, then TET10
is returned.
For some elements, there exist two second-order equivalents, e.g. for Quad4
there is Quad8
and Quad9
. When the optional full_ordered
is true
, then QUAD9
is returned. When full_ordered
is false
, then QUAD8
is returned.
Definition at line 2643 of file elem.C.
References libMesh::EDGE2, libMesh::EDGE3, libMesh::EDGE4, libMesh::HEX20, libMesh::HEX27, libMesh::HEX8, libMesh::INFEDGE2, libMesh::INFHEX16, libMesh::INFHEX18, libMesh::INFHEX8, libMesh::INFPRISM12, libMesh::INFPRISM6, libMesh::INFQUAD4, libMesh::INFQUAD6, libMesh::INVALID_ELEM, libMesh::PRISM15, libMesh::PRISM18, libMesh::PRISM6, libMesh::PYRAMID13, libMesh::PYRAMID14, libMesh::PYRAMID5, libMesh::QUAD4, libMesh::QUAD8, libMesh::QUAD9, libMesh::QUADSHELL4, libMesh::QUADSHELL8, libMesh::TET10, libMesh::TET4, libMesh::TRI3, and libMesh::TRI6.
Referenced by libMesh::UnstructuredMesh::all_second_order(), libMesh::Elem::bracketing_nodes(), and libMesh::Elem::parent_bracketing_nodes().
|
inlineinherited |
|
inherited |
Sets the global degree of freedom number for variable var
, component comp
for system s
associated with this DofObject
Definition at line 409 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::dof_number(), libMesh::DofObject::invalid_id, libMesh::DofObject::n_comp(), libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), libMesh::DofObject::start_idx(), libMesh::DofObject::system_var_to_vg_var(), and libMesh::DofObject::var_to_vg().
|
inlineinherited |
id
for this DofObject
as a writable reference. Definition at line 664 of file dof_object.h.
References libMesh::DofObject::_id.
Referenced by libMesh::GMVIO::_read_one_cell(), libMesh::ReplicatedMesh::add_elem(), libMesh::DistributedMesh::add_elem(), libMesh::ReplicatedMesh::add_node(), libMesh::DistributedMesh::add_node(), libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Subdivision::all_subdivision(), libMesh::MeshTools::Generation::build_cube(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::UnstructuredMesh::create_submesh(), libMesh::UNVIO::elements_in(), libMesh::MeshTools::Modification::flatten(), libMesh::DofObject::invalidate_id(), libMesh::Node::Node(), libMesh::DistributedMesh::own_node(), libMesh::Nemesis_IO::read(), libMesh::ExodusII_IO::read(), libMesh::VTKIO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::UCDIO::read_implementation(), libMesh::GmshIO::read_mesh(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::OFFIO::read_stream(), libMesh::MatlabIO::read_stream(), libMesh::RemoteElem::RemoteElem(), libMesh::ReplicatedMesh::renumber_elem(), libMesh::DistributedMesh::renumber_elem(), libMesh::ReplicatedMesh::renumber_node(), libMesh::DistributedMesh::renumber_node(), libMesh::ReplicatedMesh::renumber_nodes_and_elements(), libMesh::DofObject::set_id(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Sets the id
for this DofObject
Definition at line 151 of file dof_object.h.
References libMesh::DofObject::set_id().
|
inherited |
Sets the pointer to the element's interior_parent. Dangerous! Only use this if you know what you are doing!
Definition at line 856 of file elem.C.
References libMesh::Elem::_elemlinks, libMesh::Elem::dim(), libMesh::Elem::n_sides(), and libMesh::remote_elem.
Referenced by libMesh::BoundaryInfo::add_elements(), libMesh::Edge::Edge(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Hex::Hex(), libMesh::InfHex::InfHex(), libMesh::InfQuad::InfQuad(), libMesh::NodeElem::NodeElem(), libMesh::Prism::Prism(), libMesh::Pyramid::Pyramid(), libMesh::Quad::Quad(), libMesh::Tet::Tet(), libMesh::Tri::Tri(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Sets the number of components for Variable
var
of system s
associated with this DofObject
Definition at line 340 of file dof_object.C.
References libMesh::DofObject::n_systems(), libMesh::DofObject::n_vars(), libMesh::DofObject::set_n_comp_group(), and libMesh::DofObject::var_to_vg().
|
inherited |
Sets the number of components for VariableGroup
vg
of system s
associated with this DofObject
Definition at line 352 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::invalid_id, libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::n_vars(), libMesh::DofObject::ncv_magic, and libMesh::DofObject::start_idx().
Referenced by libMesh::DofMap::reinit(), libMesh::DofObject::set_n_comp(), libMesh::DofObject::set_n_vars_per_group(), and libMesh::DofMap::set_nonlocal_dof_objects().
|
inherited |
Sets the number of systems for this DofObject
Definition at line 165 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::clear_dofs(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), and libMesh::DofObject::n_vars().
Referenced by libMesh::DofObject::add_system(), and libMesh::Elem::refine().
|
inherited |
Sets number of variables in each group associated with system s
for this DofObject
. Implicit in this is also setting the number of VariableGroup
variable groups for the system. Has the effect of setting the number of components to 0 even when called even with (nvg == this->n_var_groups(s)).
Definition at line 227 of file dof_object.C.
References libMesh::DofObject::_idx_buf, end, libMesh::DofObject::end_idx(), libMesh::DofObject::invalid_id, libMesh::DofObject::n_comp(), libMesh::DofObject::n_comp_group(), libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::n_vars(), libMesh::DofObject::ncv_magic, libMesh::DofObject::set_n_comp_group(), and libMesh::DofObject::start_idx().
|
inlineinherited |
Assigns n
as the neighbor.
Definition at line 2083 of file elem.h.
References libMesh::Elem::_elemlinks, and libMesh::Elem::n_neighbors().
Referenced by libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::BoundaryInfo::add_elements(), libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshTools::Modification::flatten(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::nullify_neighbors(), libMesh::CheckpointIO::read_remote_elem(), libMesh::Elem::remove_links_to_me(), libMesh::ReplicatedMesh::stitching_helper(), and libMesh::Parallel::Packing< T >::unpack().
|
inlinevirtualinherited |
Node
i
as a writable reference. Reimplemented in libMesh::RemoteElem.
Definition at line 2024 of file elem.h.
References libMesh::Elem::_nodes, and libMesh::Elem::n_nodes().
Referenced by libMesh::GMVIO::_read_one_cell(), libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::TetGenMeshInterface::assign_nodes_to_elem(), libMesh::MeshTools::Generation::build_cube(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::TriangleWrapper::copy_tri_to_mesh(), libMesh::UnstructuredMesh::create_submesh(), libMesh::UNVIO::elements_in(), libMesh::MeshTools::Modification::flatten(), libMesh::Nemesis_IO::read(), libMesh::ExodusII_IO::read(), libMesh::VTKIO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::AbaqusIO::read_elements(), libMesh::UCDIO::read_implementation(), libMesh::GmshIO::read_mesh(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::OFFIO::read_stream(), libMesh::MatlabIO::read_stream(), libMesh::Elem::refine(), libMesh::RemoteElem::set_node(), libMesh::ReplicatedMesh::stitching_helper(), and libMesh::Parallel::Packing< T >::unpack().
|
inherited |
Sets the old_dof_object
to a copy of this
Definition at line 150 of file dof_object.C.
References libMesh::DofObject::clear_old_dof_object(), libMesh::DofObject::DofObject(), and libMesh::DofObject::old_dof_object.
Referenced by libMesh::DofMap::reinit().
|
inlineinherited |
Sets the value of the p-refinement level for the element.
Definition at line 2692 of file elem.h.
References libMesh::Elem::_p_level, libMesh::Elem::child_ref_range(), libMesh::Elem::JUST_COARSENED, libMesh::Elem::JUST_REFINED, std::min(), libMesh::Elem::p_level(), libMesh::Elem::parent(), libMesh::Elem::set_p_level(), and libMesh::Elem::set_p_refinement_flag().
Referenced by libMesh::UnstructuredMesh::all_first_order(), libMesh::Elem::coarsen(), libMesh::Elem::Elem(), libMesh::Elem::refine(), libMesh::Elem::set_p_level(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Sets the value of the p-refinement flag for the element.
Definition at line 2662 of file elem.h.
References libMesh::Elem::_pflag, libMesh::Elem::JUST_REFINED, and libMesh::Elem::p_level().
Referenced by libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::CheckpointIO::read_connectivity(), libMesh::Elem::refine(), libMesh::Elem::set_p_level(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Sets the pointer to the element's parent. Dangerous! Only use this if you know what you are doing!
Definition at line 2495 of file elem.h.
References libMesh::Elem::_elemlinks.
Referenced by libMesh::BoundaryInfo::add_elements(), and libMesh::UnstructuredMesh::all_first_order().
|
inlineinherited |
Sets the value of the refinement flag for the element.
Definition at line 2646 of file elem.h.
References libMesh::Elem::_rflag.
Referenced by libMesh::UnstructuredMesh::all_first_order(), libMesh::Elem::coarsen(), libMesh::Elem::contract(), libMesh::MeshRefinement::enforce_mismatch_limit_prior_to_refinement(), libMesh::MeshRefinement::flag_elements_by_elem_fraction(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::Elem::refine(), libMesh::MeshRefinement::uniformly_coarsen(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
unique_id
for this DofObject
as a writable reference. Definition at line 685 of file dof_object.h.
References libMesh::DofObject::_unique_id.
Referenced by libMesh::ReplicatedMesh::add_elem(), libMesh::DistributedMesh::add_elem(), libMesh::ReplicatedMesh::add_node(), libMesh::DistributedMesh::add_node(), libMesh::ReplicatedMesh::add_point(), libMesh::UnstructuredMesh::all_first_order(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::UnstructuredMesh::create_submesh(), libMesh::MeshTools::Modification::flatten(), libMesh::ReplicatedMesh::insert_elem(), libMesh::DistributedMesh::insert_elem(), libMesh::ReplicatedMesh::insert_node(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::CheckpointIO::read_nodes(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::XdrIO::read_serialized_nodes(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
VariableGroup
DoF indices are indexed as id = base + var_in_vg*ncomp + comp This method allows for direct access to the base.
Definition at line 960 of file dof_object.h.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), libMesh::DofObject::start_idx(), and libMesh::DofObject::vg_dof_base().
Referenced by libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DofObject::invalidate_dofs(), libMesh::DofMap::reinit(), and libMesh::DofMap::set_nonlocal_dof_objects().
|
inlineinherited |
i
.Definition at line 2202 of file elem.h.
References libMesh::Elem::side_ptr().
Referenced by libMesh::Quad4::build_side_ptr(), libMesh::InfQuad4::build_side_ptr(), libMesh::Tri3::build_side_ptr(), libMesh::Hex8::build_side_ptr(), libMesh::InfPrism12::build_side_ptr(), libMesh::Tet4::build_side_ptr(), libMesh::InfHex18::build_side_ptr(), libMesh::InfQuad6::build_side_ptr(), libMesh::Quad8::build_side_ptr(), libMesh::InfHex16::build_side_ptr(), libMesh::Tet10::build_side_ptr(), libMesh::Hex20::build_side_ptr(), libMesh::Tri6::build_side_ptr(), libMesh::Prism15::build_side_ptr(), libMesh::Pyramid13::build_side_ptr(), libMesh::Quad9::build_side_ptr(), libMesh::Hex27::build_side_ptr(), libMesh::Prism18::build_side_ptr(), libMesh::Pyramid14::build_side_ptr(), libMesh::Tet::side_ptr(), libMesh::Prism::side_ptr(), libMesh::Pyramid::side_ptr(), libMesh::Hex::side_ptr(), libMesh::Tri::side_ptr(), libMesh::Edge::side_ptr(), libMesh::InfPrism::side_ptr(), libMesh::InfHex::side_ptr(), libMesh::Quad::side_ptr(), libMesh::InfQuad::side_ptr(), libMesh::Elem::simple_build_side_ptr(), libMesh::Tet::which_node_am_i(), libMesh::Prism::which_node_am_i(), libMesh::InfPrism12::which_node_am_i(), libMesh::Pyramid::which_node_am_i(), libMesh::Hex::which_node_am_i(), libMesh::Tri::which_node_am_i(), libMesh::Edge::which_node_am_i(), libMesh::InfPrism::which_node_am_i(), libMesh::InfQuad6::which_node_am_i(), libMesh::InfHex16::which_node_am_i(), libMesh::InfHex::which_node_am_i(), libMesh::Tet10::which_node_am_i(), libMesh::Quad8::which_node_am_i(), libMesh::Hex20::which_node_am_i(), libMesh::Pyramid13::which_node_am_i(), libMesh::Prism15::which_node_am_i(), libMesh::Tri6::which_node_am_i(), libMesh::Quad::which_node_am_i(), libMesh::InfQuad::which_node_am_i(), libMesh::Quad9::which_node_am_i(), libMesh::Hex27::which_node_am_i(), libMesh::Prism18::which_node_am_i(), libMesh::Pyramid14::which_node_am_i(), and libMesh::InfHex18::which_node_am_i().
|
inlineprotectedinherited |
|
inlineinherited |
Definition at line 2166 of file elem.h.
References libMesh::Elem::n_sides().
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::MeshTools::Subdivision::add_boundary_ghosts(), libMesh::BoundaryInfo::add_elements(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::FEGenericBase< FEOutputType< T >::type >::coarsened_dof_values(), libMesh::FEAbstract::compute_node_constraints(), libMesh::FEAbstract::compute_periodic_node_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::BoundaryInfo::copy_boundary_ids(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::MeshTools::Modification::flatten(), libMesh::BoundaryInfo::get_side_and_node_maps(), libMesh::Elem::has_topological_neighbor(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::Elem::nullify_neighbors(), libMesh::Parallel::Packing< T >::pack(), libMesh::PostscriptIO::plot_quadratic_elem(), libMesh::MeshTools::Modification::smooth(), libMesh::ReplicatedMesh::stitching_helper(), and libMesh::Parallel::Packing< T >::unpack().
|
finaloverridevirtualinherited |
Implements libMesh::Elem.
Definition at line 36 of file edge.C.
References libMesh::Elem::node_ptr().
Referenced by libMesh::Edge::build_side_ptr().
|
finaloverridevirtualinherited |
Rebuilds a pointer to a NodeElem for the specified node.
Implements libMesh::Elem.
Definition at line 45 of file edge.C.
References libMesh::Edge::build_side_ptr(), libMesh::Edge::n_sides(), libMesh::Elem::node_ptr(), libMesh::NODEELEM, libMesh::Elem::side(), and libMesh::Elem::subdomain_id().
|
inlineinherited |
Definition at line 2175 of file elem.h.
References libMesh::Elem::side_ptr().
|
inlineinherited |
Definition at line 2188 of file elem.h.
References libMesh::Elem::side_ptr().
|
inlineprotectedinherited |
An implementation for simple (all sides equal) elements
Definition at line 2257 of file elem.h.
References libMesh::Elem::build_side_ptr(), libMesh::Elem::n_sides(), libMesh::Elem::node_ptr(), libMesh::Elem::side(), and libMesh::Elem::subdomain_id().
|
inlineinherited |
true
if the element is subactive (i.e. has no active descendants), false
otherwise or if AMR is disabled. Definition at line 2408 of file elem.h.
References libMesh::Elem::active(), libMesh::Elem::has_children(), and libMesh::Elem::parent().
Referenced by libMesh::Elem::active_family_tree(), libMesh::Elem::active_family_tree_by_neighbor(), libMesh::Elem::active_family_tree_by_side(), libMesh::Elem::active_family_tree_by_topological_neighbor(), libMesh::HPCoarsenTest::add_projection(), libMesh::Elem::ancestor(), libMesh::FEAbstract::compute_node_constraints(), libMesh::UnstructuredMesh::contract(), libMesh::MeshCommunication::delete_remote_elements(), libMesh::Elem::family_tree(), libMesh::Elem::family_tree_by_neighbor(), libMesh::Elem::family_tree_by_side(), libMesh::Elem::family_tree_by_subneighbor(), libMesh::Elem::find_interior_neighbors(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::get_info(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::Elem::make_links_to_me_local(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::max_descendant_p_level(), libMesh::Elem::min_new_p_level_by_neighbor(), libMesh::Elem::min_p_level_by_neighbor(), libMesh::Elem::refine(), libMesh::Elem::remove_links_to_me(), libMesh::ReplicatedMesh::stitching_helper(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Definition at line 2034 of file elem.h.
References libMesh::Elem::_sbd_id.
Referenced by libMesh::DofMap::_dof_indices(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::UnstructuredMesh::all_first_order(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::AbaqusIO::assign_subdomain_ids(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::Quad4::build_side_ptr(), libMesh::InfQuad4::build_side_ptr(), libMesh::Prism6::build_side_ptr(), libMesh::Pyramid5::build_side_ptr(), libMesh::InfHex8::build_side_ptr(), libMesh::Tri3::build_side_ptr(), libMesh::Hex8::build_side_ptr(), libMesh::InfPrism6::build_side_ptr(), libMesh::InfPrism12::build_side_ptr(), libMesh::InfHex18::build_side_ptr(), libMesh::Tet4::build_side_ptr(), libMesh::InfQuad6::build_side_ptr(), libMesh::Quad8::build_side_ptr(), libMesh::InfHex16::build_side_ptr(), libMesh::Tet10::build_side_ptr(), libMesh::Tri6::build_side_ptr(), libMesh::Hex20::build_side_ptr(), libMesh::Pyramid13::build_side_ptr(), libMesh::Prism15::build_side_ptr(), libMesh::Quad9::build_side_ptr(), libMesh::Hex27::build_side_ptr(), libMesh::Prism18::build_side_ptr(), libMesh::Pyramid14::build_side_ptr(), libMesh::MeshTools::Modification::change_subdomain_id(), libMesh::UnstructuredMesh::copy_nodes_and_elements(), libMesh::UnstructuredMesh::create_submesh(), libMesh::DofMap::dof_indices(), libMesh::Elem::Elem(), libMesh::MeshTools::Modification::flatten(), libMesh::UNVIO::groups_in(), libMesh::DofMap::old_dof_indices(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), libMesh::Nemesis_IO::read(), libMesh::ExodusII_IO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::UCDIO::read_implementation(), libMesh::GmshIO::read_mesh(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::Prism::side_ptr(), libMesh::Pyramid::side_ptr(), libMesh::Edge::side_ptr(), libMesh::InfPrism::side_ptr(), libMesh::InfHex::side_ptr(), libMesh::InfQuad::side_ptr(), libMesh::Elem::simple_build_side_ptr(), libMesh::MeshBase::subdomain_ids(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
Definition at line 2042 of file elem.h.
References libMesh::Elem::_sbd_id.
|
inlineinherited |
That is, this
if this is a level-0 element, this element's parent if this is a level-1 element, this element's grandparent if this is a level-2 element, etc...
Definition at line 2503 of file elem.h.
References libMesh::Elem::level(), and libMesh::Elem::parent().
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::BoundaryInfo::add_elements(), libMesh::BoundaryInfo::boundary_ids(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::MeshTools::libmesh_assert_valid_amr_interior_parents(), libMesh::ExodusII_IO::read_elemental_variable(), and libMesh::BoundaryInfo::side_with_boundary_id().
|
inherited |
Definition at line 920 of file elem.C.
References libMesh::PeriodicBoundaries::boundary(), libMesh::Elem::level(), mesh, libMesh::Elem::n_neighbors(), libMesh::PeriodicBoundaries::neighbor(), libMesh::Elem::neighbor_ptr(), and libMesh::Elem::parent().
Referenced by libMesh::Elem::has_topological_neighbor(), libMesh::DefaultCoupling::operator()(), and libMesh::MeshRefinement::topological_neighbor().
|
inherited |
Definition at line 878 of file elem.C.
References libMesh::PeriodicBoundaries::boundary(), libMesh::Elem::level(), mesh, libMesh::Elem::n_neighbors(), libMesh::PeriodicBoundaries::neighbor(), libMesh::Elem::neighbor_ptr(), and libMesh::Elem::parent().
|
inherited |
Same as the family_tree()
member, but also adds any subactive descendants.
Definition at line 1557 of file elem.C.
References libMesh::Elem::child_ref_range(), and libMesh::Elem::has_children().
Referenced by libMesh::connect_families(), and libMesh::Partitioner::set_parent_processor_ids().
|
inherited |
Same as the family_tree_by_neighbor()
member, but also adds any subactive descendants.
Definition at line 1688 of file elem.C.
References libMesh::Elem::child_ref_range(), libMesh::Elem::has_children(), libMesh::Elem::has_neighbor(), and libMesh::remote_elem.
|
inherited |
Same as the family_tree_by_subneighbor()
member, but also adds any subactive descendants.
Definition at line 1754 of file elem.C.
References libMesh::Elem::child_ref_range(), libMesh::Elem::has_children(), libMesh::Elem::has_neighbor(), libMesh::Elem::is_ancestor_of(), and libMesh::remote_elem.
|
inlineoverridevirtual |
EDGE3
. Implements libMesh::Elem.
Definition at line 120 of file edge_edge3.h.
References libMesh::EDGE3.
|
inlineinherited |
unique_id
for this DofObject
Definition at line 672 of file dof_object.h.
References libMesh::DofObject::_unique_id, libMesh::DofObject::invalid_unique_id, and libMesh::DofObject::valid_unique_id().
Referenced by libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::MeshTools::Modification::flatten(), libMesh::Elem::get_info(), libMesh::MeshTools::libmesh_assert_valid_unique_ids(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), and libMesh::ExodusII_IO::read_elemental_variable().
|
inherited |
A method for creating our index buffer from packed data - basically with our current implementation we investigate the size term and then copy.
Definition at line 482 of file dof_object.C.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::clear_old_dof_object(), libMesh::DofObject::DofObject(), libMesh::DofObject::old_dof_object, and libMesh::DofObject::unpack_indexing().
Referenced by libMesh::Parallel::Packing< T >::unpack(), and libMesh::DofObject::unpack_indexing().
|
staticinherited |
If we have indices packed into an buffer for communications, how much of that buffer applies to this dof object?
Definition at line 461 of file dof_object.C.
Referenced by libMesh::Parallel::Packing< T >::packed_size(), and libMesh::Parallel::Packing< T >::unpack().
|
inlineinherited |
true
if this DofObject
has a valid id
set, false
otherwise. Definition at line 697 of file dof_object.h.
References libMesh::DofObject::_id, and libMesh::DofObject::invalid_id.
Referenced by libMesh::ReplicatedMesh::add_elem(), libMesh::DistributedMesh::add_elem(), libMesh::ReplicatedMesh::add_node(), libMesh::DistributedMesh::add_node(), libMesh::Node::get_info(), libMesh::Elem::get_info(), libMesh::DofObject::id(), and libMesh::Elem::libmesh_assert_valid_node_pointers().
|
inlineinherited |
true
if this DofObject
has a valid id
set, false
otherwise. Definition at line 741 of file dof_object.h.
References libMesh::DofObject::_processor_id, and libMesh::DofObject::invalid_processor_id.
|
inlineinherited |
true
if this DofObject
has a valid unique_id
set, false
otherwise. Definition at line 705 of file dof_object.h.
References libMesh::DofObject::_unique_id, and libMesh::DofObject::invalid_unique_id.
Referenced by libMesh::ReplicatedMesh::add_elem(), libMesh::DistributedMesh::add_elem(), libMesh::ReplicatedMesh::add_node(), libMesh::DistributedMesh::add_node(), libMesh::ReplicatedMesh::add_point(), libMesh::Elem::get_info(), libMesh::ReplicatedMesh::insert_elem(), libMesh::DistributedMesh::insert_elem(), libMesh::ReplicatedMesh::insert_node(), libMesh::Parallel::Packing< T >::pack(), and libMesh::DofObject::unique_id().
|
inlineinherited |
var
on system s
associated with this DofObject
Definition at line 887 of file dof_object.h.
References libMesh::DofObject::n_var_groups(), and libMesh::DofObject::n_vars().
Referenced by libMesh::DofMap::_dof_indices(), and libMesh::DofObject::dof_number().
|
inlineinherited |
VariableGroup
DoF indices are indexed as id = base + var_in_vg*ncomp + comp This method allows for direct access to the base.
Definition at line 980 of file dof_object.h.
References libMesh::DofObject::_idx_buf, libMesh::DofObject::n_systems(), libMesh::DofObject::n_var_groups(), and libMesh::DofObject::start_idx().
Referenced by libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DofMap::reinit(), libMesh::DofMap::set_nonlocal_dof_objects(), and libMesh::DofObject::set_vg_dof_base().
|
overridevirtual |
An optimized method for computing the length of a 3-node edge.
Reimplemented from libMesh::Elem.
Definition at line 183 of file edge_edge3.C.
References A, libMesh::libmesh_isnan(), libMesh::TypeVector< T >::norm_sq(), libMesh::Elem::point(), libMesh::Real, and libMesh::TOLERANCE.
|
inlineinherited |
e
corresponds to.I.e. if c = a->which_child_am_i(e); then a->child_ptr(c) will be e.
Definition at line 2620 of file elem.h.
References libMesh::Elem::child_ptr(), libMesh::Elem::has_children(), libMesh::invalid_uint, and libMesh::Elem::n_children().
Referenced by libMesh::BoundaryInfo::boundary_ids(), libMesh::BoundaryInfo::edge_boundary_ids(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::Elem::make_links_to_me_remote(), libMesh::Parallel::Packing< T >::pack(), libMesh::BoundaryInfo::side_with_boundary_id(), libMesh::MeshTools::Modification::smooth(), and libMesh::Parallel::sync_element_data_by_parent_id().
|
inlineinherited |
This function tells you which neighbor e
is. I.e. if s = a->which_neighbor_am_i(e); then a->neighbor(s) will be an ancestor of e.
Definition at line 2314 of file elem.h.
References libMesh::invalid_uint, libMesh::Elem::level(), libMesh::Elem::n_sides(), libMesh::Elem::neighbor_ptr(), and libMesh::Elem::parent().
Referenced by libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::MeshTools::find_hanging_nodes_and_parents(), libMesh::Elem::libmesh_assert_valid_neighbors(), libMesh::Elem::make_links_to_me_remote(), libMesh::Elem::nullify_neighbors(), and libMesh::Elem::remove_links_to_me().
|
finaloverridevirtualinherited |
side
after doing some range checking. side_node
is ignored. Implements libMesh::Elem.
Definition at line 27 of file edge.C.
References libMesh::Edge::n_sides(), and libMesh::Elem::side().
|
inlineinherited |
This function tells you which side the boundary element e
is. I.e. if e = a->build_side_ptr(s) or e = a->side_ptr(s); then a->which_side_am_i(e) will be s.
e
is made with the nodal positions of this
in order to perform this test. The idea is that the test will return a valid side id if e
either directly shares Node pointers with this
, or was created by exactly copying some of the nodes of this
(e.g. through BoundaryMesh::sync()). In these circumstances, non-fuzzy floating point equality is expected.this
the element which e
is, otherwise invalid_uint
. Definition at line 2336 of file elem.h.
References libMesh::invalid_uint, libMesh::Elem::is_node_on_side(), libMesh::Elem::n_nodes(), libMesh::Elem::n_sides(), and libMesh::Elem::point().
|
inherited |
Writes the element connectivity for various IO packages to the passed ostream "out". Not virtual, since it is implemented in the base class.
Definition at line 1360 of file elem.C.
References libMesh::Elem::_nodes, libMesh::Elem::connectivity(), libMesh::INVALID_IO_PACKAGE, libMesh::Elem::n_sub_elem(), libMesh::Elem::node_id(), libMesh::Elem::node_index_range(), libMesh::TECPLOT, and libMesh::UCD.
|
protectedinherited |
Pointers to this element's children.
Definition at line 1707 of file elem.h.
Referenced by libMesh::Elem::add_child(), libMesh::Elem::child_ptr(), libMesh::Elem::child_ref_range(), libMesh::Elem::contract(), libMesh::Elem::has_ancestor_children(), libMesh::Elem::has_children(), libMesh::Elem::raw_child_ptr(), libMesh::Elem::refine(), and libMesh::Elem::set_child().
|
staticprotectedinherited |
Actually holds the data.
Definition at line 122 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::get_info(), libMesh::ReferenceCounter::increment_constructor_count(), and libMesh::ReferenceCounter::increment_destructor_count().
|
staticprotectedinherited |
Actually holds the data.
Definition at line 122 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::get_info(), libMesh::ReferenceCounter::increment_constructor_count(), and libMesh::ReferenceCounter::increment_destructor_count().
|
protectedinherited |
Pointers to this element's parent and neighbors, and for lower-dimensional elements' interior_parent.
Definition at line 1701 of file elem.h.
Referenced by libMesh::Elem::Elem(), libMesh::Elem::interior_parent(), libMesh::Elem::neighbor_ptr(), libMesh::Elem::neighbor_ptr_range(), libMesh::Elem::parent(), libMesh::Elem::set_interior_parent(), libMesh::Elem::set_neighbor(), and libMesh::Elem::set_parent().
|
protectedinherited |
|
staticprotected |
Matrix that computes new nodal locations/solution values from current nodes/solution.
Definition at line 215 of file edge_edge3.h.
Referenced by embedding_matrix().
|
staticprotectedinherited |
Flag to control whether reference count information is printed when print_info is called.
Definition at line 141 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::disable_print_counter_info(), libMesh::ReferenceCounter::enable_print_counter_info(), and libMesh::ReferenceCounter::print_info().
|
staticprotectedinherited |
Flag to control whether reference count information is printed when print_info is called.
Definition at line 141 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::disable_print_counter_info(), libMesh::ReferenceCounter::enable_print_counter_info(), and libMesh::ReferenceCounter::print_info().
|
staticprotectedinherited |
Mutual exclusion object to enable thread-safe reference counting.
Definition at line 135 of file reference_counter.h.
|
staticprotectedinherited |
Mutual exclusion object to enable thread-safe reference counting.
Definition at line 135 of file reference_counter.h.
|
staticprotectedinherited |
The number of objects. Print the reference count information when the number returns to 0.
Definition at line 130 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::n_objects(), libMesh::ReferenceCounter::ReferenceCounter(), and libMesh::ReferenceCounter::~ReferenceCounter().
|
staticprotectedinherited |
The number of objects. Print the reference count information when the number returns to 0.
Definition at line 130 of file reference_counter.h.
Referenced by libMesh::ReferenceCounter::n_objects(), libMesh::ReferenceCounter::ReferenceCounter(), and libMesh::ReferenceCounter::~ReferenceCounter().
Data for links to nodes.
Definition at line 197 of file edge_edge3.h.
|
protectedinherited |
Pointers to the nodes we are connected to.
Definition at line 1695 of file elem.h.
Referenced by libMesh::Prism6::connectivity(), libMesh::Pyramid5::connectivity(), libMesh::Hex8::connectivity(), libMesh::InfHex8::connectivity(), libMesh::InfPrism6::connectivity(), libMesh::Tet4::connectivity(), libMesh::InfPrism12::connectivity(), libMesh::Tet10::connectivity(), libMesh::Hex20::connectivity(), libMesh::InfHex16::connectivity(), libMesh::Prism15::connectivity(), libMesh::Pyramid13::connectivity(), libMesh::Hex27::connectivity(), libMesh::InfHex18::connectivity(), libMesh::Prism18::connectivity(), libMesh::Pyramid14::connectivity(), libMesh::Elem::Elem(), libMesh::Elem::get_node_index(), libMesh::Elem::get_nodes(), libMesh::Tri3Subdivision::local_node_number(), libMesh::Elem::node_id(), libMesh::Elem::node_ptr(), libMesh::Elem::node_ref_range(), libMesh::Elem::point(), libMesh::Elem::set_node(), and libMesh::Elem::write_connectivity().
|
protectedinherited |
p refinement level - the difference between the polynomial degree on this element and the minimum polynomial degree on the mesh. This is stored as an unsigned char to save space. In theory, these last four bytes might have been padding anyway.
Definition at line 1736 of file elem.h.
Referenced by libMesh::Elem::hack_p_level(), libMesh::Elem::max_descendant_p_level(), libMesh::Elem::p_level(), and libMesh::Elem::set_p_level().
|
protectedinherited |
p refinement flag. This is stored as an unsigned char to save space.
Definition at line 1726 of file elem.h.
Referenced by libMesh::Elem::p_refinement_flag(), and libMesh::Elem::set_p_refinement_flag().
|
protectedinherited |
h refinement flag. This is stored as an unsigned char to save space.
Definition at line 1720 of file elem.h.
Referenced by libMesh::Elem::refinement_flag(), and libMesh::Elem::set_refinement_flag().
|
protectedinherited |
The subdomain to which this element belongs.
Definition at line 1713 of file elem.h.
Referenced by libMesh::Elem::subdomain_id().
|
staticinherited |
An invalid id
to distinguish an uninitialized DofObject
Definition at line 347 of file dof_object.h.
Referenced by libMesh::DofMap::_dof_indices(), libMesh::Node::active(), libMesh::TopologyMap::add_node(), libMesh::MeshRefinement::add_node(), libMesh::ReplicatedMesh::add_point(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::Elem::bracketing_nodes(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_periodic_constraints(), libMesh::FEGenericBase< FEOutputType< T >::type >::compute_proj_constraints(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DofMap::dof_indices(), libMesh::DofObject::dof_number(), libMesh::TopologyMap::find(), libMesh::ReplicatedMesh::insert_node(), libMesh::DofObject::invalidate_dofs(), libMesh::DofObject::invalidate_id(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::Elem::node_id(), libMesh::DofMap::old_dof_indices(), libMesh::DistributedMesh::own_node(), libMesh::Parallel::Packing< T >::pack(), libMesh::XdrIO::pack_element(), libMesh::SFCPartitioner::partition_range(), libMesh::Elem::point(), libMesh::System::read_legacy_data(), libMesh::System::read_parallel_data(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::DofMap::SCALAR_dof_indices(), libMesh::DofObject::set_dof_number(), libMesh::DofObject::set_n_comp_group(), libMesh::DofObject::set_n_vars_per_group(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Parallel::sync_node_data_by_element_id_once(), libMesh::Parallel::Packing< T >::unpack(), libMesh::DofObject::valid_id(), and libMesh::System::write_parallel_data().
|
staticinherited |
An invalid processor_id
to distinguish DoFs that have not been assigned to a processor.
Definition at line 358 of file dof_object.h.
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::DistributedMesh::add_elem(), libMesh::DistributedMesh::add_node(), libMesh::MeshRefinement::add_node(), libMesh::MeshCommunication::allgather(), libMesh::Node::choose_processor_id(), libMesh::MeshTools::create_bounding_box(), libMesh::MeshTools::create_nodal_bounding_box(), libMesh::DistributedMesh::delete_elem(), libMesh::DistributedMesh::delete_node(), libMesh::Elem::Elem(), libMesh::MeshCommunication::find_global_indices(), libMesh::DistributedMesh::insert_elem(), libMesh::DofObject::invalidate_processor_id(), libMesh::MeshTools::libmesh_assert_consistent_distributed(), libMesh::MeshTools::libmesh_assert_consistent_distributed_nodes(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::DistributedMesh::n_active_elem(), libMesh::MeshBase::n_elem_on_proc(), libMesh::MeshBase::n_nodes_on_proc(), libMesh::MeshBase::n_unpartitioned_elem(), libMesh::MeshBase::n_unpartitioned_nodes(), libMesh::SparsityPattern::Build::operator()(), libMesh::Partitioner::processor_pairs_to_interface_nodes(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::Parallel::sync_dofobject_data_by_id(), libMesh::Parallel::sync_dofobject_data_by_xyz(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Parallel::sync_node_data_by_element_id_once(), libMesh::MeshTools::total_weight(), libMesh::Parallel::Packing< T >::unpack(), libMesh::DofObject::valid_processor_id(), and libMesh::CheckpointIO::write().
|
staticinherited |
A static integral constant representing an invalid subdomain id. See also DofObject::{invalid_id, invalid_unique_id, invalid_processor_id}.
subdomain_id_type
is sometimes a signed integer for compatibility reasons (see libmesh/id_types.h).Definition at line 262 of file elem.h.
Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::BoundaryInfo::add_elements(), libMesh::MeshBase::get_id_by_name(), and libMesh::BoundaryInfo::sync().
|
staticinherited |
An invalid unique_id
to distinguish an uninitialized DofObject
Definition at line 352 of file dof_object.h.
Referenced by libMesh::Parallel::Packing< T >::pack(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::DofObject::unique_id(), and libMesh::DofObject::valid_unique_id().
|
protected |
Definition at line 217 of file edge_edge3.h.
|
staticinherited |
The maximum number of nodes any element can contain. This is useful for replacing heap vectors with stack arrays.
Definition at line 600 of file elem.h.
Referenced by libMesh::Elem::Elem().
|
static |
Definition at line 190 of file edge_edge3.h.
|
static |
Geometric constants for Edge3.
Definition at line 189 of file edge_edge3.h.
Referenced by is_node_on_side(), and n_nodes().
|
inherited |
This object on the last mesh. Useful for projecting solutions from one mesh to another.
Definition at line 79 of file dof_object.h.
Referenced by libMesh::OldSolutionBase< Output, point_output >::check_old_context(), libMesh::DofObject::clear_old_dof_object(), libMesh::OldSolutionValue< Output, point_output >::eval_at_node(), libMesh::OldSolutionCoefs< Output, point_output >::eval_at_node(), libMesh::DofMap::old_dof_indices(), libMesh::BuildProjectionList::operator()(), libMesh::DofObject::operator=(), libMesh::DofObject::pack_indexing(), libMesh::DofObject::packed_indexing_size(), libMesh::DofMap::reinit(), libMesh::DofObject::set_old_dof_object(), and libMesh::DofObject::unpack_indexing().
|
staticinherited |
This array maps the integer representation of the ElemType
enum to the number of edges on the element.
Definition at line 669 of file elem.h.
Referenced by libMesh::Parallel::Packing< T >::packed_size().
|
staticinherited |
This array maps the integer representation of the ElemType
enum to the number of nodes in the element.
Definition at line 589 of file elem.h.
Referenced by libMesh::XdrIO::pack_element(), libMesh::Parallel::Packing< T >::packed_size(), libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_serialized_connectivity(), and libMesh::Parallel::Packing< T >::unpack().
|
staticinherited |
This array maps the integer representation of the ElemType
enum to the number of sides on the element.
Definition at line 620 of file elem.h.
Referenced by libMesh::Parallel::Packing< T >::packed_size().