Re: [eigen] Generalised Eigenvector Problem using the QZ algorithm.

[ Thread Index | Date Index | More Archives ]


On Thu, Jun 11, 2009 at 12:35 PM, Tim Hutt<tdhutt@xxxxxxxxx> wrote:
> Hi,
> I'm trying to implement the ellipse fitting algorithm from
> in C++ with eigen2. The algorithm relies on being able to solve the
> generalised eigenvector problem:
> Ax = lambda Bx
> (See: )
> In my case A and B are both rank-deficient so I can't invert them.
> Apparently the normal way to solve this is using the QZ algorithm,
> which is apparently similar to the QR algorithm.

that's a pity that B is not positive definite ;) So indeed, in that
case you will have to work a bit.

However, note that in your case the matrix A is selfadjoint, so
perhaps there exist a faster method than the QZ algorithm tailored for
the generalized selfadjoint eigenvalue problem with B non invertible ?

> The LAPACK routine is (I think) DGGEV or DGGEVX (who names these things?)

I think that in fortran 77 you are limited to 6 letters for the name
of the functions :( So here you have:
D = double (f for float, c and z for complexes)
G = Generalized
G = General (there is also H for Hermitian)
E = Eigen
V = Vector

> Any chance anyone could port the LAPACK code (or the CLAPACK code) to
> eigen? I could probably do it but I'm guessing there's someone out
> there who is familiar with LAPACK's crazy naming scheme and eigen who
> could do it a lot faster.

I don't think anybody will have time to do that soon.


> In return I have access to many journals. Papers on request. Or beer
> if you live in London. :-)
> Tim

Mail converted by MHonArc 2.6.19+