Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support eigenvalue condition number #155

Open
BangShiuh opened this issue Jul 26, 2023 · 0 comments
Open

Support eigenvalue condition number #155

BangShiuh opened this issue Jul 26, 2023 · 0 comments

Comments

@BangShiuh
Copy link

BangShiuh commented Jul 26, 2023

In LAPACK, eigenvalue condition numbers can also be obtained. For example, rconde, the reciprocals of the cosines of the angles between the left and right eigenvectors, in https://netlib.org/lapack/explore-html/d9/d8e/group__double_g_eeigen_ga4e35e1d4e9b63ba9eef4ba8aff3debae.html
This can be helpful to determine whether the eigenvalue is well-conditioned.

@yixuan To obtain the left eigenvector, we need to first transpose the input matrix. We might be able to accelerate the iteration by using the eigenvalues obtained earlier which associates with the right eigenvectors. Do you think this is a good strategy?

It seems that the algorithm filters out the ill-conditioned eigenvalues. For example,

Eigen::SparseMatrix<double> M(3, 3);
M.insert(0, 0) = 1.0;
M.insert(1, 1) = 1.0;
M.insert(2, 2) = 1.0e-6;

It only found 1 but not 1e-6.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant