LAPACK  3.4.2 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 used by sstedc. Computes all eigenvalues and corresponding eigenvectors of an unreduced symmetric tridiagonal matrix using the divide and conquer method.

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 used by sstedc. Computes all eigenvalues and corresponding eigenvectors of an unreduced symmetric tridiagonal matrix using the divide and conquer method.

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).```
Date:
September 2012

Definition at line 145 of file zlaed0.f.

Here is the call graph for this function:

Here is the caller graph for this function: