1CHPEV(1) LAPACK driver routine (version 3.2) CHPEV(1)
2
3
4
6 CHPEV - computes all the eigenvalues and, optionally, eigenvectors of a
7 complex Hermitian matrix in packed storage
8
10 SUBROUTINE CHPEV( JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, RWORK, INFO )
11
12 CHARACTER JOBZ, UPLO
13
14 INTEGER INFO, LDZ, N
15
16 REAL RWORK( * ), W( * )
17
18 COMPLEX AP( * ), WORK( * ), Z( LDZ, * )
19
21 CHPEV computes all the eigenvalues and, optionally, eigenvectors of a
22 complex Hermitian matrix in packed storage.
23
25 JOBZ (input) CHARACTER*1
26 = 'N': Compute eigenvalues only;
27 = 'V': Compute eigenvalues and eigenvectors.
28
29 UPLO (input) CHARACTER*1
30 = 'U': Upper triangle of A is stored;
31 = 'L': Lower triangle of A is stored.
32
33 N (input) INTEGER
34 The order of the matrix A. N >= 0.
35
36 AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
37 On entry, the upper or lower triangle of the Hermitian matrix
38 A, packed columnwise in a linear array. The j-th column of A
39 is stored in the array AP as follows: if UPLO = 'U', AP(i +
40 (j-1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i +
41 (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n. On exit, AP is over‐
42 written by values generated during the reduction to tridiagonal
43 form. If UPLO = 'U', the diagonal and first superdiagonal of
44 the tridiagonal matrix T overwrite the corresponding elements
45 of A, and if UPLO = 'L', the diagonal and first subdiagonal of
46 T overwrite the corresponding elements of A.
47
48 W (output) REAL array, dimension (N)
49 If INFO = 0, the eigenvalues in ascending order.
50
51 Z (output) COMPLEX array, dimension (LDZ, N)
52 If JOBZ = 'V', then if INFO = 0, Z contains the orthonormal
53 eigenvectors of the matrix A, with the i-th column of Z holding
54 the eigenvector associated with W(i). If JOBZ = 'N', then Z is
55 not referenced.
56
57 LDZ (input) INTEGER
58 The leading dimension of the array Z. LDZ >= 1, and if JOBZ =
59 'V', LDZ >= max(1,N).
60
61 WORK (workspace) COMPLEX array, dimension (max(1, 2*N-1))
62
63 RWORK (workspace) REAL array, dimension (max(1, 3*N-2))
64
65 INFO (output) INTEGER
66 = 0: successful exit.
67 < 0: if INFO = -i, the i-th argument had an illegal value.
68 > 0: if INFO = i, the algorithm failed to converge; i off-
69 diagonal elements of an intermediate tridiagonal form did not
70 converge to zero.
71
72
73
74 LAPACK driver routine (version 3.N2o)vember 2008 CHPEV(1)