[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-gsl] Eigenvalues and eigenvectors of arbitrary complex valued

From: Fred Perras
Subject: Re: [Help-gsl] Eigenvalues and eigenvectors of arbitrary complex valued matrix
Date: Fri, 14 Feb 2014 16:42:35 -0500

General complex matrices aren't supported.  You get real eigenvalues since
Hermitian matrices have real eigenvalues.  You would need to use something
else like LAPACK to solve complex eigensystems that are non-hermitian.


On Fri, Feb 14, 2014 at 12:31 PM, briccard <
address@hidden> wrote:

> Hello,
> I searched the documentation and the forum but I cannot understand which
> method to use to determine eigenvalues/eigenvectors of an arbitrary complex
> valued square matrix (except for a message stating that it was not
> supported in 2007
> msg00014.html).
> Looking at the section: "Complex Generalized Hermitian-Definite
> Eigensystems"
> it states that this method solves the problem: *A x = \lambda B x***
> then I thought to set *A* as my matrix and *B* as the identity to revert
> to *A x = \lambda x* . The problem is that the function:
> int *gsl_eigen_genhermv* /(gsl_matrix_complex * A, gsl_matrix_complex * B,
> gsl_vector * eval, gsl_matrix_complex * evec, gsl_eigen_genhermv_workspace
> * w)
> gives only real eigenvalues//, and then I got confused.
> I don't understand some explanations of the documentation like:
> "Similarly to the real case, this can be reduced to *C y = \lambda y*
> where *C = L^{-1} A L^{-H}* is hermitian, and *y = L^H x*."
> Is there any other function (I saw that sometimes complex functions are
> not documented) to be used for this case?
> If not, it doesn't look like I can use the ///*C = L^{-1} A L^{-H}* /and
> //*/y = L^H x/* equations, identifying *C* as my original matrix, since it
> is stated that *C* is hermitian (am I right) and I do not understand what
> is the definition of the matrix *L* and the number *H*/.
> Thanks for any help you can give me,
> Riccardo Balzan

reply via email to

[Prev in Thread] Current Thread [Next in Thread]