deal.II version GIT relicensing-2289-g1e5549a87a 2024-12-21 21:30:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
ArborXWrappers::DistributedTree Class Reference

#include <deal.II/arborx/distributed_tree.h>

Public Member Functions

template<int dim, typename Number >
 DistributedTree (const MPI_Comm comm, const std::vector< BoundingBox< dim, Number > > &bounding_boxes)
 
template<int dim, typename Number >
 DistributedTree (const MPI_Comm comm, const std::vector< Point< dim, Number > > &points)
 
template<typename QueryType >
std::pair< std::vector< std::pair< int, int > >, std::vector< int > > query (const QueryType &queries)
 

Private Attributes

ArborX::DistributedTree< Kokkos::HostSpace > distributed_tree
 

Detailed Description

This class implements a wrapper around ArborX::DistributedTree, the distributed version of ArborX::BVH.

Because ArborX uses Kokkos, Kokkos needs to be initialized and finalized before using this class.

Definition at line 37 of file distributed_tree.h.

Constructor & Destructor Documentation

◆ DistributedTree() [1/2]

template<int dim, typename Number >
ArborXWrappers::DistributedTree::DistributedTree ( const MPI_Comm  comm,
const std::vector< BoundingBox< dim, Number > > &  bounding_boxes 
)

Constructor. Use a vector of BoundingBox bounding_boxes as primitives. The BoundingBox objects in bounding_boxes are local to the MPI process.

Definition at line 83 of file distributed_tree.h.

◆ DistributedTree() [2/2]

template<int dim, typename Number >
ArborXWrappers::DistributedTree::DistributedTree ( const MPI_Comm  comm,
const std::vector< Point< dim, Number > > &  points 
)

Constructor. Use a vector of points as primitives. The Point objects in points are local to the MPI process.

Definition at line 94 of file distributed_tree.h.

Member Function Documentation

◆ query()

template<typename QueryType >
std::pair< std::vector< std::pair< int, int > >, std::vector< int > > ArborXWrappers::DistributedTree::query ( const QueryType &  queries)

Return the indices and the MPI ranks of those BoundingBox objects that satisfy the queries. Because queries can contain multiple queries, the function returns a pair of indices and ranks and the associated offsets.

Valid QueryType classes are ArborXWrappers::BoundingBoxIntersectPredicate, ArborXWrappers::BoundingBoxNearestPredicate, ArborXWrappers::PointIntersectPredicate, and ArborXWrappers::PointNearestPredicate,

Definition at line 104 of file distributed_tree.h.

Member Data Documentation

◆ distributed_tree

ArborX::DistributedTree<Kokkos::HostSpace> ArborXWrappers::DistributedTree::distributed_tree
private

Underlying ArborX object.

Definition at line 77 of file distributed_tree.h.


The documentation for this class was generated from the following file: