1SSYEV(1) LAPACK driver routine (version 3.1) SSYEV(1)
2
3
4
6 SSYEV - all eigenvalues and, optionally, eigenvectors of a real symmet‐
7 ric matrix A
8
10 SUBROUTINE SSYEV( JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, INFO )
11
12 CHARACTER JOBZ, UPLO
13
14 INTEGER INFO, LDA, LWORK, N
15
16 REAL A( LDA, * ), W( * ), WORK( * )
17
19 SSYEV computes all eigenvalues and, optionally, eigenvectors of a real
20 symmetric matrix A.
21
22
24 JOBZ (input) CHARACTER*1
25 = 'N': Compute eigenvalues only;
26 = 'V': Compute eigenvalues and eigenvectors.
27
28 UPLO (input) CHARACTER*1
29 = 'U': Upper triangle of A is stored;
30 = 'L': Lower triangle of A is stored.
31
32 N (input) INTEGER
33 The order of the matrix A. N >= 0.
34
35 A (input/output) REAL array, dimension (LDA, N)
36 On entry, the symmetric matrix A. If UPLO = 'U', the leading
37 N-by-N upper triangular part of A contains the upper triangular
38 part of the matrix A. If UPLO = 'L', the leading N-by-N lower
39 triangular part of A contains the lower triangular part of the
40 matrix A. On exit, if JOBZ = 'V', then if INFO = 0, A contains
41 the orthonormal eigenvectors of the matrix A. If JOBZ = 'N',
42 then on exit the lower triangle (if UPLO='L') or the upper tri‐
43 angle (if UPLO='U') of A, including the diagonal, is destroyed.
44
45 LDA (input) INTEGER
46 The leading dimension of the array A. LDA >= max(1,N).
47
48 W (output) REAL array, dimension (N)
49 If INFO = 0, the eigenvalues in ascending order.
50
51 WORK (workspace/output) REAL array, dimension (MAX(1,LWORK))
52 On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
53
54 LWORK (input) INTEGER
55 The length of the array WORK. LWORK >= max(1,3*N-1). For
56 optimal efficiency, LWORK >= (NB+2)*N, where NB is the block‐
57 size for SSYTRD returned by ILAENV.
58
59 If LWORK = -1, then a workspace query is assumed; the routine
60 only calculates the optimal size of the WORK array, returns
61 this value as the first entry of the WORK array, and no error
62 message related to LWORK is issued by XERBLA.
63
64 INFO (output) INTEGER
65 = 0: successful exit
66 < 0: if INFO = -i, the i-th argument had an illegal value
67 > 0: if INFO = i, the algorithm failed to converge; i off-
68 diagonal elements of an intermediate tridiagonal form did not
69 converge to zero.
70
71
72
73 LAPACK driver routine (version 3.N1o)vember 2006 SSYEV(1)