ArborX / Spatial indexes

ArborX::DistributedTree

Defined in header <ArborX_DistributedTree.hpp>

template <typename MemorySpace, typename Value, typename IndexableGetter, typename BoundingVolume>
class DistributedTree;

The class template ArborX::DistributedTree is a tree data structure that can be used to accelerate the search for geometrical objects in space distributed across multiple MPI processes.

Template parameter

  • MemorySpace: valid Kokkos memory space

  • Value: type of objects stored in the container

  • IndexableGetter: function extracting Indexable from Value

  • BoundingVolume: bounding volume used for internal nodes

Member types

Member type

Definition

memory_space

MemorySpace

size_type

typename BVH<MemorySpace>::size_type

value_type

Value

bounding_volume_type

typename BVH<MemorySpace>::bounding_volume_type

indexable_getter_type

IndexableGetter

Member functions

(constructor)

constructs the tree data structure

size

returns the global number of objects stored in the tree

empty

checks whether the tree is empty on all ranks

bounds

returns a bounding volume able to contain all leaves stored in the tree

query

finds all leaves that satisfy given predicates, e.g. nearest to a point or intersecting with a box or a sphere