[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-gsl] sign convention for eigenvectors in gsl_eigen_hermv
From: |
Walter Hahn |
Subject: |
[Bug-gsl] sign convention for eigenvectors in gsl_eigen_hermv |
Date: |
Tue, 18 Feb 2014 18:43:48 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20131103 Icedove/17.0.10 |
Dear all,
a few weeks ago, I have sent you this bug report already without giving
you enough information. Now, I would like to provide the missing
information and correct some statements.
After using the procedure gsl_eigen_hermv to diagonalize a matrix, I
suspect that the sign convention for the eigenvectors should be
reconsidered. More specifically, I diagonalize a matrix which has only a
few non-zero entries, namely at m(2i,2i+1) and m(2i+1,2i) for all i. In
my case, I diagonalize a 8x8 matrix with real entries, e.g. 1.0.
The eigenvectors should be of the following form (not normalized):
v1=(1,1,0,0,0....)
v2=(-1,1,0,0,0,...),
other eigenvectors can be obtained by shifting the non-zero coefficients
of v1 and v2 by two places to the right.
However, diagonalizing the 8x8 matrix described above, I obtain the
eigenvectors as described above except the last one which is
v8=(0,0,0,0,0,0,1,-1) instead of (0,0,0,0,0,0,-1,1), i.e., multiplied
with (-1). Therefore, I think that the sign convention is either not
implemented correctly or the convention used is not broad enough.
Please find in the attachment to this e-mail a simple compilable code
which demonstrates this problem. I have checked the described results
for GSL versions 1.15 and 1.16.
Kind regards,
Walter
qu.cc
Description: Text Data