LAPACK
3.4.2
LAPACK: Linear Algebra PACKage
|
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. |
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.
Download ZLAED0 + dependencies [TGZ] [ZIP] [TXT]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.
[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). |
Definition at line 145 of file zlaed0.f.