[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Help-gsl] eigenvectors of non symmetric matrix?
From: |
Warren Weckesser |
Subject: |
RE: [Help-gsl] eigenvectors of non symmetric matrix? |
Date: |
Thu, 6 Mar 2008 19:00:18 -0500 |
Don't use a gsl_eigen_* function to find the eigenvalues and eigenvectors.
The matrix a*b^T has rank 1. The only nonzero eigenvalue is b^T*a (i.e. the
dot product of b and a), and the corresponding eigenvector is a.
The eigenspace of the zero eigenvalue is the set of all vectors normal to b,
i.e. x such that b^T*x = 0, so just find a basis for this space to get the
eigenvectors of the zero eigenvalue.
--Warren
________________________________________
From: address@hidden address@hidden On Behalf Of David Doria address@hidden
Sent: Thursday, March 06, 2008 5:08 PM
To: address@hidden
Subject: [Help-gsl] eigenvectors of non symmetric matrix?
I am taking an outer product:
a b^T
where a and b are column vectors. Then I want the eigen values and vectors
of the resulting matrix (called mat3).
I tried to use:
gsl_eigen_symmv_workspace * EigenWorkspace = gsl_eigen_symmv_alloc (2);
gsl_eigen_symmv (mat3, EigenValues, EigenVectors, EigenWorkspace);
but it gave the wrong results. I guess this is because it was expecting a
symmetric matrix? Is the only other choice to use:
gsl_eigen_hermv_workspace * EigenWorkspace = gsl_eigen_hermv_alloc (2);
gsl_eigen_hermv (mat3, EigenValues, EigenVectors, EigenWorkspace);
but for that, I'd have to first make mat3 a complex matrix (or so says the
error haha)?
Please let me know.
--
Thanks,
David
_______________________________________________
Help-gsl mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/help-gsl