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

NAME
  SSYEV	- compute all eigenvalues and, optionally, eigenvectors	of a real
  symmetric matrix A

SYNOPSIS

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

      CHARACTER	    JOBZ, UPLO

      INTEGER	    INFO, LDA, LWORK, N

      REAL	    A( LDA, * ), W( * ), WORK( * )

PURPOSE
  SSYEV	computes all eigenvalues and, optionally, eigenvectors of a real sym-
  metric 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) REAL array, dimension (LDA, N)
	  On entry, the	symmetric 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) REAL	array, dimension (N)
	  If INFO = 0, the eigenvalues in ascending order.

  WORK	  (workspace) REAL 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,3*N-1).	 For optimal
	  efficiency, LWORK >= (NB+2)*N, where NB is the blocksize for SSYTRD
	  returned by ILAENV.

  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