
Hi.
Are there any plans for adding a solver for the generalized eigenvalue problem?


Coordinator
Jul 1, 2011 at 9:39 AM

By the generalized eigenvalue problem, I assume you mean A x = \lambda B x, where A and B are both N X N matrices.
If B is invertible, this is equivilent to (B^{1} A) x = \lambda x, i.e. to the normal eigenvalue problem on (B^{1} A). When B is not too close to singular, this approach is fine, and only slightly slower than the socalled QZ algorithm for the direct solution
of the generalized eigenvalue problem.
Do you have a real, practical problem where the (B^{1} A) approach doesn't work? In practice, I haven't encountered one, so I'd be interested in seeing your example and learning how it arises. Feel free to file a bug and put that information in
it, if an implementation of the QZ algorithm would be of practical value to you.



Look for the paper "Direct least squares fitting of ellipses". It works very well given a generalized eigenvalue solver and the matrix B (called C in the paper ;)) is singular. Right now I use Accord.NET's solver but I would like to minimize the number
of libraries I depend on.



Actually I found an improvement over the cited paper here:
http://www.mendeley.com/research/numericallystabledirectleastsquaresfittingofellipses/
And it seems there is no need to solve a generalized eigenvalue problem.

