The package provides wrappers for LAPACKE (C).
use lapacke::*; let n = 3; let mut a = vec![ 3.0, 1.0, 1.0, 1.0, 3.0, 1.0, 1.0, 1.0, 3.0, ]; let mut w = vec![0.0; n as usize]; let info; unsafe { info = dsyev(Layout::ColumnMajor, b'V', b'U', n, &mut a, n, &mut w); } assert!(info == 0); for (one, another) in w.iter().zip(&[2.0, 2.0, 5.0]) { assert!((one - another).abs() < 1e-14); }
The code is generated via a Python script based on the content the lapacke-sys
submodule. To re-generate, run the following commands:
./bin/generate.py > src/lapacke-sys.rs rustfmt src/lapacke-sys.rs
Your contribution is highly appreciated. Do not hesitate to open an issue or a pull request. Note that any contribution submitted for inclusion in the project will be licensed according to the terms given in LICENSE.md.