Computational Science Stack Exchange is a question and answer site for scientists using computers to solve scientific problems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have to solve generalized eigenvalue problems $Ax = \lambda Bx$ where $A$ and $B$ are both tridiagonal, $B$ is symmetric positive definite and real, but $A$ is only complex symmetric (not definite or Hermitian). Furthermore, I need the full eigendecomposition. I am currently just calling Lapack's ZGGEV generalized eigensolver, but I am wondering if there are better methods for this particular, highly structured problem. In particular, having freely available code (C++) would be the best.

share|improve this question
If $A$ is truly only complex symmetric, then it might not even be diagonalizable. You may want to first look into methods for computing the EVD or Schur decomposition of complex symmetric tridiagonal matrices ($B=I$) and work from there. I am skeptical that there will be existing software for this problem. – Jack Poulson Feb 24 '13 at 17:58
I'd recommend doing a Google search here. I found quite a few references that might be useful to you. – Michael Grant Mar 27 '13 at 0:49

The Pole EXpansion and Selected Inversion (PEXSI) method might be the answer. I have not used this method, but it offers an inversion routine for complex symmetric matrices. It is not specific to tridiagonal matrices, but makes use of sparsity.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.