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

expanded application of Spectra to complex-valued matrices: problem of inequality signs in Arnoldi.h #161

Open
dsl2501 opened this issue Aug 12, 2023 · 3 comments

Comments

@dsl2501
Copy link

dsl2501 commented Aug 12, 2023

When I tried to amend the current best approximate codes to my complex-valued matrices, I finally came to be confronted with Arnoldi.h. Eigen/Spectra is constructed to do the job with real-valued matrices, prior consideration was minimal to predefine the inequality, absolute value (and norm), and the convergence criteria. I changed in several combinations of the following several lines and finally met the barrier. Would you please let me know the convergence of Arnoldi iteration and caveats for how to handle the inequality signs of complex valued numbers. Thanks.

  • Four error message for Arnoldi.h: four lines were critical, two modified and accepted, two resisted.
    Former two if (m_beta) < (m_near_0)) ---> if (std::abs(m_beta) < std::abs(m_near_0))
    if (m_beta) < (beta_thresh)) ----> if (std::abs(m_beta) < std::abs(beta_thresh))
    Latter two if (std::norm(m_beta) > Scalar(0.717) * m_op.norm(h)) did not work
    while (count < 5 && std::abs(ortho_err) > m_eps * std::abs(m_beta)) did not work
@dsl2501
Copy link
Author

dsl2501 commented Aug 19, 2023

this issue seems to be a small one of the grand problem of complex-valued matix eigendecompostion. I now move this issue to another topic.

@yixuan
Copy link
Owner

yixuan commented Aug 19, 2023

Currently, solvers for complex-valued matrices have not been implemented yet.

@dsl2501
Copy link
Author

dsl2501 commented Aug 19, 2023

Thanks a lot.

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

2 participants