nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
#include <memory_resource>
#include <tuple>
#include <nk/value/value.hpp>

Go to the source code of this file.

Functions

std::tuple< Value, Value > nk::linalg::eig_symmetric (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Symmetric eigendecomposition ([V, D] = eig(A)).
Value nk::linalg::eig_values (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Eigenvalues only (e = eig(A) single-output form, symmetric).
bool nk::linalg::isSymmetricApprox (const Value &A, double tol)
 Approximate-symmetry test used to pick the symmetric (Jacobi) vs general (char-poly) eig path.
Value nk::linalg::poly_of_matrix (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Characteristic polynomial of a matrix (p = poly(A)).
Value nk::linalg::eig_general_values (const Value &A, std::pmr::memory_resource *mr=nullptr)
 General (non-symmetric) eigenvalues via characteristic polynomial.
std::tuple< Value, Value > nk::linalg::eig_general_VD (const Value &A, std::pmr::memory_resource *mr=nullptr)
 General [V, D] eig for real-eigenvalue asymmetric A.
std::tuple< Value, Value > nk::linalg::hess (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Hessenberg reduction ([P, H] = hess(A)).
Value nk::linalg::hess_H_only (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Hessenberg-only output (H = hess(A) single-output form).
std::tuple< Value, Value > nk::linalg::schur_sym (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Schur decomposition for symmetric A ([U, T] = schur(A)).
std::tuple< Value, Value > nk::linalg::schur_general (const Value &A, std::pmr::memory_resource *mr=nullptr)
 Real Schur decomposition for general (nonsymmetric) A ([U, T] = schur(A)).
Value nk::linalg::sylvester_sym (const Value &A, const Value &B, const Value &C, std::pmr::memory_resource *mr=nullptr)
 Sylvester equation for symmetric A and B (X = sylvester_sym(A, B, C)).
Value nk::linalg::polyeig_values (Span< const Value > coeffs, std::pmr::memory_resource *mr=nullptr)
 Polynomial eigenvalue problem (e = polyeig(A0, A1, ..., Ak), possibly [V, e]).
std::tuple< Value, Value > nk::linalg::polyeig_VE (Span< const Value > coeffs, std::pmr::memory_resource *mr=nullptr)
 Polynomial eigenvalue problem, eigenvectors + eigenvalues ([V, e] = polyeig(A0, ..., Ak)).
Value nk::linalg::ordeig (const Value &T, std::pmr::memory_resource *mr=nullptr)
 Eigenvalues from a (quasi-)triangular Schur factor (e = ordeig(T)).