ZHEEV(l)	     LAPACK driver routine (version 1.1)	     ZHEEV(l)

NAME
  ZHEEV	- compute all eigenvalues and, optionally, eigenvectors	of a complex
  Hermitian matrix A

SYNOPSIS

  SUBROUTINE ZHEEV( JOBZ, UPLO,	N, A, LDA, W, WORK, LWORK, RWORK, INFO )

      CHARACTER	    JOBZ, UPLO

      INTEGER	    INFO, LDA, LWORK, N

      DOUBLE	    PRECISION RWORK( * ), W( * )

      COMPLEX*16    A( LDA, * ), WORK( * )

PURPOSE
  ZHEEV	computes all eigenvalues and, optionally, eigenvectors of a complex
  Hermitian matrix A.

ARGUMENTS

  JOBZ	  (input) CHARACTER*1
	  = 'N':  Compute eigenvalues only;
	  = 'V':  Compute eigenvalues and eigenvectors.

  UPLO	  (input) CHARACTER*1
	  = 'U':  Upper	triangle of A is stored;
	  = 'L':  Lower	triangle of A is stored.

  N	  (input) INTEGER
	  The order of the matrix A.  N	>= 0.

  A	  (input/output) COMPLEX*16 array, dimension (LDA, N)
	  On entry, the	Hermitian matrix A.  If	UPLO = 'U', the	leading	N-
	  by-N upper triangular	part of	A contains the upper triangular	part
	  of the matrix	A.  If UPLO = 'L', the leading N-by-N lower triangu-
	  lar part of A	contains the lower triangular part of the matrix A.
	  On exit, if JOBZ = 'V', then if INFO = 0, A contains the orthonor-
	  mal eigenvectors of the matrix A.  If	JOBZ = 'N', then on exit the
	  lower	triangle (if UPLO='L') or the upper triangle (if UPLO='U') of
	  A, including the diagonal, is	destroyed.

  LDA	  (input) INTEGER
	  The leading dimension	of the array A.	 LDA >=	max(1,N).

  W	  (output) DOUBLE PRECISION array, dimension (N)
	  If INFO = 0, the eigenvalues in ascending order.

  WORK	  (workspace) COMPLEX*16 array,	dimension (LWORK)
	  On exit, if INFO = 0,	WORK(1)	returns	the optimal LWORK.

  LWORK	  (input) INTEGER
	  The length of	the array WORK.	 LWORK >= max(1,2*N-1).	 For optimal
	  efficiency, LWORK >= (NB+1)*N, where NB is the blocksize for ZHETRD
	  returned by ILAENV.

  RWORK	  (workspace) DOUBLE PRECISION array, dimension	(max(1,	3*N-2))

  INFO	  (output) INTEGER
	  = 0:	successful exit
	  < 0:	if INFO	= -i, the i-th argument	had an illegal value
	  > 0:	if INFO	= i, the algorithm failed to converge; i off-diagonal
	  elements of an intermediate tridiagonal form did not converge	to
	  zero.


Back to the listing of simple driver routines