https://github.com/felipez/eigenvalues
symmetric matrices algorithms to compute eigenvalue/eigenvector pairs
https://github.com/felipez/eigenvalues
algorithms eigenvalues linear-algebra rust
Last synced: 4 months ago
JSON representation
symmetric matrices algorithms to compute eigenvalue/eigenvector pairs
- Host: GitHub
- URL: https://github.com/felipez/eigenvalues
- Owner: felipeZ
- License: apache-2.0
- Created: 2019-09-03T11:27:58.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-03-17T16:15:09.000Z (almost 4 years ago)
- Last Synced: 2025-08-28T08:57:18.326Z (5 months ago)
- Topics: algorithms, eigenvalues, linear-algebra, rust
- Language: Rust
- Homepage:
- Size: 156 KB
- Stars: 43
- Watchers: 3
- Forks: 12
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/felipeZ/eigenvalues/actions)
[](https://opensource.org/licenses/Apache-2.0)
[](https://crates.io/crates/eigenvalues)
[](https://docs.rs/eigenvalues/0.4.0/eigenvalues/)
Eigenvalue Decomposition
========================
This package contains some iterative algorithms for computing the eigenvalues/eigenvectors of a symmetric matrix **H**, implemented in [Rust](https://www.rust-lang.org/).
## Matrix Representation
The library examples represent **H** using the [nalgebra](https://nalgebra.org/) *DMatrix* type, but the matrix **H** does not need to be dense. Sparse or other representations are handled by implementing the `Matrixoperations` trait.
## Available Algorithms:
* **Davidson** using either Diagonal-Preconditioned-Residue (**DPR**) or Generalized Jacobi Davidson (**GJD**). See [Davidson Diagonalization Method](https://www.semanticscholar.org/paper/DAVIDSON-DIAGONALIZATION-METHOD-AND-ITS-APPLICATION-Liao/5811eaf768d1a006f505dfe24f329874a679ba59)
* **Lanczos**, see [Hermitian Lanczos](https://en.wikipedia.org/wiki/Lanczos_algorithm)
### Note:
The Davidson method is suitable for **diagonal-dominant symmetric matrices** that are quite common
in certain scientific problems like [electronic structure calculations](https://en.wikipedia.org/wiki/Electronic_structure). The Davidson method could be not practical
for other kind of symmetric matrices.