Re: [eigen] generalized eigenvalue problem with complex matrices

[ Thread Index | Date Index | More Archives ]

I created a class that has a similar API as the GeneralizedEigenSolver, but makes a call to the LAPACK zggev function. It is working pretty well for me.
I am not familiar with Eigen enough to know if it makes use of LAPACK routines. But if it does, would this class be of interest for inclusion in the library? If not is the expectation for someone to write an eigensolver in Eigen instead?
I would appreciate any comments.  

On Tue, Aug 13, 2013 at 9:32 AM, Christoph Hertzberg <chtz@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:
On 08.08.2013 23:04, Manav Bhatia wrote:
    I need to solve the eigenproblem   A x = \lambda B x, where A and B are
complex matrices. I noticed that the GeneralizedEigenSolver supports only
real A and B.

    Is there any other class available to support complex A& B, or anything
else in the works?

If A and B were selfadjoint, you could instead use GeneralizedSelfAdjointEigenSolver.

If B is invertible, you can solve the equivalent (but numerically less stable) problem (using the normal EigenSolver):
  (A*B.inverse()) * x = lambda * x.
Equivalently, if A is invertible:
  recip_lambda * x = (A.inverse()*B) * x

Of course, the best way would be to find someone able (and willing) to implement GeneralizedEigenSolver for complex matrices ^^


Dipl.-Inf., Dipl.-Math. Christoph Hertzberg
Cartesium 0.049
Universität Bremen
Enrique-Schmidt-Straße 5
28359 Bremen

Tel: +49 (421) 218-64252

Mail converted by MHonArc 2.6.19+