toml
[dependencies]
opensrdk-linear-algebra = "0.1.0"
blas-src = { version = "0.6", features = ["openblas"] }
lapack-src = { version = "0.6", features = ["openblas"] }
rs
extern crate opensrdk_linear_algebra;
extern crate blas_src;
extern crate lapack_src;
You can also use accelerate, intel-mkl, or netlib instead. See here.
```rs
mod tests { use crate::prelude::*; #[test] fn itworks() { let a = mat!( 1.0, 0.0; 0.0, 1.0 ); asserteq!(a[0][0], 1.0); asserteq!(a[0][1], 0.0); asserteq!(a[1][0], 0.0); assert_eq!(a[1][1], 1.0);
let b = mat!(
&a, zeros!(2, 2);
zeros!(2, 2), &a
);
assert_eq!(b[0][0], 1.0);
assert_eq!(b[0][1], 0.0);
assert_eq!(b[3][0], 0.0);
assert_eq!(b[3][3], 1.0);
}
} ```
```rs
mod tests { use crate::prelude::*; #[test] fn itworks() { let a = mat!( 1.0, 2.0; 3.0, 4.0 ) * mat!( 5.0, 6.0; 7.0, 8.0 ); asserteq!(a[0][0], 19.0) } } ```