Re: [eigen] Eigenvalue solving and balancing

[ Thread Index | Date Index | More Archives ]

This is quite crucial to getting reasonable eigenvalues - I would recommend that at the very least some information is added to the docs.  If something is already available in Eigen, all the better


On Mon, Apr 3, 2017 at 7:35 AM, Julian Kent <jkflying@xxxxxxxxx> wrote:
Hi Ian

There is something similar available in the unsupported modules, in unsupported/Eigen/src/IterativeSolvers/Scaling.h, called IterScaling.

However, it doesn't support the lossless radix-only scaling that you've implemented.


On 3 April 2017 at 05:57, Ian Bell <ian.h.bell@xxxxxxxxx> wrote:
So it turns out that balancing the matrix prior to taking the eigenvalues is absolutely crucial (for my problem at the very least).  

I rapidly came to this conclusion after giving up on Eigen's eigenvalue solver due to the terrible eigenvalues that I was obtaining due to the ill-conditioning of the matrix.  Numpy crucially does balance the matrix prior to eigenvalue solving.  I would recommend that a method like the attached in my stack overflow question be made available : .  I'm not sure what the protocol is for PR (I don't use mercurial), and I am sure my solution needs a bit more templating magic, but without this, the eigenvalues from Eigen are useless for some challenging eigenvalue solving problems.


Mail converted by MHonArc 2.6.19+