Gram Schmidt Orthonormalizatoin
Orthogonalization and QR decomposition of matrices in the Rust programming language and rust-ndarray
.
This crate provides the following methods:
- Classical Gram Schmidt,
cgs
, - Modified Gram Schmidt,
mgs
, - Classical Gram Schmidt with Reorthogonalization,
cgs2
.
Usage
extern crate gramschmidt;
extern crate ndarray;
// Import openblas_src or another blas source to have the linker find all symbols.
extern crate openblas_src;
Recent versions
0.4.0
: Major rework of the library structure:- The algorithms are now configured via structs, the traits are dropped.
- Provide the structs
ClassicalGramSchmidt
,ModifiedGramSchmidt
, andReorthogonalizedGramSchmidt
(known ascgs
,mgs
, andcgs2
in the literature, respectively); cgs
andcgs2
are implemented usingblas
routines (major speedup!);- All routines are now able to handle column-major (Fortran-) and row-major (C-) order of the input matrices;
- Remove parallel code.
0.3.1
: Update toblas 0.16
and do not specify a default backend (so that the user can set it).0.3.0
: Update tondarray 0.10
,ndarray-parallel 0.5
0.2.1
: Added a parallelized algorithm usingrayon
0.2.0
: Update tondarray 0.9