|
TRIQS/nda 1.3.0
Multi-dimensional array library for C++
|
#include "./utils.hpp"#include "../basic_array.hpp"#include "../blas/tools.hpp"#include "../concepts.hpp"#include "../declarations.hpp"#include "../exceptions.hpp"#include "../lapack/geev.hpp"#include "../layout/policies.hpp"#include "../macros.hpp"#include "../matrix_functions.hpp"#include "../mem/address_space.hpp"#include "../traits.hpp"#include <array>#include <cmath>#include <complex>#include <concepts>#include <tuple>#include <type_traits>#include <utility>Provides functions to solve eigenvalue problems for general (non-symmetric) matrices.
Definition in file eig.hpp.
Go to the source code of this file.
Functions | |
| template<Matrix A> requires (nda::mem::have_host_compatible_addr_space<A> and is_blas_lapack_v<get_value_t<A>>) | |
| auto | nda::linalg::eig (A const &a) |
| Compute the eigenvalues and right eigenvectors of a general matrix. | |
| template<MemoryMatrix A> requires (nda::mem::have_host_compatible_addr_space<A> and is_blas_lapack_v<get_value_t<A>> and nda::blas::has_F_layout<A>) | |
| auto | nda::linalg::eig_in_place (A &&a) |
| Compute the eigenvalues and right eigenvectors of a general matrix. | |
| template<MemoryMatrix A> requires (nda::mem::have_host_compatible_addr_space<A> and is_blas_lapack_v<get_value_t<A>>) | |
| auto | nda::linalg::eigvals (A const &a) |
| Compute the eigenvalues of a general matrix. | |
| template<MemoryMatrix A> requires (nda::mem::have_host_compatible_addr_space<A> and is_blas_lapack_v<get_value_t<A>> and nda::blas::has_F_layout<A>) | |
| auto | nda::linalg::eigvals_in_place (A &&a) |
| Compute the eigenvalues of a general matrix. | |
| template<Vector WR, Vector WI> requires (mem::have_host_compatible_addr_space<WR, WI> and std::same_as<double, get_value_t<WR>> and have_same_value_type_v<WR, WI>) | |
| auto | nda::linalg::get_geev_eigenvalues (const WR &wr, const WI &wi) |
| Get the complex eigenvalues from nda::lapack::geev output for real matrices. | |
| template<Vector WI, Matrix VA> requires (mem::have_host_compatible_addr_space<WI, VA> and std::same_as<double, get_value_t<WI>> and have_same_value_type_v<WI, VA>) | |
| auto | nda::linalg::get_geev_eigenvectors (const WI &wi, const VA &va) |
| Get the complex left/right eigenvectors from nda::lapack::geev output for real matrices. | |