mathru is a numeric library containing algorithms for linear algebra, analysis and statistics written in pure Rust with BLAS/LAPACK support.
- Linear algebra
- Vector
- Matrix
- Basic matrix operations(+,-,*)
- Transposition
- LU decomposition (native/lapack)
- QR decomposition (native/lapack)
- Hessenberg decomposition (native/lapack)
- Singular value decomposition
- Inverse matrix (native/lapack)
- Determinant (native/lapack)
- Trace
- Eigenvalue (native/lapack)
- Ordinary differential equation (ODE)
- Heun's method
- Runge-Kutta 4th order
- Euler
- Statistics
- probability distribution
- normal
- gamma
- binomial
- poisson
- exponential
- chi squared
- beta
- bernoulli
- elementary functions
- trigonometric functions
- hyperbolic functions
- exponential functions
- special functions
- gamma functions
- beta functions
Add this to your Cargo.toml
for the native Rust implementation:
toml
[dependencies.mathru]
version = "0.1"
Add the following lines to 'Cargo.toml' if the blas/lapack backend should be used:
toml
[dependencies.mathru]
version = "0.1"
default-features = false
features = ["blaslapack"]
Then import the modules and it is ready to be used:
``` rust use mathru::algebra::linear::{Matrix};
// Compute the LU decomposition of a 2x2 matrix
let a: Matrix
let (l, u, p): (Matrix
asserteq!(lref, l); ```
Any contribution is welcome!