10#ifndef TLAPACK_QR_ITERATION_HH
11#define TLAPACK_QR_ITERATION_HH
63 if (
opts.variant == QRIterationVariant::MultiShift)
93 if (
opts.variant == QRIterationVariant::MultiShift)
151 if (
opts.variant == QRIterationVariant::MultiShift)
#define TLAPACK_WORKSPACE
Macro for tlapack::concepts::Workspace compatible with C++17.
Definition concepts.hpp:912
#define TLAPACK_VECTOR
Macro for tlapack::concepts::Vector compatible with C++17.
Definition concepts.hpp:906
#define TLAPACK_MATRIX
Macro for tlapack::concepts::Matrix compatible with C++17.
Definition concepts.hpp:896
int multishift_qr(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, matrix_t &A, vector_t &w, matrix_t &Z, FrancisOpts &opts)
multishift_qr computes the eigenvalues and optionally the Schur factorization of an upper Hessenberg ...
Definition multishift_qr.hpp:447
int lahqr(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, matrix_t &A, vector_t &w, matrix_t &Z)
lahqr computes the eigenvalues and optionally the Schur factorization of an upper Hessenberg matrix,...
Definition lahqr.hpp:73
int multishift_qr_work(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, matrix_t &A, vector_t &w, matrix_t &Z, work_t &work, FrancisOpts &opts)
multishift_qr computes the eigenvalues and optionally the Schur factorization of an upper Hessenberg ...
Definition multishift_qr.hpp:114
int qr_iteration_work(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, matrix_t &A, vector_t &w, matrix_t &Z, work_t &work, QRIterationOpts &opts)
Computes the eigenvalues and optionally the Schur factorization of an upper Hessenberg matrix....
Definition qr_iteration.hpp:82
int qr_iteration(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, matrix_t &A, vector_t &w, matrix_t &Z, QRIterationOpts &opts)
Computes the eigenvalues and optionally the Schur factorization of an upper Hessenberg matrix.
Definition qr_iteration.hpp:141
constexpr WorkInfo qr_iteration_worksize(bool want_t, bool want_z, size_type< matrix_t > ilo, size_type< matrix_t > ihi, const matrix_t &A, const vector_t &w, const matrix_t &Z, const QRIterationOpts &opts={})
Worspace query of qr_iteration()
Definition qr_iteration.hpp:53
Sort the numbers in D in increasing order (if ID = 'I') or in decreasing order (if ID = 'D' ).
Definition arrayTraits.hpp:15
typename traits::real_type_traits< Types..., int >::type real_type
The common real type of the list of types.
Definition scalar_type_traits.hpp:113
QRIterationVariant
Variant of the algorithm that performs QR iterations on an upper Hessenberg matrix.
Definition qr_iteration.hpp:21
Options struct for multishift_qr().
Definition FrancisOpts.hpp:23
Options struct for qr_iteration()
Definition qr_iteration.hpp:24
Output information in the workspace query.
Definition workspace.hpp:16