1ZSTEIN(1)                LAPACK routine (version 3.1)                ZSTEIN(1)
2
3
4

NAME

6       ZSTEIN - the eigenvectors of a real symmetric tridiagonal matrix T cor‐
7       responding to specified eigenvalues, using inverse iteration
8

SYNOPSIS

10       SUBROUTINE ZSTEIN( N, D, E, M, W, IBLOCK, ISPLIT, Z, LDZ, WORK,  IWORK,
11                          IFAIL, INFO )
12
13           INTEGER        INFO, LDZ, M, N
14
15           INTEGER        IBLOCK( * ), IFAIL( * ), ISPLIT( * ), IWORK( * )
16
17           DOUBLE         PRECISION D( * ), E( * ), W( * ), WORK( * )
18
19           COMPLEX*16     Z( LDZ, * )
20

PURPOSE

22       ZSTEIN computes the eigenvectors of a real symmetric tridiagonal matrix
23       T corresponding to specified eigenvalues, using inverse iteration.
24
25       The maximum number of iterations allowed for each eigenvector is speci‐
26       fied by an internal parameter MAXITS (currently set to 5).
27
28       Although the eigenvectors are real, they are stored in a complex array,
29       which may be passed to ZUNMTR or ZUPMTR for back
30       transformation to the eigenvectors of a complex Hermitian matrix  which
31       was reduced to tridiagonal form.
32
33
34

ARGUMENTS

36       N       (input) INTEGER
37               The order of the matrix.  N >= 0.
38
39       D       (input) DOUBLE PRECISION array, dimension (N)
40               The n diagonal elements of the tridiagonal matrix T.
41
42       E       (input) DOUBLE PRECISION array, dimension (N-1)
43               The  (n-1)  subdiagonal  elements  of the tridiagonal matrix T,
44               stored in elements 1 to N-1.
45
46       M       (input) INTEGER
47               The number of eigenvectors to be found.  0 <= M <= N.
48
49       W       (input) DOUBLE PRECISION array, dimension (N)
50               The first M elements of W contain  the  eigenvalues  for  which
51               eigenvectors  are  to  be  computed.  The eigenvalues should be
52               grouped by split-off block and ordered from smallest to largest
53               within  the block.  ( The output array W from DSTEBZ with ORDER
54               = 'B' is expected here. )
55
56       IBLOCK  (input) INTEGER array, dimension (N)
57               The submatrix indices associated with the corresponding  eigen‐
58               values  in  W;  IBLOCK(i)=1  if  eigenvalue W(i) belongs to the
59               first submatrix from the top, =2 if W(i) belongs to the  second
60               submatrix,  etc.   (  The  output  array  IBLOCK from DSTEBZ is
61               expected here. )
62
63       ISPLIT  (input) INTEGER array, dimension (N)
64               The splitting points, at which T breaks  up  into  submatrices.
65               The  first submatrix consists of rows/columns 1 to ISPLIT( 1 ),
66               the second of rows/columns ISPLIT( 1 )+1 through ISPLIT(  2  ),
67               etc.  ( The output array ISPLIT from DSTEBZ is expected here. )
68
69       Z       (output) COMPLEX*16 array, dimension (LDZ, M)
70               The computed eigenvectors.  The eigenvector associated with the
71               eigenvalue W(i) is stored in the i-th column of Z.  Any  vector
72               which  fails  to  converge  is set to its current iterate after
73               MAXITS iterations.  The imaginary parts of the eigenvectors are
74               set to zero.
75
76       LDZ     (input) INTEGER
77               The leading dimension of the array Z.  LDZ >= max(1,N).
78
79       WORK    (workspace) DOUBLE PRECISION array, dimension (5*N)
80
81       IWORK   (workspace) INTEGER array, dimension (N)
82
83       IFAIL   (output) INTEGER array, dimension (M)
84               On normal exit, all elements of IFAIL are zero.  If one or more
85               eigenvectors fail to converge  after  MAXITS  iterations,  then
86               their indices are stored in array IFAIL.
87
88       INFO    (output) INTEGER
89               = 0: successful exit
90               < 0: if INFO = -i, the i-th argument had an illegal value
91               >  0:  if  INFO  = i, then i eigenvectors failed to converge in
92               MAXITS iterations.  Their indices are stored in array IFAIL.
93

PARAMETERS

95       MAXITS  INTEGER, default = 5
96               The maximum number of iterations performed.
97
98       EXTRA   INTEGER, default = 2
99               The number of iterations performed after norm growth  criterion
100               is satisfied, should be at least 1.
101
102
103
104 LAPACK routine (version 3.1)    November 2006                       ZSTEIN(1)
Impressum