Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

dlarrv(l) [redhat man page]

DLARRV(l)								 )								 DLARRV(l)

NAME
DLARRV - compute the eigenvectors of the tridiagonal matrix T = L D L^T given L, D and the eigenvalues of L D L^T SYNOPSIS
SUBROUTINE DLARRV( N, D, L, ISPLIT, M, W, IBLOCK, GERSCH, TOL, Z, LDZ, ISUPPZ, WORK, IWORK, INFO ) INTEGER INFO, LDZ, M, N DOUBLE PRECISION TOL INTEGER IBLOCK( * ), ISPLIT( * ), ISUPPZ( * ), IWORK( * ) DOUBLE PRECISION D( * ), GERSCH( * ), L( * ), W( * ), WORK( * ), Z( LDZ, * ) PURPOSE
DLARRV computes the eigenvectors of the tridiagonal matrix T = L D L^T given L, D and the eigenvalues of L D L^T. The input eigenvalues should have high relative accuracy with respect to the entries of L and D. The desired accuracy of the output can be specified by the input parameter TOL. ARGUMENTS
N (input) INTEGER The order of the matrix. N >= 0. D (input/output) DOUBLE PRECISION array, dimension (N) On entry, the n diagonal elements of the diagonal matrix D. On exit, D may be overwritten. L (input/output) DOUBLE PRECISION array, dimension (N-1) On entry, the (n-1) subdiagonal elements of the unit bidiagonal matrix L in elements 1 to N-1 of L. L(N) need not be set. On exit, L is overwritten. ISPLIT (input) INTEGER array, dimension (N) The splitting points, at which T breaks up into submatrices. The first submatrix consists of rows/columns 1 to ISPLIT( 1 ), the second of rows/columns ISPLIT( 1 )+1 through ISPLIT( 2 ), etc. TOL (input) DOUBLE PRECISION The absolute error tolerance for the eigenvalues/eigenvectors. Errors in the input eigenvalues must be bounded by TOL. The eigen- vectors output have residual norms bounded by TOL, and the dot products between different eigenvectors are bounded by TOL. TOL must be at least N*EPS*|T|, where EPS is the machine precision and |T| is the 1-norm of the tridiagonal matrix. M (input) INTEGER The total number of eigenvalues found. 0 <= M <= N. If RANGE = 'A', M = N, and if RANGE = 'I', M = IU-IL+1. W (input) DOUBLE PRECISION array, dimension (N) The first M elements of W contain the eigenvalues for which eigenvectors are to be computed. The eigenvalues should be grouped by split-off block and ordered from smallest to largest within the block ( The output array W from DLARRE is expected here ). Errors in W must be bounded by TOL (see above). IBLOCK (input) INTEGER array, dimension (N) The submatrix indices associated with the corresponding eigenvalues in W; IBLOCK(i)=1 if eigenvalue W(i) belongs to the first sub- matrix from the top, =2 if W(i) belongs to the second submatrix, etc. Z (output) DOUBLE PRECISION array, dimension (LDZ, max(1,M) ) If JOBZ = 'V', then if INFO = 0, the first M columns of Z contain the orthonormal eigenvectors of the matrix T corresponding to the selected eigenvalues, with the i-th column of Z holding the eigenvector associated with W(i). If JOBZ = 'N', then Z is not refer- enced. Note: the user must ensure that at least max(1,M) columns are supplied in the array Z; if RANGE = 'V', the exact value of M is not known in advance and an upper bound must be used. LDZ (input) INTEGER The leading dimension of the array Z. LDZ >= 1, and if JOBZ = 'V', LDZ >= max(1,N). ISUPPZ (output) INTEGER ARRAY, dimension ( 2*max(1,M) ) The support of the eigenvectors in Z, i.e., the indices indicating the nonzero elements in Z. The i-th eigenvector is nonzero only in elements ISUPPZ( 2*i-1 ) through ISUPPZ( 2*i ). WORK (workspace) DOUBLE PRECISION array, dimension (13*N) IWORK (workspace) INTEGER array, dimension (6*N) INFO (output) INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = 1, internal error in DLARRB if INFO = 2, internal error in DSTEIN FURTHER DETAILS
Based on contributions by Inderjit Dhillon, IBM Almaden, USA Osni Marques, LBNL/NERSC, USA LAPACK version 3.0 15 June 2000 DLARRV(l)
Man Page