Crate scirs2_spatial

Crate scirs2_spatial 

Source

Re-exports§

pub use error::SpatialError;
pub use error::SpatialResult;
pub use distance::braycurtis;
pub use distance::canberra;
pub use distance::cdist;
pub use distance::chebyshev;
pub use distance::correlation;
pub use distance::cosine;
pub use distance::dice;
pub use distance::euclidean;
pub use distance::is_valid_condensed_distance_matrix;
pub use distance::jaccard;
pub use distance::kulsinski;
pub use distance::mahalanobis;
pub use distance::manhattan;
pub use distance::minkowski;
pub use distance::pdist;
pub use distance::rogerstanimoto;
pub use distance::russellrao;
pub use distance::seuclidean;
pub use distance::sokalmichener;
pub use distance::sokalsneath;
pub use distance::sqeuclidean;
pub use distance::squareform;
pub use distance::squareform_to_condensed;
pub use distance::yule;
pub use distance::ChebyshevDistance;
pub use distance::Distance;
pub use distance::EuclideanDistance;
pub use distance::ManhattanDistance;
pub use distance::MinkowskiDistance;
pub use kdtree::KDTree;
pub use kdtree::Rectangle;
pub use kdtree_optimized::KDTreeOptimized;
pub use kdtree_advanced::AdvancedKDTree;
pub use kdtree_advanced::BoundingBox as KDTreeBoundingBox;
pub use kdtree_advanced::KDTreeConfig;
pub use kdtree_advanced::TreeStatistics;
pub use balltree::BallTree;
pub use delaunay::Delaunay;
pub use voronoi::voronoi;
pub use voronoi::Voronoi;
pub use spherical_voronoi::SphericalVoronoi;
pub use procrustes::procrustes;
pub use procrustes::procrustes_extended;
pub use procrustes::ProcrustesParams;
pub use convex_hull::convex_hull;
pub use convex_hull::ConvexHull;
pub use alphashapes::AlphaShape;
pub use halfspace::Halfspace;
pub use halfspace::HalfspaceIntersection;
pub use boolean_ops::compute_polygon_area;
pub use boolean_ops::is_convex_polygon;
pub use boolean_ops::is_self_intersecting;
pub use boolean_ops::polygon_difference;
pub use boolean_ops::polygon_intersection;
pub use boolean_ops::polygon_symmetric_difference;
pub use boolean_ops::polygon_union;
pub use kriging::KrigingPrediction;
pub use kriging::OrdinaryKriging;
pub use kriging::SimpleKriging;
pub use kriging::VariogramModel;
pub use geospatial::cross_track_distance;
pub use geospatial::destination_point;
pub use geospatial::final_bearing;
pub use geospatial::geographic_to_utm;
pub use geospatial::geographic_to_web_mercator;
pub use geospatial::haversine_distance;
pub use geospatial::initial_bearing;
pub use geospatial::midpoint;
pub use geospatial::normalize_bearing;
pub use geospatial::point_in_spherical_polygon;
pub use geospatial::spherical_polygon_area;
pub use geospatial::vincenty_distance;
pub use geospatial::web_mercator_to_geographic;
pub use geospatial::EARTH_RADIUS_KM;
pub use geospatial::EARTH_RADIUS_M;
pub use set_distance::directed_hausdorff;
pub use set_distance::gromov_hausdorff_distance;
pub use set_distance::hausdorff_distance;
pub use set_distance::wasserstein_distance;
pub use polygon::convex_hull_graham;
pub use polygon::douglas_peucker_simplify;
pub use polygon::is_simple_polygon;
pub use polygon::point_in_polygon;
pub use polygon::point_on_boundary;
pub use polygon::polygon_area;
pub use polygon::polygon_centroid;
pub use polygon::polygon_contains_polygon;
pub use polygon::visvalingam_whyatt_simplify;
pub use rtree::RTree;
pub use rtree::Rectangle as RTreeRectangle;
pub use octree::BoundingBox as OctreeBoundingBox;
pub use octree::Octree;
pub use quadtree::BoundingBox2D;
pub use quadtree::Quadtree;
pub use interpolate::IDWInterpolator;
pub use interpolate::NaturalNeighborInterpolator;
pub use interpolate::RBFInterpolator;
pub use interpolate::RBFKernel;
pub use pathplanning::astar::AStarPlanner;
pub use pathplanning::astar::ContinuousAStarPlanner;
pub use pathplanning::astar::GridAStarPlanner;
pub use pathplanning::astar::Node;
pub use pathplanning::astar::Path;
pub use pathplanning::rrt::RRT2DPlanner;
pub use pathplanning::rrt::RRTConfig;
pub use pathplanning::rrt::RRTPlanner;
pub use collision::shapes::Box2D;
pub use collision::shapes::Box3D;
pub use collision::shapes::Circle;
pub use collision::shapes::LineSegment2D;
pub use collision::shapes::LineSegment3D;
pub use collision::shapes::Sphere;
pub use collision::shapes::Triangle2D;
pub use collision::shapes::Triangle3D;
pub use collision::narrowphase::box2d_box2d_collision;
pub use collision::narrowphase::box3d_box3d_collision;
pub use collision::narrowphase::circle_box2d_collision;
pub use collision::narrowphase::circle_circle_collision;
pub use collision::narrowphase::gjk_box_box_collision;
pub use collision::narrowphase::gjk_collision_detection;
pub use collision::narrowphase::gjk_sphere_box_collision;
pub use collision::narrowphase::gjk_sphere_sphere_collision;
pub use collision::narrowphase::point_box2d_collision;
pub use collision::narrowphase::point_box3d_collision;
pub use collision::narrowphase::point_circle_collision;
pub use collision::narrowphase::point_sphere_collision;
pub use collision::narrowphase::point_triangle2d_collision;
pub use collision::narrowphase::ray_box3d_collision;
pub use collision::narrowphase::ray_sphere_collision;
pub use collision::narrowphase::ray_triangle3d_collision;
pub use collision::narrowphase::sphere_box3d_collision;
pub use collision::narrowphase::sphere_sphere_collision;
pub use collision::narrowphase::GJKShape;
pub use collision::continuous::continuous_sphere_sphere_collision;
pub use spatial_stats::clark_evans_index;
pub use spatial_stats::distance_weights_matrix;
pub use spatial_stats::gearys_c;
pub use spatial_stats::getis_ord_gi;
pub use spatial_stats::local_morans_i;
pub use spatial_stats::morans_i;
pub use simd_distance::parallel_cdist;
pub use simd_distance::parallel_pdist;
pub use simd_distance::simd_euclidean_distance;
pub use simd_distance::simd_euclidean_distance_batch;
pub use simd_distance::simd_manhattan_distance;
pub use simd_distance::SimdMetric;
pub use simd_distance::advanced_simd_clustering::AdvancedSimdKMeans;
pub use simd_distance::advanced_simd_clustering::AdvancedSimdNearestNeighbors;
pub use simd_distance::bench::benchmark_distance_computation;
pub use simd_distance::bench::report_simd_features;
pub use simd_distance::bench::BenchmarkResults;
pub use simd_distance::mixed_precision_simd::simd_euclidean_distance_batch_f32;
pub use simd_distance::mixed_precision_simd::simd_euclidean_distance_f32;
pub use memory_pool::global_clustering_arena;
pub use memory_pool::global_distance_pool;
pub use memory_pool::ArenaStatistics;
pub use memory_pool::ClusteringArena;
pub use memory_pool::DistanceBuffer;
pub use memory_pool::DistancePool;
pub use memory_pool::IndexBuffer;
pub use memory_pool::MatrixBuffer;
pub use memory_pool::MemoryPoolConfig;
pub use memory_pool::PoolStatistics;
pub use gpu_accel::get_gpu_capabilities;
pub use gpu_accel::global_gpu_device;
pub use gpu_accel::is_gpu_acceleration_available;
pub use gpu_accel::report_gpu_status;
pub use gpu_accel::GpuCapabilities;
pub use gpu_accel::GpuDevice;
pub use gpu_accel::GpuDistanceMatrix;
pub use gpu_accel::GpuKMeans;
pub use gpu_accel::GpuNearestNeighbors;
pub use gpu_accel::HybridProcessor;
pub use gpu_accel::ProcessingStrategy;
pub use advanced_parallel::get_numa_topology;
pub use advanced_parallel::initialize_global_pool;
pub use advanced_parallel::report_advanced_parallel_capabilities;
pub use advanced_parallel::AdvancedParallelDistanceMatrix;
pub use advanced_parallel::AdvancedParallelKMeans;
pub use advanced_parallel::MemoryStrategy;
pub use advanced_parallel::NumaTopology;
pub use advanced_parallel::PoolStatistics as AdvancedPoolStatistics;
pub use advanced_parallel::ThreadAffinityStrategy;
pub use advanced_parallel::WorkStealingConfig;
pub use advanced_parallel::WorkStealingPool;
pub use quantum_inspired::algorithms::QuantumSpatialOptimizer;
pub use quantum_inspired::ErrorCorrectionConfig;
pub use quantum_inspired::ErrorCorrectionType;
pub use quantum_inspired::OptimizationConfig;
pub use quantum_inspired::OptimizerType;
pub use quantum_inspired::PerformanceMetrics;
pub use quantum_inspired::QuantumAmplitude;
pub use quantum_inspired::QuantumClusterer;
pub use quantum_inspired::QuantumConfig;
pub use quantum_inspired::QuantumNearestNeighbor;
pub use quantum_inspired::QuantumSpatialFramework;
pub use quantum_inspired::QuantumState;
pub use neuromorphic::AdaptiveSpikingNeuron;
pub use neuromorphic::CompetitiveNeuralClusterer;
pub use neuromorphic::HomeostaticNeuralClusterer;
pub use neuromorphic::HomeostaticSynapse;
pub use neuromorphic::MetaplasticSynapse;
pub use neuromorphic::NetworkStats;
pub use neuromorphic::NeuromorphicCapability;
pub use neuromorphic::NeuromorphicConfig;
pub use neuromorphic::NeuromorphicFactory;
pub use neuromorphic::NeuromorphicProcessor;
pub use neuromorphic::SpikeEvent;
pub use neuromorphic::SpikeSequence;
pub use neuromorphic::SpikingNeuralClusterer;
pub use neuromorphic::SpikingNeuron;
pub use neuromorphic::Synapse;
pub use tensor_cores::detect_tensor_core_capabilities;
pub use tensor_cores::GpuArchitecture;
pub use tensor_cores::PrecisionMode;
pub use tensor_cores::TensorCoreCapabilities;
pub use tensor_cores::TensorCoreClustering;
pub use tensor_cores::TensorCoreDistanceMatrix;
pub use tensor_cores::TensorCoreType;
pub use tensor_cores::TensorLayout;
pub use ml_optimization::ActivationFunction;
pub use ml_optimization::ClusteringParameters;
pub use ml_optimization::ClusteringResult;
pub use ml_optimization::DataState;
pub use ml_optimization::DistanceMetric;
pub use ml_optimization::Experience;
pub use ml_optimization::NeuralSpatialOptimizer;
pub use ml_optimization::ReinforcementLearningSelector;
pub use ml_optimization::SpatialAlgorithm;
pub use distributed::ClusterStatistics;
pub use distributed::DataPartition;
pub use distributed::DistributedMessage;
pub use distributed::DistributedSpatialCluster;
pub use distributed::LoadBalancer;
pub use distributed::LoadMetrics;
pub use distributed::NodeConfig;
pub use distributed::NodeStatus;
pub use distributed::QueryResults;
pub use distributed::QueryType;
pub use distributed::SpatialBounds;
pub use adaptive_selection::ActualPerformance;
pub use adaptive_selection::AdaptiveAlgorithmSelector;
pub use adaptive_selection::AlgorithmParameters;
pub use adaptive_selection::AlgorithmSelection;
pub use adaptive_selection::DataCharacteristics;
pub use adaptive_selection::ExecutionResult;
pub use adaptive_selection::PerformancePrediction;
pub use adaptive_selection::SelectedAlgorithm;
pub use adaptive_selection::SelectionContext;
pub use quantum_classical_hybrid::HybridClusterer;
pub use quantum_classical_hybrid::HybridClusteringMetrics;
pub use quantum_classical_hybrid::HybridOptimizationResult;
pub use quantum_classical_hybrid::HybridPerformanceMetrics;
pub use quantum_classical_hybrid::HybridSpatialOptimizer;
pub use quantum_classical_hybrid::OptimizationStepResult;
pub use neuromorphic_quantum_fusion::FusionMetrics;
pub use neuromorphic_quantum_fusion::NeuralQuantumOptimizationResult;
pub use neuromorphic_quantum_fusion::NeuralQuantumOptimizer;
pub use neuromorphic_quantum_fusion::QuantumSpikeEvent;
pub use neuromorphic_quantum_fusion::QuantumSpikePattern;
pub use neuromorphic_quantum_fusion::QuantumSpikingClusterer;
pub use neuromorphic_quantum_fusion::QuantumSpikingNeuron;
pub use next_gen_gpu_architecture::NextGenGpuArchitecture;
pub use next_gen_gpu_architecture::NextGenPerformanceMetrics;
pub use next_gen_gpu_architecture::PhotonicAccelerator;
pub use next_gen_gpu_architecture::PhotonicProcessingUnit;
pub use next_gen_gpu_architecture::QuantumGpuProcessor;
pub use next_gen_gpu_architecture::QuantumProcessingUnit;
pub use generic_traits::ChebyshevMetric;
pub use generic_traits::EuclideanMetric;
pub use generic_traits::ManhattanMetric;
pub use generic_traits::Point;
pub use generic_traits::SpatialArray;
pub use generic_traits::SpatialPoint;
pub use generic_traits::SpatialScalar;
pub use generic_algorithms::DBSCANResult;
pub use generic_algorithms::GMMResult;
pub use generic_algorithms::GenericConvexHull;
pub use generic_algorithms::GenericDBSCAN;
pub use generic_algorithms::GenericDistanceMatrix;
pub use generic_algorithms::GenericGMM;
pub use generic_algorithms::GenericKDTree;
pub use generic_algorithms::GenericKMeans;
pub use generic_algorithms::KMeansResult;
pub use ai_driven_optimization::AIAlgorithmSelector;
pub use ai_driven_optimization::AdaptationRecord;
pub use ai_driven_optimization::AlgorithmCandidate;
pub use ai_driven_optimization::AlgorithmKnowledgeBase;
pub use ai_driven_optimization::AlgorithmMetadata;
pub use ai_driven_optimization::ComplexityModel;
pub use ai_driven_optimization::MetaLearningModel;
pub use ai_driven_optimization::MetaLearningOptimizer;
pub use ai_driven_optimization::MetaOptimizationResult;
pub use ai_driven_optimization::PerformanceModel;
pub use ai_driven_optimization::PerformanceRecord;
pub use ai_driven_optimization::PredictionNetworks;
pub use ai_driven_optimization::ReinforcementLearningAgent;
pub use ai_driven_optimization::TaskMetadata;
pub use extreme_performance_optimization::benchmark_extreme_optimizations;
pub use extreme_performance_optimization::create_ultimate_optimizer;
pub use extreme_performance_optimization::AdvancedfastDistanceMatrix;
pub use extreme_performance_optimization::CacheHierarchyInfo;
pub use extreme_performance_optimization::CacheObliviousSpatialAlgorithms;
pub use extreme_performance_optimization::ExtremeMemoryAllocator;
pub use extreme_performance_optimization::ExtremeOptimizer;
pub use extreme_performance_optimization::ExtremePerformanceMetrics;
pub use extreme_performance_optimization::HardwarePerformanceCounters;
pub use extreme_performance_optimization::JitCompiler;
pub use extreme_performance_optimization::LockFreeSpatialStructures;
pub use extreme_performance_optimization::NumaTopologyInfo;
pub use extreme_performance_optimization::OptimizationRecord;
pub use extreme_performance_optimization::SelfOptimizingAlgorithm;

Modules§

adaptive_selection
Real-time adaptive algorithm selection system
advanced_parallel
Advanced-parallel algorithms with work-stealing and NUMA-aware optimizations
ai_driven_optimization
AI-Driven Algorithm Selection and Optimization (Advanced Mode)
alphashapes
Alpha shapes implementation for spatial analysis
balltree
Ball tree for efficient nearest neighbor searches
boolean_ops
Boolean operations for polygons and polyhedra
collision
Collision detection algorithms for various geometric primitives
convex_hull
Convex hull algorithms and utilities
delaunay
Delaunay triangulation algorithms
distance
Distance metrics for spatial data
distributed
Distributed spatial computing framework
error
Error types for the SciRS2 spatial module
extreme_performance_optimization
Extreme Performance Optimization (Advanced Mode)
generic_algorithms
Generic implementations of spatial algorithms
generic_traits
Generic traits and type parameters for spatial algorithms
geospatial
Geospatial functionality for working with geographic coordinates
gpu_accel
GPU acceleration for spatial algorithms
halfspace
Halfspace intersection and convex polytope construction
interpolate
Spatial interpolation methods
kdtree
KD-Tree for efficient nearest neighbor searches
kdtree_advanced
Advanced-optimized KD-Tree implementations with advanced performance features
kdtree_optimized
KD-Tree optimizations for common spatial operations
kriging
Kriging interpolation methods
memory_pool
Advanced-optimized memory pool system for spatial algorithms
ml_optimization
Machine learning-based spatial optimization
neuromorphic
Neuromorphic Computing for Spatial Data Processing
neuromorphic_quantum_fusion
Neuromorphic-Quantum Fusion Algorithms (Advanced Mode)
next_gen_gpu_architecture
Next-Generation GPU Architecture Support (Advanced Mode)
octree
Octree data structure for 3D space
pathplanning
Path planning algorithms
polygon
Polygon operations module
procrustes
Procrustes analysis
quadtree
Quadtree data structure for 2D space
quantum_classical_hybrid
Quantum-Classical Hybrid Spatial Algorithms (Advanced Mode)
quantum_inspired
Quantum-Inspired Spatial Algorithms
rtree
R-tree implementation for efficient spatial indexing
set_distance
Set-based distance metrics
simd_distance
SIMD-accelerated distance calculations for spatial operations
spatial_stats
Spatial statistics module for analyzing spatial patterns and relationships
spherical_voronoi
SphericalVoronoi Implementation
tensor_cores
Advanced GPU Tensor Core utilization for spatial algorithms
transform
voronoi
Voronoi diagrams