OptimizedSpatialSearch

Trait OptimizedSpatialSearch 

Source
pub trait OptimizedSpatialSearch<F: Float> {
    // Required methods
    fn batch_k_nearest_neighbors(
        &self,
        queries: &ArrayView2<'_, F>,
        k: usize,
    ) -> InterpolateResult<Vec<Vec<(usize, F)>>>;
    fn parallel_k_nearest_neighbors(
        &self,
        queries: &ArrayView2<'_, F>,
        k: usize,
        workers: Option<usize>,
    ) -> InterpolateResult<Vec<Vec<(usize, F)>>>;
    fn adaptive_k_nearest_neighbors(
        &self,
        query: &[F],
        k: usize,
    ) -> InterpolateResult<Vec<(usize, F)>>;
    fn multi_radius_search(
        &self,
        query: &[F],
        radii: &[F],
    ) -> InterpolateResult<Vec<Vec<(usize, F)>>>;
}
Expand description

Enhanced spatial search interface with multiple optimization strategies

Required Methods§

Source

fn batch_k_nearest_neighbors( &self, queries: &ArrayView2<'_, F>, k: usize, ) -> InterpolateResult<Vec<Vec<(usize, F)>>>

Perform batch k-nearest neighbor search for multiple queries

Source

fn parallel_k_nearest_neighbors( &self, queries: &ArrayView2<'_, F>, k: usize, workers: Option<usize>, ) -> InterpolateResult<Vec<Vec<(usize, F)>>>

Perform parallel k-nearest neighbor search

Source

fn adaptive_k_nearest_neighbors( &self, query: &[F], k: usize, ) -> InterpolateResult<Vec<(usize, F)>>

Adaptive k-nearest neighbor search that adjusts strategy based on query characteristics

Range search with multiple radii for the same query point

Implementors§

Source§

impl<F> OptimizedSpatialSearch<F> for BallTree<F>

Default implementation of OptimizedSpatialSearch for BallTree

Source§

impl<F> OptimizedSpatialSearch<F> for KdTree<F>

Default implementation of OptimizedSpatialSearch for KdTree