Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Attributes | List of all members
uni20::krylov::NonsymmetricEigenResult< Scalar, Vector > Struct Template Reference

Matrix-free nonsymmetric eigenvalue result. More...

#include <matrix_free.hpp>

Public Attributes

int converged_count = 0
 
std::optional< NonsymmetricArnoldiDiagnostics< Scalar > > diagnostics
 
std::vector< uni20::complex< Scalar > > eigenvalues
 
int iteration_count = 0
 
int matvec_count = 0
 
std::vector< RitzReality > reality
 
std::vector< Scalar > residual_bounds
 
std::vector< Vector > right_eigenvectors
 
NonsymmetricStatus status = NonsymmetricStatus::Converged
 

Detailed Description

template<uni20::Real Scalar, typename Vector>
struct uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >

Matrix-free nonsymmetric eigenvalue result.

For real nonsymmetric Arnoldi, eigenvalues may be complex even though vectors and matrix-vector products are real. Real eigenvectors are populated only when every selected Ritz value is numerically real. If any selected Ritz value is complex or ambiguous, right_eigenvectors is left empty and callers should inspect status and reality. Complex eigenvector output and real Schur two-plane output are reserved for later nonsymmetric phases.

Member Data Documentation

◆ converged_count

template<uni20::Real Scalar, typename Vector >
int uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::converged_count = 0

◆ diagnostics

template<uni20::Real Scalar, typename Vector >
std::optional<NonsymmetricArnoldiDiagnostics<Scalar> > uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::diagnostics

◆ eigenvalues

template<uni20::Real Scalar, typename Vector >
std::vector<uni20::complex<Scalar> > uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::eigenvalues

◆ iteration_count

template<uni20::Real Scalar, typename Vector >
int uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::iteration_count = 0

◆ matvec_count

template<uni20::Real Scalar, typename Vector >
int uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::matvec_count = 0

◆ reality

template<uni20::Real Scalar, typename Vector >
std::vector<RitzReality> uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::reality

◆ residual_bounds

template<uni20::Real Scalar, typename Vector >
std::vector<Scalar> uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::residual_bounds

◆ right_eigenvectors

template<uni20::Real Scalar, typename Vector >
std::vector<Vector> uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::right_eigenvectors

◆ status

template<uni20::Real Scalar, typename Vector >
NonsymmetricStatus uni20::krylov::NonsymmetricEigenResult< Scalar, Vector >::status = NonsymmetricStatus::Converged

The documentation for this struct was generated from the following file: