https://github.com/cool-japan/scirs
SciRS2 - Scientific Computing and AI in Rust
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.8%) to scientific vocabulary
Keywords
Repository
SciRS2 - Scientific Computing and AI in Rust
Basic Info
- Host: GitHub
- Owner: cool-japan
- License: other
- Language: Rust
- Default Branch: master
- Homepage: https://github.com/cool-japan/scirs
- Size: 95.5 MB
Statistics
- Stars: 49
- Watchers: 4
- Forks: 7
- Open Issues: 8
- Releases: 7
Topics
Metadata Files
README.md
SciRS2 - Scientific Computing and AI in Rust
SciRS2 is a comprehensive scientific computing and AI/ML infrastructure in Rust, providing SciPy-compatible APIs while leveraging Rust's performance, safety, and concurrency features. The project aims to provide a complete ecosystem for scientific computing, data analysis, and machine learning in Rust.
Features
Scientific Computing
- Linear Algebra: Matrix operations, decompositions, eigensolvers, and specialized matrix types
- Statistics: Distributions, descriptive statistics, tests, and regression models
- Optimization: Unconstrained and constrained optimization, root finding, and least squares
- Integration: Numerical integration, ODE solvers, and boundary value problems
- Interpolation: Linear, spline, and multi-dimensional interpolation
- Special Functions: Mathematical special functions including Bessel, gamma, and elliptic functions
- Signal Processing: FFT, wavelet transforms, filtering, and spectral analysis
- Sparse Matrices: Multiple sparse matrix formats and operations
- Spatial Algorithms: Distance calculations, KD-trees, and spatial data structures
Advanced Features
- N-dimensional Image Processing: Filtering, feature detection, and segmentation
- Clustering: K-means, hierarchical, and density-based clustering
- I/O Utilities: Scientific data format reading and writing
- Sample Datasets: Data generation and loading tools
AI and Machine Learning
- Automatic Differentiation: Reverse-mode and forward-mode autodiff engine
- Neural Networks: Layers, optimizers, and model architectures
- Graph Processing: Graph algorithms and data structures
- Data Transformation: Feature engineering and normalization
- Metrics: Evaluation metrics for ML models
- Text Processing: Tokenization and text analysis tools
- Computer Vision: Image processing and feature detection
- Time Series: Analysis and forecasting tools
Performance and Safety
- Memory Management: Efficient handling of large datasets
- GPU Acceleration: CUDA and hardware-agnostic backends for computation
- Parallelization: Multi-core processing for compute-intensive operations
- Safety: Memory safety and thread safety through Rust's ownership model
- Type Safety: Strong typing and compile-time checks
- Error Handling: Comprehensive error system with context
Project Scale
This project now contains over 1.5 million lines of code and runs over 6,500 tests across all modules, demonstrating the comprehensive nature of the SciRS2 ecosystem.
Project Goals
- Create a comprehensive scientific computing and machine learning library in Rust
- Maintain API compatibility with SciPy where reasonable
- Provide specialized tools for AI and machine learning development
- Leverage Rust's performance, safety, and concurrency features
- Build a sustainable open-source ecosystem for scientific and AI computing in Rust
- Offer performance similar to or better than Python-based solutions
- Provide a smooth migration path for SciPy users
Project Structure
SciRS2 adopts a modular architecture with separate crates for different functional areas, using Rust's workspace feature to manage them:
``` /
Core Scientific Computing Modules
├── Cargo.toml # Workspace configuration ├── scirs2-core/ # Core utilities and common functionality ├── scirs2-autograd/ # Automatic differentiation engine ├── scirs2-linalg/ # Linear algebra module ├── scirs2-integrate/ # Numerical integration ├── scirs2-interpolate/ # Interpolation algorithms ├── scirs2-optimize/ # Optimization algorithms ├── scirs2-fft/ # Fast Fourier Transform ├── scirs2-stats/ # Statistical functions ├── scirs2-special/ # Special mathematical functions ├── scirs2-signal/ # Signal processing ├── scirs2-sparse/ # Sparse matrix operations ├── scirs2-spatial/ # Spatial algorithms
Advanced Modules
├── scirs2-cluster/ # Clustering algorithms ├── scirs2-ndimage/ # N-dimensional image processing ├── scirs2-io/ # Input/output utilities ├── scirs2-datasets/ # Sample datasets and loaders
AI/ML Modules
├── scirs2-neural/ # Neural network building blocks ├── scirs2-optim/ # ML-specific optimization algorithms ├── scirs2-graph/ # Graph processing algorithms ├── scirs2-transform/ # Data transformation utilities ├── scirs2-metrics/ # ML evaluation metrics ├── scirs2-text/ # Text processing utilities ├── scirs2-vision/ # Computer vision operations ├── scirs2-series/ # Time series analysis
Main Integration Crate
└── scirs2/ # Main integration crate ├── Cargo.toml └── src/ └── lib.rs # Re-exports from all other crates ```
Architectural Benefits
This modular architecture offers several advantages: - Flexible Dependencies: Users can select only the features they need - Independent Development: Each module can be developed and tested separately - Clear Separation: Each module focuses on a specific functional area - No Circular Dependencies: Clear hierarchy prevents circular dependencies - AI/ML Focus: Specialized modules for machine learning and AI workloads - Feature Flags: Granular control over enabled functionality - Memory Efficiency: Import only what you need to reduce overhead
Advanced Core Features
The core module (scirs2-core) provides several advanced features that are leveraged across the ecosystem:
GPU Acceleration
```rust use scirs2_core::gpu::{GpuContext, GpuBackend, GpuBuffer};
// Create a GPU context with the default backend let ctx = GpuContext::new(GpuBackend::default())?;
// Allocate memory on the GPU
let mut buffer = ctx.create_buffer::
// Execute a computation ctx.execute(|compiler| { let kernel = compiler.compile(kernelcode)?; kernel.setbuffer(0, &mut buffer); kernel.dispatch([1024, 1, 1]); Ok(()) })?; ```
Memory Management
```rust use scirs2_core::memory::{ChunkProcessor2D, BufferPool, ZeroCopyView};
// Process large arrays in chunks let mut processor = ChunkProcessor2D::new(&largearray, (1000, 1000)); processor.processchunks(|chunk, coords| { // Process each chunk... });
// Reuse memory with buffer pools
let mut pool = BufferPool::
Memory Metrics and Profiling
```rust use scirs2core::memory::metrics::{trackallocation, generatememoryreport}; use scirs2_core::profiling::{Profiler, Timer};
// Track memory allocations track_allocation("MyComponent", 1024, 0x1000);
// Time a block of code let timer = Timer::start("matrix_multiply"); // Do work... timer.stop();
// Print profiling report Profiler::global().lock().unwrap().print_report(); ```
Module Documentation
Each module has its own README with detailed documentation and is available on crates.io:
Main Integration Crate
- scirs2: Main integration crate
Core Modules
- scirs2-core: Core utilities and common functionality
- scirs2-linalg: Linear algebra module
- scirs2-autograd: Automatic differentiation engine
- scirs2-integrate: Numerical integration
- scirs2-interpolate: Interpolation algorithms
- scirs2-optimize: Optimization algorithms
- scirs2-fft: Fast Fourier Transform
- scirs2-stats: Statistical functions
- scirs2-special: Special mathematical functions
- scirs2-signal: Signal processing
- scirs2-sparse: Sparse matrix operations
- scirs2-spatial: Spatial algorithms
Advanced Modules
- scirs2-cluster: Clustering algorithms
- scirs2-ndimage: N-dimensional image processing
- scirs2-io: Input/output utilities
- scirs2-datasets: Sample datasets and loaders
AI/ML Modules
- scirs2-neural: Neural network building blocks
- scirs2-optim: ML-specific optimization algorithms
- scirs2-graph: Graph processing algorithms
- scirs2-transform: Data transformation utilities
- scirs2-metrics: ML evaluation metrics
- scirs2-text: Text processing utilities
- scirs2-vision: Computer vision operations
- scirs2-series: Time series analysis
Implementation Strategy
We follow a phased approach:
- Core functionality analysis: Identify key features and APIs of each SciPy module
- Prioritization: Begin with highest-demand modules (linalg, stats, optimize)
- Interface design: Balance Rust idioms with SciPy compatibility
- Scientific computing foundation: Implement core scientific computing modules first
- Advanced modules: Implement specialized modules for advanced scientific computing
- AI/ML infrastructure: Develop specialized tools for AI and machine learning
- Integration and optimization: Ensure all modules work together efficiently
- Ecosystem development: Create tooling, documentation, and community resources
Core Module Usage Policy
All modules in the SciRS2 ecosystem are expected to leverage functionality from scirs2-core:
- Validation: Use
scirs2-core::validationfor parameter checking - Error Handling: Base module-specific errors on
scirs2-core::error::CoreError - Numeric Operations: Use
scirs2-core::numericfor generic numeric functions - Optimization: Use core-provided performance optimizations:
- SIMD operations via
scirs2-core::simd - Parallelism via
scirs2-core::parallel - Memory management via
scirs2-core::memory - Caching via
scirs2-core::cache
- SIMD operations via
Dependency Management
SciRS2 uses workspace inheritance for consistent dependency versioning:
- All shared dependencies are defined in the root
Cargo.toml - Module crates reference dependencies with
workspace = true - Feature-gated dependencies use
workspace = truewithoptional = true
```toml
In workspace root Cargo.toml
[workspace.dependencies] ndarray = { version = "0.16.1", features = ["serde", "rayon"] } num-complex = "0.4.3" rayon = "1.7.0"
In module Cargo.toml
[dependencies] ndarray = { workspace = true } num-complex = { workspace = true } rayon = { workspace = true, optional = true }
[features] parallel = ["rayon"] ```
Core Dependencies
SciRS2 leverages the Rust ecosystem:
Core Dependencies
ndarray: Multidimensional array operationsnum: Numeric abstractionsrayon: Parallel processingrustfft: Fast Fourier transformsndarray-linalg: Linear algebra computationsargmin: Optimization algorithmsrandandrand_distr: Random number generation and distributions
AI/ML Dependencies
tch-rs: Bindings to the PyTorch C++ APIburn: Pure Rust neural network frameworktokenizers: Fast tokenization utilitiesimage: Image processing utilitiespetgraph: Graph algorithms and data structures
Installation and Usage
SciRS2 and all its modules are available on crates.io. You can add them to your project using Cargo:
```toml
Add the main integration crate for all functionality
[dependencies] scirs2 = "0.1.0-alpha.6" ```
Or include only the specific modules you need:
```toml [dependencies]
Core utilities
scirs2-core = "0.1.0-alpha.6"
Scientific computing modules
scirs2-linalg = "0.1.0-alpha.6" scirs2-stats = "0.1.0-alpha.6" scirs2-optimize = "0.1.0-alpha.6"
AI/ML modules
scirs2-neural = "0.1.0-alpha.6" scirs2-autograd = "0.1.0-alpha.6" ```
Example Usage
Basic Scientific Computing
```rust // Using the main integration crate use scirs2::prelude::*; use ndarray::Array2;
fn main() -> Result<(), Box
// Perform matrix operations
let (u, s, vt) = scirs2::linalg::decomposition::svd(&a)?;
println!("Singular values: {:.4?}", s);
// Compute the condition number
let cond = scirs2::linalg::basic::condition(&a, None)?;
println!("Condition number: {:.4}", cond);
// Generate random samples from a distribution
let normal = scirs2::stats::distributions::normal::Normal::new(0.0, 1.0)?;
let samples = normal.random_sample(5, None)?;
println!("Random samples: {:.4?}", samples);
Ok(())
} ```
Neural Network Example
```rust use scirs2neural::layers::{Dense, Layer}; use scirs2neural::activations::{ReLU, Sigmoid}; use scirs2neural::models::sequential::Sequential; use scirs2neural::losses::mse::MSE; use scirs2_neural::optimizers::sgd::SGD; use ndarray::{Array, Array2};
fn main() -> Result<(), Box
// Add layers
model.add(Dense::new(2, 8)?);
model.add(ReLU::new());
model.add(Dense::new(8, 4)?);
model.add(ReLU::new());
model.add(Dense::new(4, 1)?);
model.add(Sigmoid::new());
// Compile the model
let loss = MSE::new();
let optimizer = SGD::new(0.01);
model.compile(loss, optimizer);
// Create dummy data
let x = Array2::from_shape_vec((4, 2), vec![
0.0, 0.0,
0.0, 1.0,
1.0, 0.0,
1.0, 1.0
])?;
let y = Array2::from_shape_vec((4, 1), vec![
0.0,
1.0,
1.0,
0.0
])?;
// Train the model
model.fit(&x, &y, 1000, Some(32), Some(true));
// Make predictions
let predictions = model.predict(&x);
println!("Predictions: {:.4?}", predictions);
Ok(())
} ```
GPU-Accelerated Example
```rust use scirs2core::gpu::{GpuContext, GpuBackend}; use scirs2linalg::batch::matrixmultiplygpu; use ndarray::Array3;
fn main() -> Result<(), Box
// Create batch of matrices (batch_size x m x n)
let a_batch = Array3::<f32>::ones((64, 128, 256));
let b_batch = Array3::<f32>::ones((64, 256, 64));
// Perform batch matrix multiplication on GPU
let result = matrix_multiply_gpu(&ctx, &a_batch, &b_batch)?;
println!("Batch matrix multiply result shape: {:?}", result.shape());
Ok(())
} ```
Current Status
Stable Modules
The following SciRS2 modules are considered stable with well-tested core functionality:
Core Scientific Computing Modules
- Linear Algebra Module (
scirs2-linalg): Basic matrix operations, decompositions, eigenvalue problems - Statistics Module (
scirs2-stats): Descriptive statistics, distributions, statistical tests, regression - Optimization Module (
scirs2-optimize): Unconstrained & constrained optimization, least squares, root finding - Integration Module (
scirs2-integrate): Numerical integration, ODE solvers - Interpolation Module (
scirs2-interpolate): 1D & ND interpolation, splines - Signal Processing (
scirs2-signal): Filtering, convolution, spectral analysis, wavelets - FFT Module (
scirs2-fft): FFT, inverse FFT, real FFT, DCT, DST, Hermitian FFT - Sparse Matrix (
scirs2-sparse): CSR, CSC, COO, BSR, DIA, DOK, LIL formats and operations - Special Functions (
scirs2-special): Gamma, Bessel, elliptic, orthogonal polynomials - Spatial Algorithms (
scirs2-spatial): KD-trees, distance calculations, convex hull, Voronoi diagrams - Clustering (
scirs2-cluster): K-means, hierarchical clustering, DBSCAN - Data Transformation (
scirs2-transform): Feature engineering, normalization - Evaluation Metrics (
scirs2-metrics): Classification, regression metrics
Preview Modules
The following modules are in preview state and may undergo API changes:
Advanced Modules
- N-dimensional Image Processing (
scirs2-ndimage): Filtering, morphology, measurements - I/O utilities (
scirs2-io): MATLAB, WAV, ARFF file formats, CSV - Datasets (
scirs2-datasets): Sample datasets and loaders
AI/ML Modules
- Automatic Differentiation (
scirs2-autograd): Tensor ops, neural network primitives - Neural Networks (
scirs2-neural): Layers, activations, loss functions - ML Optimization (
scirs2-optim): Optimizers, schedulers, regularization - Graph Processing (
scirs2-graph): Graph algorithms and data structures - Text Processing (
scirs2-text): Tokenization, vectorization, word embeddings - Computer Vision (
scirs2-vision): Image processing, feature detection - Time Series Analysis (
scirs2-series): Decomposition, forecasting
Advanced Core Features Implemented
- GPU Acceleration with backend abstraction layer (CUDA, WebGPU, Metal)
- Memory Management for large-scale computations
- Logging and Diagnostics with progress tracking
- Profiling with timing and memory tracking
- Memory Metrics for detailed memory usage analysis
- Optimized SIMD Operations for performance-critical code
Key Capabilities
SciRS2 provides: - Advanced Error Handling: Comprehensive error framework with recovery strategies, async support, and diagnostics engine - Computer Vision Registration: Rigid, affine, homography, and non-rigid registration algorithms with RANSAC robustness - Performance Benchmarking: Automated benchmarking framework with SciPy comparison and optimization tools - Numerical Precision: High-precision eigenvalue solvers and optimized numerical algorithms
Installation
All SciRS2 modules are available on crates.io. Add the modules you need to your Cargo.toml:
```toml [dependencies] scirs2 = "0.1.0-alpha.6" # Core library with all modules
Or individual modules:
scirs2-linalg = "0.1.0-alpha.6" # Linear algebra scirs2-stats = "0.1.0-alpha.6" # Statistics
... and more
```
For development roadmap and contribution guidelines, see TODO.md and CONTRIBUTING.md.
Performance Characteristics
SciRS2 prioritizes performance through several strategies:
- SIMD Vectorization: CPU vector instructions for numerical operations
- Cache Efficiency: Algorithms designed for modern CPU cache hierarchies
- GPU Acceleration: Hardware acceleration for compute-intensive operations
- Memory Management: Efficient allocation strategies for large datasets
- Parallelism: Multi-core utilization via Rayon
- Zero-cost Abstractions: Rust's compiler optimizations eliminate runtime overhead
Initial benchmarks on core operations show performance comparable to or exceeding NumPy/SciPy:
| Operation | SciRS2 (ms) | NumPy/SciPy (ms) | Speedup | |-----------|-------------|------------------|---------| | Matrix multiplication (1000×1000) | 18.5 | 23.2 | 1.25× | | SVD decomposition (500×500) | 112.3 | 128.7 | 1.15× | | FFT (1M points) | 8.7 | 11.5 | 1.32× | | Normal distribution sampling (10M) | 42.1 | 67.9 | 1.61× | | K-means clustering (100K points) | 321.5 | 378.2 | 1.18× |
Note: Performance may vary based on hardware, compiler optimization, and specific workloads.
Contributing
Contributions are welcome! Please see our CONTRIBUTING.md for guidelines.
Areas Where We Need Help
- Core Algorithm Implementation: Implementing remaining algorithms from SciPy
- Performance Optimization: Improving performance of existing implementations
- Documentation: Writing examples, tutorials, and API documentation
- Testing: Expanding test coverage and creating property-based tests
- Integration with Other Ecosystems: Python bindings, WebAssembly support
- Domain-Specific Extensions: Financial algorithms, geospatial tools, etc.
See our TODO.md for specific tasks and project roadmap.
License
This project is dual-licensed under:
You can choose to use either license. See the LICENSE file for details.
Acknowledgments
SciRS2 builds on the shoulders of giants: - The SciPy and NumPy communities for their pioneering work - The Rust ecosystem and its contributors - The numerous mathematical and scientific libraries that inspired this project
Future Directions
- Extended Hardware Support: ARM, RISC-V, mobile, embedded
- Cloud Deployment: Container optimization, serverless function support
- Domain-Specific Extensions: Finance, bioinformatics, physics
- Ecosystem Integration: Python and Julia interoperability
- Performance Monitoring: Runtime analyzers, configuration optimizers
- Automated Architecture Selection: Hardware-aware algorithm choices
For more detailed information on development status and roadmap, check the TODO.md file.
Owner
- Name: KitaSan
- Login: cool-japan
- Kind: user
- Repositories: 23
- Profile: https://github.com/cool-japan
KitaSan
GitHub Events
Total
- Create event: 52
- Issues event: 10
- Release event: 6
- Watch event: 40
- Delete event: 40
- Issue comment event: 42
- Public event: 1
- Push event: 290
- Pull request review comment event: 2
- Gollum event: 1
- Pull request event: 58
- Fork event: 5
Last Year
- Create event: 52
- Issues event: 10
- Release event: 6
- Watch event: 40
- Delete event: 40
- Issue comment event: 42
- Public event: 1
- Push event: 290
- Pull request review comment event: 2
- Gollum event: 1
- Pull request event: 58
- Fork event: 5
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 9
- Total pull requests: 66
- Average time to close issues: 3 days
- Average time to close pull requests: 6 days
- Total issue authors: 7
- Total pull request authors: 5
- Average comments per issue: 1.78
- Average comments per pull request: 0.7
- Merged pull requests: 21
- Bot issues: 1
- Bot pull requests: 41
Past Year
- Issues: 9
- Pull requests: 66
- Average time to close issues: 3 days
- Average time to close pull requests: 6 days
- Issue authors: 7
- Pull request authors: 5
- Average comments per issue: 1.78
- Average comments per pull request: 0.7
- Merged pull requests: 21
- Bot issues: 1
- Bot pull requests: 41
Top Authors
Issue Authors
- Xyhlon (2)
- lmmx (2)
- ZAZPRO (1)
- Attoatom (1)
- TheWaWaR (1)
- fdecode (1)
Pull Request Authors
- dependabot[bot] (40)
- cool-japan (15)
- lmmx (7)
- Xyhlon (2)
- tiagomrns (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 25
-
Total downloads:
- cargo 74,860 total
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 150
- Total maintainers: 1
crates.io: scirs2-interpolate
Interpolation module for SciRS2
- Documentation: https://docs.rs/scirs2-interpolate/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2
A Rust port of SciPy with AI/ML extensions - Scientific Computing and AI Library
- Documentation: https://docs.rs/scirs2/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-series
Time series analysis module for SciRS2
- Documentation: https://docs.rs/scirs2-series/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-metrics
Machine Learning evaluation metrics module for SciRS2
- Documentation: https://docs.rs/scirs2-metrics/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-graph
Graph processing module for SciRS2
- Documentation: https://docs.rs/scirs2-graph/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-linalg
Linear algebra module for SciRS2
- Documentation: https://docs.rs/scirs2-linalg/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-optimize
Optimization module for SciRS2
- Documentation: https://docs.rs/scirs2-optimize/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-fft
Fast Fourier Transform module for SciRS2
- Documentation: https://docs.rs/scirs2-fft/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-datasets
Datasets module for SciRS2
- Documentation: https://docs.rs/scirs2-datasets/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-optim
Machine Learning optimization module for SciRS2
- Documentation: https://docs.rs/scirs2-optim/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-integrate
Numerical integration module for SciRS2
- Documentation: https://docs.rs/scirs2-integrate/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-text
Text processing module for SciRS2
- Documentation: https://docs.rs/scirs2-text/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-transform
Data transformation module for SciRS2
- Documentation: https://docs.rs/scirs2-transform/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-io
Input/Output utilities module for SciRS2
- Documentation: https://docs.rs/scirs2-io/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-ndimage
N-dimensional image processing module for SciRS2
- Documentation: https://docs.rs/scirs2-ndimage/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-stats
Statistical functions module for SciRS2
- Documentation: https://docs.rs/scirs2-stats/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-spatial
Spatial algorithms module for SciRS2
- Documentation: https://docs.rs/scirs2-spatial/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-neural
Neural network building blocks module for SciRS2
- Documentation: https://docs.rs/scirs2-neural/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-vision
Computer vision module for SciRS2
- Documentation: https://docs.rs/scirs2-vision/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-signal
Signal processing module for SciRS2
- Documentation: https://docs.rs/scirs2-signal/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-cluster
Clustering algorithms module for SciRS2
- Documentation: https://docs.rs/scirs2-cluster/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-core
Core utilities and common functionality for SciRS2
- Documentation: https://docs.rs/scirs2-core/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-sparse
Sparse matrix module for SciRS2
- Documentation: https://docs.rs/scirs2-sparse/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-special
Special functions module for SciRS2
- Documentation: https://docs.rs/scirs2-special/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
crates.io: scirs2-autograd
Automatic differentiation module for SciRS2
- Documentation: https://docs.rs/scirs2-autograd/
- License: MIT OR Apache-2.0
-
Latest release: 0.1.0-alpha.6
published 8 months ago
Rankings
Maintainers (1)
Dependencies
- Swatinem/rust-cache v2 composite
- actions/checkout v3 composite
- dtolnay/rust-toolchain stable composite
- Swatinem/rust-cache v2 composite
- actions/checkout v3 composite
- dtolnay/rust-toolchain stable composite
- Swatinem/rust-cache v2 composite
- actions/checkout v3 composite
- dtolnay/rust-toolchain stable composite
- peaceiris/actions-gh-pages v3 composite
- release-drafter/release-drafter v5 composite
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- scirs2-autograd 0.1.0-alpha.1
- scirs2-cluster 0.1.0-alpha.1
- scirs2-core 0.1.0-alpha.1
- scirs2-datasets 0.1.0-alpha.1
- scirs2-fft 0.1.0-alpha.1
- scirs2-graph 0.1.0-alpha.1
- scirs2-integrate 0.1.0-alpha.1
- scirs2-interpolate 0.1.0-alpha.1
- scirs2-io 0.1.0-alpha.1
- scirs2-linalg 0.1.0-alpha.1
- scirs2-metrics 0.1.0-alpha.1
- scirs2-ndimage 0.1.0-alpha.1
- scirs2-neural 0.1.0-alpha.1
- scirs2-optim 0.1.0-alpha.1
- scirs2-optimize 0.1.0-alpha.1
- scirs2-series 0.1.0-alpha.1
- scirs2-signal 0.1.0-alpha.1
- scirs2-sparse 0.1.0-alpha.1
- scirs2-spatial 0.1.0-alpha.1
- scirs2-special 0.1.0-alpha.1
- scirs2-stats 0.1.0-alpha.1
- scirs2-text 0.1.0-alpha.1
- scirs2-transform 0.1.0-alpha.1
- scirs2-vision 0.1.0-alpha.1
- thiserror 1.0.69
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- rayon 1.10.0
- rustfft 6.2.0
- scirs2-core 0.1.0-alpha.1
- thiserror 1.0.69
- approx 0.5.1 development
- criterion 0.5.1 development
- libc 0.2
- libm 0.2
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- rand_core 0.9.3
- rand_distr 0.5.1
- scirs2-core 0.1.0-alpha.1
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- scirs2-core 0.1.0-alpha.1
- scirs2-linalg 0.1.0-alpha.1
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- approx 0.5.1
- nalgebra 0.33.2
- ndarray 0.16.1
- ndarray-rand 0.14.0
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- rand_chacha 0.9.0
- rand_distr 0.5.1
- rayon 1.10.0
- scirs2-autograd 0.1.0-alpha.1
- scirs2-core 0.1.0-alpha.1
- thiserror 2.0.12
- wide 0.7.32
- criterion 0.5.1 development
- approx 0.5.1
- cached 0.48.1
- ndarray 0.16.1
- ndarray-rand 0.14.0
- num-traits 0.2.19
- scirs2-core 0.1.0-alpha.1
- scirs2-interpolate 0.1.0-alpha.1
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- argmin 0.10.0
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- scirs2-core 0.1.0-alpha.1
- scirs2-linalg 0.1.0-alpha.1
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- rustfft 6.2.0
- scirs2-core 0.1.0-alpha.1
- scirs2-fft 0.1.0-alpha.1
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- scirs2-core 0.1.0-alpha.1
- sprs 0.11.3
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- num-complex 0.4.6
- num-traits 0.2.19
- thiserror 2.0.12
- approx 0.5.1 development
- criterion 0.5.1 development
- ndarray 0.16.1
- ndarray-linalg 0.16.0
- num-complex 0.4.6
- num-traits 0.2.19
- rand 0.9.0
- rand_distr 0.5.1
- rand_pcg 0.9.0
- scirs2-core 0.1.0-alpha.1
- scirs2-linalg 0.1.0-alpha.1
- statrs 0.16.0
- thiserror 2.0.12