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

NAME
  ZGEEV	- compute for an N-by-N	complex	nonsymmetric matrix A, the eigen-
  values and, optionally, the left and/or right	eigenvectors

SYNOPSIS

  SUBROUTINE ZGEEV( JOBVL, JOBVR, N, A,	LDA, W,	VL, LDVL, VR, LDVR, WORK,
		    LWORK, RWORK, INFO )

      CHARACTER	    JOBVL, JOBVR

      INTEGER	    INFO, LDA, LDVL, LDVR, LWORK, N

      DOUBLE	    PRECISION RWORK( * )

      COMPLEX*16    A( LDA, * ), VL( LDVL, * ),	VR( LDVR, * ), W( * ), WORK(
		    * )

PURPOSE
  ZGEEV	computes for an	N-by-N complex nonsymmetric matrix A, the eigenvalues
  and, optionally, the left and/or right eigenvectors.

  The left eigenvectors	of A are the same as the right eigenvectors of A**H.
  If u(j) and v(j) are the left	and right eigenvectors,	respectively,
  corresponding	to the eigenvalue lambda(j), then (u(j)**H)*A =
  lambda(j)*(u(j)**H) and A*v(j) = lambda(j) * v(j).

  The computed eigenvectors are	normalized to have Euclidean norm equal	to 1
  and largest component	real.

ARGUMENTS

  JOBVL	  (input) CHARACTER*1
	  = 'N': left eigenvectors of A	are not	computed;
	  = 'V': left eigenvectors of are computed.

  JOBVR	  (input) CHARACTER*1
	  = 'N': right eigenvectors of A are not computed;
	  = 'V': right eigenvectors of A are computed.

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

  A	  (input/output) COMPLEX*16 array, dimension (LDA,N)
	  On entry, the	N-by-N matrix A.  On exit, A has been overwritten.

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

  W	  (output) COMPLEX*16 array, dimension (N)
	  W contains the computed eigenvalues.

  VL	  (output) COMPLEX*16 array, dimension (LDVL,N)
	  If JOBVL = 'V', the left eigenvectors	u(j) are stored	one after
	  another in the columns of VL,	in the same order as their eigen-
	  values.  If JOBVL = 'N', VL is not referenced.  u(j) = VL(:,j), the
	  j-th column of VL.

  LDVL	  (input) INTEGER
	  The leading dimension	of the array VL.  LDVL >= 1; if	JOBVL =	'V',
	  LDVL >= N.

  VR	  (output) COMPLEX*16 array, dimension (LDVR,N)
	  If JOBVR = 'V', the right eigenvectors v(j) are stored one after
	  another in the columns of VR,	in the same order as their eigen-
	  values.  If JOBVR = 'N', VR is not referenced.  v(j) = VR(:,j), the
	  j-th column of VR.

  LDVR	  (input) INTEGER
	  The leading dimension	of the array VR.  LDVR >= 1; if	JOBVR =	'V',
	  LDVR >= N.

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

  LWORK	  (input) INTEGER
	  The dimension	of the array WORK.  LWORK >= max(1,2*N).  For good
	  performance, LWORK must generally be larger.

  RWORK	  (workspace) DOUBLE PRECISION array, dimension	(2*N)

  INFO	  (output) INTEGER
	  = 0:	successful exit
	  < 0:	if INFO	= -i, the i-th argument	had an illegal value.
	  > 0:	if INFO	= i, the QR algorithm failed to	compute	all the
	  eigenvalues, and no eigenvectors have	been computed; elements	and
	  i+1:N	of W contain eigenvalues which have converged.


Back to the listing of simple driver routines