7 releases (breaking)
0.6.1 | Aug 31, 2024 |
---|---|
0.6.0 | Aug 3, 2024 |
0.5.0 | Dec 2, 2023 |
0.4.0 | Nov 3, 2022 |
0.1.0 | Aug 24, 2021 |
#286 in Math
250KB
5.5K
SLoC
Multidimensional array for Rust
Overview
The mdarray crate provides a multidimensional array for Rust. Its main target is for numeric types, however generic types are supported as well. The purpose is to provide a generic container type that is simple and flexible to use, with interworking to other crates for e.g. BLAS/LAPACK functionality.
Here are the main features of mdarray:
- Dense array type, where the rank is known at compile time.
- Static or dynamic array dimensions, with optional stack allocation.
- Standard Rust mechanisms are used for e.g. indexing and iteration.
- Generic expressions for multidimensional iteration.
The design is inspired from other Rust crates (ndarray, nalgebra, bitvec and dfdx), the proposed C++ mdarray and mdspan types, and multidimensional arrays in other languages.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~165KB