20 #ifndef LIBMESH_TREE_BASE_H 21 #define LIBMESH_TREE_BASE_H 24 #include "libmesh/reference_counted_object.h" 25 #include "libmesh/id_types.h" 26 #include "libmesh/libmesh_common.h" 104 const std::set<subdomain_id_type> * allowed_subdomains =
nullptr,
114 std::set<const Elem *> & candidate_elements,
115 const std::set<subdomain_id_type> * allowed_subdomains =
nullptr,
130 #endif // LIBMESH_TREE_BASE_H BuildType
enum defining how to build the tree.
virtual void find_elements(const Point &p, std::set< const Elem *> &candidate_elements, const std::set< subdomain_id_type > *allowed_subdomains=nullptr, Real relative_tol=TOLERANCE) const =0
Fills candidate_elements with any elements containing the specified point p, optionally restricted to...
static constexpr Real TOLERANCE
TreeBase(const MeshBase &m)
Constructor.
This is the base class from which all geometric element types are derived.
The libMesh namespace provides an interface to certain functionality in the library.
virtual void print_nodes(std::ostream &out_stream=libMesh::out) const =0
Prints the nodes.
virtual unsigned int n_active_bins() const =0
This is the MeshBase class.
virtual void print_elements(std::ostream &out_stream=libMesh::out) const =0
Prints the nodes.
const MeshBase & mesh
Constant reference to a mesh.
virtual ~TreeBase()=default
Destructor.
virtual const Elem * find_element(const Point &p, const std::set< subdomain_id_type > *allowed_subdomains=nullptr, Real relative_tol=TOLERANCE) const =0
This class implements reference counting.
This is the base class for trees, it allows pointer usage of trees.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
A Point defines a location in LIBMESH_DIM dimensional Real space.