*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> complib/zhbevd (3)              
Title
Content
Arch
Section
 

Contents


ZHBEVD(3F)							    ZHBEVD(3F)


NAME    [Toc]    [Back]

     ZHBEVD - compute all the eigenvalues and, optionally, eigenvectors	of a
     complex Hermitian band matrix A

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZHBEVD(	JOBZ, UPLO, N, KD, AB, LDAB, W,	Z, LDZ,	WORK, LWORK,
			RWORK, LRWORK, IWORK, LIWORK, INFO )

	 CHARACTER	JOBZ, UPLO

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

	 INTEGER	IWORK( * )

	 DOUBLE		PRECISION RWORK( * ), W( * )

	 COMPLEX*16	AB( LDAB, * ), WORK( * ), Z( LDZ, * )

PURPOSE    [Toc]    [Back]

     ZHBEVD computes all the eigenvalues and, optionally, eigenvectors of a
     complex Hermitian band matrix A.  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 digits,
     but we know of none.

ARGUMENTS    [Toc]    [Back]

     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.

     KD	     (input) INTEGER
	     The number	of superdiagonals of the matrix	A if UPLO = 'U', or
	     the number	of subdiagonals	if UPLO	= 'L'.	KD >= 0.

     AB	     (input/output) COMPLEX*16 array, dimension	(LDAB, N)
	     On	entry, the upper or lower triangle of the Hermitian band
	     matrix A, stored in the first KD+1	rows of	the array.  The	j-th
	     column of A is stored in the j-th column of the array AB as
	     follows:  if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j


									Page 1






ZHBEVD(3F)							    ZHBEVD(3F)



	     kd)<=i<=j;	if UPLO	= 'L', AB(1+i-j,j)    =	A(i,j) for
	     j<=i<=min(n,j+kd).

	     On	exit, AB is overwritten	by values generated during the
	     reduction to tridiagonal form.  If	UPLO = 'U', the	first
	     superdiagonal and the diagonal of the tridiagonal matrix T	are
	     returned in rows KD and KD+1 of AB, and if	UPLO = 'L', the
	     diagonal and first	subdiagonal of T are returned in the first two
	     rows of AB.

     LDAB    (input) INTEGER
	     The leading dimension of the array	AB.  LDAB >= KD	+ 1.

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

     Z	     (output) COMPLEX*16 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*16 array, dimension (LWORK)
	     On	exit, if LWORK > 0, WORK(1) returns the	optimal	LWORK.

     LWORK   (input) INTEGER
	     The dimension of the 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**2.

     RWORK   (workspace/output)	DOUBLE PRECISION array,
	     dimension (LRWORK)	On exit, if LRWORK > 0,	RWORK(1) returns the
	     optimal 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 +
	     4*N + 2*N*lg N + 3*N**2 , where lg( N ) = smallest	integer	k such
	     that 2**k >= N .

     IWORK   (workspace/output)	INTEGER	array, dimension (LIWORK)
	     On	exit, if LIWORK	> 0, IWORK(1) returns the optimal 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 2 + 5*N .



									Page 2






ZHBEVD(3F)							    ZHBEVD(3F)



     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 offdiagonal
 elements of an intermediate tridiagonal form did not
	     converge to zero.
ZHBEVD(3F)							    ZHBEVD(3F)


NAME    [Toc]    [Back]

     ZHBEVD - compute all the eigenvalues and, optionally, eigenvectors	of a
     complex Hermitian band matrix A

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZHBEVD(	JOBZ, UPLO, N, KD, AB, LDAB, W,	Z, LDZ,	WORK, LWORK,
			RWORK, LRWORK, IWORK, LIWORK, INFO )

	 CHARACTER	JOBZ, UPLO

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

	 INTEGER	IWORK( * )

	 DOUBLE		PRECISION RWORK( * ), W( * )

	 COMPLEX*16	AB( LDAB, * ), WORK( * ), Z( LDZ, * )

PURPOSE    [Toc]    [Back]

     ZHBEVD computes all the eigenvalues and, optionally, eigenvectors of a
     complex Hermitian band matrix A.  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 digits,
     but we know of none.

ARGUMENTS    [Toc]    [Back]

     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.

     KD	     (input) INTEGER
	     The number	of superdiagonals of the matrix	A if UPLO = 'U', or
	     the number	of subdiagonals	if UPLO	= 'L'.	KD >= 0.

     AB	     (input/output) COMPLEX*16 array, dimension	(LDAB, N)
	     On	entry, the upper or lower triangle of the Hermitian band
	     matrix A, stored in the first KD+1	rows of	the array.  The	j-th
	     column of A is stored in the j-th column of the array AB as
	     follows:  if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j


									Page 1






ZHBEVD(3F)							    ZHBEVD(3F)



	     kd)<=i<=j;	if UPLO	= 'L', AB(1+i-j,j)    =	A(i,j) for
	     j<=i<=min(n,j+kd).

	     On	exit, AB is overwritten	by values generated during the
	     reduction to tridiagonal form.  If	UPLO = 'U', the	first
	     superdiagonal and the diagonal of the tridiagonal matrix T	are
	     returned in rows KD and KD+1 of AB, and if	UPLO = 'L', the
	     diagonal and first	subdiagonal of T are returned in the first two
	     rows of AB.

     LDAB    (input) INTEGER
	     The leading dimension of the array	AB.  LDAB >= KD	+ 1.

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

     Z	     (output) COMPLEX*16 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*16 array, dimension (LWORK)
	     On	exit, if LWORK > 0, WORK(1) returns the	optimal	LWORK.

     LWORK   (input) INTEGER
	     The dimension of the 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**2.

     RWORK   (workspace/output)	DOUBLE PRECISION array,
	     dimension (LRWORK)	On exit, if LRWORK > 0,	RWORK(1) returns the
	     optimal 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 +
	     4*N + 2*N*lg N + 3*N**2 , where lg( N ) = smallest	integer	k such
	     that 2**k >= N .

     IWORK   (workspace/output)	INTEGER	array, dimension (LIWORK)
	     On	exit, if LIWORK	> 0, IWORK(1) returns the optimal 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 2 + 5*N .



									Page 2






ZHBEVD(3F)							    ZHBEVD(3F)



     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 offdiagonal
 elements of an intermediate tridiagonal form did not
	     converge to zero.


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
zhbevx IRIX compute selected eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix A
chbevx IRIX compute selected eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix A
zheev IRIX compute all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
cheev IRIX compute all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
cheevd IRIX compute all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
zheevd IRIX compute all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
zheevx IRIX compute selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
cheevx IRIX compute selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A
chpev IRIX compute all the eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix in packed storage
zhpev IRIX compute all the eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix in packed storage
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service