LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
zlaed0.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine ZLAED0 (QSIZ, N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK, INFO)
 ZLAED0

Function/Subroutine Documentation

subroutine ZLAED0 ( INTEGER  QSIZ,
INTEGER  N,
DOUBLE PRECISION, dimension( * )  D,
DOUBLE PRECISION, dimension( * )  E,
COMPLEX*16, dimension( ldq, * )  Q,
INTEGER  LDQ,
COMPLEX*16, dimension( ldqs, * )  QSTORE,
INTEGER  LDQS,
DOUBLE PRECISION, dimension( * )  RWORK,
INTEGER, dimension( * )  IWORK,
INTEGER  INFO 
)

ZLAED0

Download ZLAED0 + dependencies [TGZ] [ZIP] [TXT]
Purpose:

 Using the divide and conquer method, ZLAED0 computes all eigenvalues
 of a symmetric tridiagonal matrix which is one diagonal block of
 those from reducing a dense or band Hermitian matrix and
 corresponding eigenvectors of the dense or band matrix.
 
Parameters:
[in]QSIZ
          QSIZ is INTEGER
         The dimension of the unitary matrix used to reduce
         the full matrix to tridiagonal form.  QSIZ >= N if ICOMPQ = 1.
 
[in]N
          N is INTEGER
         The dimension of the symmetric tridiagonal matrix.  N >= 0.
 
[in,out]D
          D is DOUBLE PRECISION array, dimension (N)
         On entry, the diagonal elements of the tridiagonal matrix.
         On exit, the eigenvalues in ascending order.
 
[in,out]E
          E is DOUBLE PRECISION array, dimension (N-1)
         On entry, the off-diagonal elements of the tridiagonal matrix.
         On exit, E has been destroyed.
 
[in,out]Q
          Q is COMPLEX*16 array, dimension (LDQ,N)
         On entry, Q must contain an QSIZ x N matrix whose columns
         unitarily orthonormal. It is a part of the unitary matrix
         that reduces the full dense Hermitian matrix to a
         (reducible) symmetric tridiagonal matrix.
 
[in]LDQ
          LDQ is INTEGER
         The leading dimension of the array Q.  LDQ >= max(1,N).
 
[out]IWORK
          IWORK is INTEGER array,
         the dimension of IWORK must be at least
                      6 + 6*N + 5*N*lg N
                      ( lg( N ) = smallest integer k
                                  such that 2^k >= N )
 
[out]RWORK
          RWORK is DOUBLE PRECISION array,
                               dimension (1 + 3*N + 2*N*lg N + 3*N**2)
                        ( lg( N ) = smallest integer k
                                    such that 2^k >= N )
 
[out]QSTORE
          QSTORE is COMPLEX*16 array, dimension (LDQS, N)
         Used to store parts of
         the eigenvector matrix when the updating matrix multiplies
         take place.
 
[in]LDQS
          LDQS is INTEGER
         The leading dimension of the array QSTORE.
         LDQS >= max(1,N).
 
[out]INFO
          INFO is INTEGER
          = 0:  successful exit.
          < 0:  if INFO = -i, the i-th argument had an illegal value.
          > 0:  The algorithm failed to compute an eigenvalue while
                working on the submatrix lying in rows and columns
                INFO/(N+1) through mod(INFO,N+1).
 
Author:
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
November 2011

Definition at line 145 of file zlaed0.f.

Here is the call graph for this function:

Here is the caller graph for this function:

 All Files Functions