please help solve generalized eigen problems

Open discussion regarding features, bugs, issues, vendors, etc.

please help solve generalized eigen problems

Postby phygjd » Thu Nov 17, 2005 4:23 am

I am going to solve
A B X=E X
where A and B are both tridiagonal matrixs, X is a vector, E the eigenvalue. According to my problem, one eigenvalue is zero and other eigenvalues must be positive. However, NOT all the numerical eigenvalues are positive!

In my project, B is positve definite, while A is not positive definite. The diagonal elements of A and B are not quite small, while subdiagonal and superdiagonal elments are quite samll (~10^-5). I first factorize B using DPOTRF, second reduce the problem to a standard problem using DSYGST, then I use DSYTRD, finally I use DSTEBZ to get all the eigenvalues. I have tested my subroutine of solving generalized eigen problems using some other A and B, and found the the subroutine is correct. However, when I used the form of A and B in my problem, I cannot get the correct answer. Is it due to the fact that the sub- and super- diagonal elements in my problem is small so that numerical error is quite large in the calculation.
phygjd
 
Posts: 3
Joined: Tue Nov 15, 2005 3:57 am

Re: please help solve generalized eigen problems

Postby sven » Fri Nov 18, 2005 6:39 am

In general small eigenvalues may be poorly determined and, in particular, a zero eigenvalue is unlikely to be computed as zero. It is better to remove zero eigenvalues at the modelling stage, if that is possible.

Section 4.10 of the LAPACK Users' Guide gives information on error bounds for the generalized symmetric definite eigenproblem, and gives a code fragment illustrating how to compute the error bounds. By the way, you can use DSYGV to solve your problem, rather than putting all the computational parts together yourself.

Sven.
sven
 
Posts: 144
Joined: Wed Dec 22, 2004 4:28 am


Return to User Discussion

Who is online

Users browsing this forum: Bing [Bot] and 3 guests

cron