29 _local_sub_elem (nullptr),
30 _intersection (nullptr) {
113 std::unique_ptr<MAST::FEBase>
115 bool init_second_order_derivative,
116 int extra_quadrature_order)
const {
120 fe->set_extra_quadrature_order(extra_quadrature_order);
121 fe->set_evaluate_second_order_derivatives(init_second_order_derivative);
123 fe->init(*
this, init_grads);
128 std::unique_ptr<MAST::FEBase>
131 int extra_quadrature_order)
const {
135 fe->set_extra_quadrature_order(extra_quadrature_order);
137 fe->init_for_side(*
this, s, init_grads);
int get_subelem_side_on_level_set_boundary() const
virtual const libMesh::Elem & get_quadrature_elem() const
const MAST::SystemInitialization * _sys_init
system initialization object for this element
unsigned int get_side_on_interface(const libMesh::Elem &e) const
const libMesh::Elem * _ref_elem
reference element in the mesh for which the data structure is initialized
virtual void init(const libMesh::Elem &elem, const MAST::SystemInitialization &sys_init)
This method should not get called for this class.
MAST::LevelSetIntersection * _intersection
const libMesh::Elem & elem() const
libMesh::Elem * _local_elem
a local element is created if
virtual const libMesh::Elem & get_quadrature_local_elem() const
virtual std::unique_ptr< MAST::FEBase > init_side_fe(unsigned int s, bool init_grads, int extra_quadrature_order=0) const
initializes the finite element shape function and quadrature object for the side with the order of qu...
bool if_elem_has_level_set_boundary() const
bool has_side_on_interface(const libMesh::Elem &e) const
virtual std::unique_ptr< MAST::FEBase > init_fe(bool init_grads, bool init_second_order_derivative, int extra_quadrature_order=0) const
initializes the finite element shape function and quadrature object with the order of quadrature rule...
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
bool if_elem_has_boundary() const
libMesh::Elem * _local_sub_elem
const libMesh::Elem * _sub_elem
std::vector< libMesh::Node * > _local_subelem_nodes
nodes for local element
This class specializes the MAST::FEBase class for level-set applications where integration is to be p...
bool if_subelem_has_side_on_level_set_boundary() const
LevelSetIntersectedElem()
virtual ~LevelSetIntersectedElem()