LAPACK Archives

[Lapack] What is the biggest size of a real symmetric tridiagonal matrix


On Oct 2, 2012, at 6:28 AM, Leonardo Castelano <lkcastelano@Domain.Removed> 
wrote:

I need to diagonalize a real symmetric tridiagonal matrix, which should be as 
big as possible.
So my questions regarding this subject  are: 
(1) What is the biggest size of a matrix that LAPACK is able to diagonalize?

Depends if you want eigenvalues only or eigenvalues and eigenvectors. I assume 
that by diagonalizing you want both (eigenvalues and eigenvectors)  in which 
case, you are essentially limited by your memory. (Since the matrix of 
eigenvectors is dense, this will be your bottleneck.) Typically 
20K starts to be big big matrices. You can always try to push. If the matrix is 
symmetric tridiagonal and you only want the eigenvalues, 1) the 
computation is extremely fast, and 2) the storage is low. I have no idea how 
much people pushed LAPACK in these conditions. I
would assume we can handle eigenvalue computation for symmetric tridiagonal 
matrices of size above one million without too much
problems. 

(2) Which subroutine should I use?

You want to look at all the routines which starts by DSTE___ (or SSTE___ )
(DSTE stands for Double Presicion, Symmetric, Tridiagonal, Eigenvalue.)
We have four algorithms in place so there is quite a collection there. 
DSTEQR, QR method
DSTEMR, MRRR method
DSTEDC, Divide and Conquer method
DSTEGR: deprecated
etc.

Cheers, Julien.

<Prev in Thread] Current Thread [Next in Thread>


For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or