chpevd man page on Scientific

Man page or keyword search:  
man Server   26626 pages
apropos Keyword Search (all sections)
Output format
Scientific logo
[printable version]

CHPEVD(1)	      LAPACK driver routine (version 3.2)	     CHPEVD(1)

NAME
       CHPEVD  - computes all the eigenvalues and, optionally, eigenvectors of
       a complex Hermitian matrix A in packed storage

SYNOPSIS
       SUBROUTINE CHPEVD( JOBZ, UPLO, N, AP, W, Z, LDZ,	 WORK,	LWORK,	RWORK,
			  LRWORK, IWORK, LIWORK, INFO )

	   CHARACTER	  JOBZ, UPLO

	   INTEGER	  INFO, LDZ, LIWORK, LRWORK, LWORK, N

	   INTEGER	  IWORK( * )

	   REAL		  RWORK( * ), W( * )

	   COMPLEX	  AP( * ), WORK( * ), Z( LDZ, * )

PURPOSE
       CHPEVD  computes all the eigenvalues and, optionally, eigenvectors of a
       complex Hermitian matrix A in  packed  storage.	 If  eigenvectors  are
       desired, it uses a divide and conquer algorithm.
       The  divide  and	 conquer  algorithm  makes very mild assumptions about
       floating point arithmetic. It will work on machines with a guard	 digit
       in add/subtract, or on those binary machines without guard digits which
       subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2. It	 could
       conceivably  fail on hexadecimal or decimal machines without guard dig‐
       its, but we know of none.

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.

       AP      (input/output) COMPLEX array, dimension (N*(N+1)/2)
	       On entry, the upper or lower triangle of the  Hermitian	matrix
	       A,  packed  columnwise in a linear array.  The j-th column of A
	       is stored in the array AP as follows: if UPLO  =	 'U',  AP(i  +
	       (j-1)*j/2)  =  A(i,j)  for  1<=i<=j;  if	 UPLO  =  'L',	AP(i +
	       (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.  On exit,	 AP  is	 over‐
	       written by values generated during the reduction to tridiagonal
	       form.  If UPLO = 'U', the diagonal and first  superdiagonal  of
	       the  tridiagonal	 matrix T overwrite the corresponding elements
	       of A, and if UPLO = 'L', the diagonal and first subdiagonal  of
	       T overwrite the corresponding elements of A.

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

       Z       (output) COMPLEX array, dimension (LDZ, N)
	       If  JOBZ	 =  'V',  then if INFO = 0, Z contains the orthonormal
	       eigenvectors of the matrix A, with the i-th column of Z holding
	       the eigenvector associated with W(i).  If JOBZ = 'N', then Z is
	       not referenced.

       LDZ     (input) INTEGER
	       The leading dimension of the array Z.  LDZ >= 1, and if JOBZ  =
	       'V', LDZ >= max(1,N).

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

       LWORK   (input) INTEGER
	       The  dimension  of  array WORK.	If N <= 1,		 LWORK
	       must be at least 1.  If JOBZ = 'N' and N > 1, LWORK must be  at
	       least  N.  If JOBZ = 'V' and N > 1, LWORK must be at least 2*N.
	       If LWORK = -1, then a workspace query is assumed;  the  routine
	       only calculates the required sizes of the WORK, RWORK and IWORK
	       arrays, returns these values as the first entries of the	 WORK,
	       RWORK  and  IWORK arrays, and no error message related to LWORK
	       or LRWORK or LIWORK is issued by XERBLA.

       RWORK   (workspace/output) REAL array, dimension (MAX(1,LRWORK))
	       On exit, if INFO = 0, RWORK(1) returns the required LRWORK.

       LRWORK  (input) INTEGER
	       The dimension of array RWORK.  If N <= 1,		LRWORK
	       must be at least 1.  If JOBZ = 'N' and N > 1, LRWORK must be at
	       least N.	 If JOBZ = 'V' and N > 1, LRWORK must be at least 1  +
	       5*N  +  2*N**2.	 If  LRWORK  =	-1,  then a workspace query is
	       assumed; the routine only calculates the required sizes of  the
	       WORK, RWORK and IWORK arrays, returns these values as the first
	       entries of the WORK, RWORK and IWORK arrays, and no error  mes‐
	       sage related to LWORK or LRWORK or LIWORK is issued by XERBLA.

       IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
	       On exit, if INFO = 0, IWORK(1) returns the required LIWORK.

       LIWORK  (input) INTEGER
	       The dimension of array IWORK.  If JOBZ  = 'N' or N <= 1, LIWORK
	       must be at least 1.  If JOBZ  = 'V' and N > 1, LIWORK  must  be
	       at  least  3  + 5*N.  If LIWORK = -1, then a workspace query is
	       assumed; the routine only calculates the required sizes of  the
	       WORK, RWORK and IWORK arrays, returns these values as the first
	       entries of the WORK, RWORK and IWORK arrays, and no error  mes‐
	       sage related to LWORK or LRWORK or LIWORK is issued by XERBLA.

       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.

 LAPACK driver routine (version 3November 2008			     CHPEVD(1)
[top]

List of man pages available for Scientific

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net