👤
Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

RedHat 9 (Linux i386) - man page for zhetrd (redhat section l)

ZHETRD(l)					)					ZHETRD(l)

NAME
       ZHETRD  -  reduce  a  complex Hermitian matrix A to real symmetric tridiagonal form T by a
       unitary similarity transformation

SYNOPSIS
       SUBROUTINE ZHETRD( UPLO, N, A, LDA, D, E, TAU, WORK, LWORK, INFO )

	   CHARACTER	  UPLO

	   INTEGER	  INFO, LDA, LWORK, N

	   DOUBLE	  PRECISION D( * ), E( * )

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

PURPOSE
       ZHETRD reduces a complex Hermitian matrix A to real symmetric tridiagonal form T by a uni-
       tary similarity transformation: Q**H * A * Q = T.

ARGUMENTS
       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 trian-
	       gular part of A contains the upper triangular  part  of	the  matrix  A,  and  the
	       strictly lower triangular part of A is not referenced.  If UPLO = 'L', the leading
	       N-by-N lower triangular part of A contains the lower triangular part of the matrix
	       A,  and	the  strictly  upper triangular part of A is not referenced.  On exit, if
	       UPLO = 'U', the diagonal and first superdiagonal of A are overwritten by the  cor-
	       responding  elements of the tridiagonal matrix T, and the elements above the first
	       superdiagonal, with the array TAU, represent the unitary matrix Q as a product  of
	       elementary  reflectors; if UPLO = 'L', the diagonal and first subdiagonal of A are
	       over- written by the corresponding elements of the tridiagonal matrix T,  and  the
	       elements  below	the  first subdiagonal, with the array TAU, represent the unitary
	       matrix Q as  a  product	of  elementary	reflectors.  See  Further  Details.   LDA
	       (input) INTEGER The leading dimension of the array A.  LDA >= max(1,N).

       D       (output) DOUBLE PRECISION array, dimension (N)
	       The diagonal elements of the tridiagonal matrix T: D(i) = A(i,i).

       E       (output) DOUBLE PRECISION array, dimension (N-1)
	       The  off-diagonal  elements of the tridiagonal matrix T: E(i) = A(i,i+1) if UPLO =
	       'U', E(i) = A(i+1,i) if UPLO = 'L'.

       TAU     (output) COMPLEX*16 array, dimension (N-1)
	       The scalar factors of the elementary reflectors (see Further Details).

       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 >= 1.  For optimum  performance	LWORK  >=
	       N*NB, where NB is the optimal blocksize.

	       If  LWORK = -1, then a workspace query is assumed; the routine only calculates the
	       optimal size of the WORK array, returns this value as the first entry of the  WORK
	       array, and no error message related to LWORK is issued by XERBLA.

       INFO    (output) INTEGER
	       = 0:  successful exit
	       < 0:  if INFO = -i, the i-th argument had an illegal value

FURTHER DETAILS
       If UPLO = 'U', the matrix Q is represented as a product of elementary reflectors

	  Q = H(n-1) . . . H(2) H(1).

       Each H(i) has the form

	  H(i) = I - tau * v * v'

       where  tau  is a complex scalar, and v is a complex vector with v(i+1:n) = 0 and v(i) = 1;
       v(1:i-1) is stored on exit in
       A(1:i-1,i+1), and tau in TAU(i).

       If UPLO = 'L', the matrix Q is represented as a product of elementary reflectors

	  Q = H(1) H(2) . . . H(n-1).

       Each H(i) has the form

	  H(i) = I - tau * v * v'

       where tau is a complex scalar, and v is a complex vector with v(1:i) = 0 and v(i+1)  =  1;
       v(i+2:n) is stored on exit in A(i+2:n,i), and tau in TAU(i).

       The contents of A on exit are illustrated by the following examples with n = 5:

       if UPLO = 'U':			    if UPLO = 'L':

	 (  d	e   v2	v3  v4 )	      (  d		    )
	 (	d   e	v3  v4 )	      (  e   d		    )
	 (	    d	e   v4 )	      (  v1  e	 d	    )
	 (		d   e  )	      (  v1  v2  e   d	    )
	 (		    d  )	      (  v1  v2  v3  e	 d  )

       where d and e denote diagonal and off-diagonal elements of T, and vi denotes an element of
       the vector defining H(i).

LAPACK version 3.0			   15 June 2000 				ZHETRD(l)


All times are GMT -4. The time now is 11:20 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password