1CHEGV(1)              LAPACK driver routine (version 3.2)             CHEGV(1)
2
3
4

NAME

6       CHEGV  - computes all the eigenvalues, and optionally, the eigenvectors
7       of a complex generalized Hermitian-definite eigenproblem, of  the  form
8       A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x
9

SYNOPSIS

11       SUBROUTINE CHEGV( ITYPE, JOBZ, UPLO, N, A, LDA, B, LDB, W, WORK, LWORK,
12                         RWORK, INFO )
13
14           CHARACTER     JOBZ, UPLO
15
16           INTEGER       INFO, ITYPE, LDA, LDB, LWORK, N
17
18           REAL          RWORK( * ), W( * )
19
20           COMPLEX       A( LDA, * ), B( LDB, * ), WORK( * )
21

PURPOSE

23       CHEGV computes all the eigenvalues, and optionally, the eigenvectors of
24       a  complex  generalized  Hermitian-definite  eigenproblem,  of the form
25       A*x=(lambda)*B*x,  A*Bx=(lambda)*x,  or B*A*x=(lambda)*x.  Here A and B
26       are assumed to be Hermitian and B is also
27       positive definite.
28

ARGUMENTS

30       ITYPE   (input) INTEGER
31               Specifies the problem type to be solved:
32               = 1:  A*x = (lambda)*B*x
33               = 2:  A*B*x = (lambda)*x
34               = 3:  B*A*x = (lambda)*x
35
36       JOBZ    (input) CHARACTER*1
37               = 'N':  Compute eigenvalues only;
38               = 'V':  Compute eigenvalues and eigenvectors.
39
40       UPLO    (input) CHARACTER*1
41               = 'U':  Upper triangles of A and B are stored;
42               = 'L':  Lower triangles of A and B are stored.
43
44       N       (input) INTEGER
45               The order of the matrices A and B.  N >= 0.
46
47       A       (input/output) COMPLEX array, dimension (LDA, N)
48               On  entry,  the Hermitian matrix A.  If UPLO = 'U', the leading
49               N-by-N upper triangular part of A contains the upper triangular
50               part  of the matrix A.  If UPLO = 'L', the leading N-by-N lower
51               triangular part of A contains the lower triangular part of  the
52               matrix A.  On exit, if JOBZ = 'V', then if INFO = 0, A contains
53               the matrix Z of eigenvectors.  The eigenvectors are  normalized
54               as  follows:  if  ITYPE  =  1 or 2, Z**H*B*Z = I; if ITYPE = 3,
55               Z**H*inv(B)*Z = I.  If JOBZ = 'N', then on exit the upper  tri‐
56               angle  (if  UPLO='U') or the lower triangle (if UPLO='L') of A,
57               including the diagonal, is destroyed.
58
59       LDA     (input) INTEGER
60               The leading dimension of the array A.  LDA >= max(1,N).
61
62       B       (input/output) COMPLEX array, dimension (LDB, N)
63               On entry, the Hermitian positive definite matrix B.  If UPLO  =
64               'U', the leading N-by-N upper triangular part of B contains the
65               upper triangular part of the matrix B.   If  UPLO  =  'L',  the
66               leading  N-by-N  lower  triangular part of B contains the lower
67               triangular part of the matrix B.  On exit, if INFO  <=  N,  the
68               part  of B containing the matrix is overwritten by the triangu‐
69               lar factor U or L from the Cholesky factorization B = U**H*U or
70               B = L*L**H.
71
72       LDB     (input) INTEGER
73               The leading dimension of the array B.  LDB >= max(1,N).
74
75       W       (output) REAL array, dimension (N)
76               If INFO = 0, the eigenvalues in ascending order.
77
78       WORK    (workspace/output) COMPLEX array, dimension (MAX(1,LWORK))
79               On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
80
81       LWORK   (input) INTEGER
82               The  length  of  the  array  WORK.  LWORK >= max(1,2*N-1).  For
83               optimal efficiency, LWORK >= (NB+1)*N, where NB is  the  block‐
84               size  for  CHETRD  returned  by  ILAENV.  If LWORK = -1, then a
85               workspace query is assumed; the  routine  only  calculates  the
86               optimal size of the WORK array, returns this value as the first
87               entry of the WORK array, and no error message related to  LWORK
88               is issued by XERBLA.
89
90       RWORK   (workspace) REAL array, dimension (max(1, 3*N-2))
91
92       INFO    (output) INTEGER
93               = 0:  successful exit
94               < 0:  if INFO = -i, the i-th argument had an illegal value
95               > 0:  CPOTRF or CHEEV returned an error code:
96               <=  N:   if  INFO = i, CHEEV failed to converge; i off-diagonal
97               elements of an intermediate tridiagonal form did  not  converge
98               to  zero;  >  N:    if  INFO = N + i, for 1 <= i <= N, then the
99               leading minor of order i of B is not  positive  definite.   The
100               factorization of B could not be completed and no eigenvalues or
101               eigenvectors were computed.
102
103
104
105 LAPACK driver routine (version 3.N2o)vember 2008                        CHEGV(1)
Impressum