| libMesh
    | 
Data structures that enable location-based lookups The key is a hash of the Point location. More...
#include <location_maps.h>
| Public Member Functions | |
| void | init (MeshBase &) | 
| void | clear () | 
| void | insert (T &) | 
| bool | empty () const | 
| T * | find (const Point &, const Real tol=TOLERANCE) | 
| Point | point_of (const T &) const | 
| template<> | |
| Point | point_of (const Node &node) const | 
| template<> | |
| Point | point_of (const Elem &elem) const | 
| Protected Member Functions | |
| unsigned int | key (const Point &) | 
| void | fill (MeshBase &) | 
| template<> | |
| void | fill (MeshBase &mesh) | 
| template<> | |
| void | fill (MeshBase &mesh) | 
| Private Types | |
| typedef std::unordered_multimap< unsigned int, T * > | map_type | 
| Private Attributes | |
| map_type | _map | 
| std::vector< Real > | _lower_bound | 
| std::vector< Real > | _upper_bound | 
Data structures that enable location-based lookups The key is a hash of the Point location.
For efficiency we will use a hashed multimap if it is available, otherwise a regular multimap.
Definition at line 53 of file location_maps.h.
| 
 | private | 
Definition at line 55 of file location_maps.h.
| 
 | inline | 
| 
 | inline | 
Definition at line 63 of file location_maps.h.
References libMesh::LocationMap< T >::_map.
Referenced by libMesh::Parallel::sync_dofobject_data_by_xyz().
| 
 | protected | 
| 
 | protected | 
| 
 | protected | 
| T * libMesh::LocationMap< T >::find | ( | const Point & | p, | 
| const Real | tol = TOLERANCE | ||
| ) | 
Definition at line 112 of file location_maps.C.
References libMesh::TypeVector< T >::absolute_fuzzy_equals(), and libMesh::as_range().
Referenced by libMesh::Parallel::sync_dofobject_data_by_xyz().
| void libMesh::LocationMap< T >::init | ( | MeshBase & | mesh | ) | 
Definition at line 47 of file location_maps.C.
References libMesh::ParallelObject::comm(), libMesh::MeshBase::is_serial(), TIMPI::Communicator::max(), mesh, and TIMPI::Communicator::min().
Referenced by ParallelGhostSyncTest::testByXYZ().
| void libMesh::LocationMap< T >::insert | ( | T & | t | ) | 
Definition at line 88 of file location_maps.C.
| 
 | protected | 
Definition at line 149 of file location_maps.C.
References libMesh::Real, and libMesh::TOLERANCE.
| Point libMesh::LocationMap< T >::point_of | ( | const T & | ) | const | 
Referenced by libMesh::Parallel::sync_dofobject_data_by_xyz().
| Point libMesh::LocationMap< Node >::point_of | ( | const Node & | node | ) | const | 
Definition at line 96 of file location_maps.C.
| Point libMesh::LocationMap< Elem >::point_of | ( | const Elem & | elem | ) | const | 
Definition at line 104 of file location_maps.C.
References libMesh::Elem::vertex_average().
| 
 | private | 
Definition at line 77 of file location_maps.h.
| 
 | private | 
Definition at line 76 of file location_maps.h.
Referenced by libMesh::LocationMap< T >::clear(), and libMesh::LocationMap< T >::empty().
| 
 | private | 
Definition at line 78 of file location_maps.h.
 1.8.14
 1.8.14