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

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

Contents


ZLAHRD(3F)							    ZLAHRD(3F)


NAME    [Toc]    [Back]

     ZLAHRD - reduce the first NB columns of a complex general n-by-(n-k+1)
     matrix A so that elements below the k-th subdiagonal are zero

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZLAHRD(	N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )

	 INTEGER	K, LDA,	LDT, LDY, N, NB

	 COMPLEX*16	A( LDA,	* ), T(	LDT, NB	), TAU(	NB ), Y( LDY, NB )

PURPOSE    [Toc]    [Back]

     ZLAHRD reduces the	first NB columns of a complex general n-by-(n-k+1)
     matrix A so that elements below the k-th subdiagonal are zero. The
     reduction is performed by a unitary similarity transformation Q' *	A * Q.
     The routine returns the matrices V	and T which determine Q	as a block
     reflector I - V*T*V', and also the	matrix Y = A * V * T.

     This is an	auxiliary routine called by ZGEHRD.

ARGUMENTS    [Toc]    [Back]

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

     K	     (input) INTEGER
	     The offset	for the	reduction. Elements below the k-th subdiagonal
	     in	the first NB columns are reduced to zero.

     NB	     (input) INTEGER
	     The number	of columns to be reduced.

     A	     (input/output) COMPLEX*16 array, dimension	(LDA,N-K+1)
	     On	entry, the n-by-(n-k+1)	general	matrix A.  On exit, the
	     elements on and above the k-th subdiagonal	in the first NB
	     columns are overwritten with the corresponding elements of	the
	     reduced matrix; the elements below	the k-th subdiagonal, with the
	     array TAU,	represent the matrix Q as a product of elementary
	     reflectors. The other columns of A	are unchanged. See Further
	     Details.  LDA     (input) INTEGER The leading dimension of	the
	     array A.  LDA >= max(1,N).

     TAU     (output) COMPLEX*16 array,	dimension (NB)
	     The scalar	factors	of the elementary reflectors. See Further
	     Details.

     T	     (output) COMPLEX*16 array,	dimension (NB,NB)
	     The upper triangular matrix T.

     LDT     (input) INTEGER
	     The leading dimension of the array	T.  LDT	>= NB.




									Page 1






ZLAHRD(3F)							    ZLAHRD(3F)



     Y	     (output) COMPLEX*16 array,	dimension (LDY,NB)
	     The n-by-nb matrix	Y.

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

FURTHER	DETAILS
     The matrix	Q is represented as a product of nb elementary reflectors

	Q = H(1) H(2) .	. . H(nb).

     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+k-1)
     = 0, v(i+k) = 1; v(i+k+1:n) is stored on exit in A(i+k+1:n,i), and	tau in
     TAU(i).

     The elements of the vectors v together form the (n-k+1)-by-nb matrix V
     which is needed, with T and Y, to apply the transformation	to the
     unreduced part of the matrix, using an update of the form:	 A := (I -
     V*T*V') * (A - Y*V').

     The contents of A on exit are illustrated by the following	example	with n
     = 7, k = 3	and nb = 2:

	( a   h	  a   a	  a )
	( a   h	  a   a	  a )
	( a   h	  a   a	  a )
	( h   h	  a   a	  a )
	( v1  h	  a   a	  a )
	( v1  v2  a   a	  a )
	( v1  v2  a   a	  a )

     where a denotes an	element	of the original	matrix A, h denotes a modified
     element of	the upper Hessenberg matrix H, and vi denotes an element of
     the vector	defining H(i).
ZLAHRD(3F)							    ZLAHRD(3F)


NAME    [Toc]    [Back]

     ZLAHRD - reduce the first NB columns of a complex general n-by-(n-k+1)
     matrix A so that elements below the k-th subdiagonal are zero

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZLAHRD(	N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )

	 INTEGER	K, LDA,	LDT, LDY, N, NB

	 COMPLEX*16	A( LDA,	* ), T(	LDT, NB	), TAU(	NB ), Y( LDY, NB )

PURPOSE    [Toc]    [Back]

     ZLAHRD reduces the	first NB columns of a complex general n-by-(n-k+1)
     matrix A so that elements below the k-th subdiagonal are zero. The
     reduction is performed by a unitary similarity transformation Q' *	A * Q.
     The routine returns the matrices V	and T which determine Q	as a block
     reflector I - V*T*V', and also the	matrix Y = A * V * T.

     This is an	auxiliary routine called by ZGEHRD.

ARGUMENTS    [Toc]    [Back]

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

     K	     (input) INTEGER
	     The offset	for the	reduction. Elements below the k-th subdiagonal
	     in	the first NB columns are reduced to zero.

     NB	     (input) INTEGER
	     The number	of columns to be reduced.

     A	     (input/output) COMPLEX*16 array, dimension	(LDA,N-K+1)
	     On	entry, the n-by-(n-k+1)	general	matrix A.  On exit, the
	     elements on and above the k-th subdiagonal	in the first NB
	     columns are overwritten with the corresponding elements of	the
	     reduced matrix; the elements below	the k-th subdiagonal, with the
	     array TAU,	represent the matrix Q as a product of elementary
	     reflectors. The other columns of A	are unchanged. See Further
	     Details.  LDA     (input) INTEGER The leading dimension of	the
	     array A.  LDA >= max(1,N).

     TAU     (output) COMPLEX*16 array,	dimension (NB)
	     The scalar	factors	of the elementary reflectors. See Further
	     Details.

     T	     (output) COMPLEX*16 array,	dimension (NB,NB)
	     The upper triangular matrix T.

     LDT     (input) INTEGER
	     The leading dimension of the array	T.  LDT	>= NB.




									Page 1






ZLAHRD(3F)							    ZLAHRD(3F)



     Y	     (output) COMPLEX*16 array,	dimension (LDY,NB)
	     The n-by-nb matrix	Y.

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

FURTHER	DETAILS
     The matrix	Q is represented as a product of nb elementary reflectors

	Q = H(1) H(2) .	. . H(nb).

     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+k-1)
     = 0, v(i+k) = 1; v(i+k+1:n) is stored on exit in A(i+k+1:n,i), and	tau in
     TAU(i).

     The elements of the vectors v together form the (n-k+1)-by-nb matrix V
     which is needed, with T and Y, to apply the transformation	to the
     unreduced part of the matrix, using an update of the form:	 A := (I -
     V*T*V') * (A - Y*V').

     The contents of A on exit are illustrated by the following	example	with n
     = 7, k = 3	and nb = 2:

	( a   h	  a   a	  a )
	( a   h	  a   a	  a )
	( a   h	  a   a	  a )
	( h   h	  a   a	  a )
	( v1  h	  a   a	  a )
	( v1  v2  a   a	  a )
	( v1  v2  a   a	  a )

     where a denotes an	element	of the original	matrix A, h denotes a modified
     element of	the upper Hessenberg matrix H, and vi denotes an element of
     the vector	defining H(i).


									PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
dlaed4 IRIX rank-one modification to a diagonal matrix whose elements are given in the array d, and that D(i) < D(j) for i
slaed4 IRIX rank-one modification to a diagonal matrix whose elements are given in the array d, and that D(i) < D(j) for i
lreplace IRIX Replace elements in a list with new elements
slaed5 IRIX modification of a 2-by-2 diagonal matrix diag( D ) + RHO The diagonal elements in the array D are assumed to s
dlaed5 IRIX modification of a 2-by-2 diagonal matrix diag( D ) + RHO The diagonal elements in the array D are assumed to s
linsert IRIX Insert elements into a list
foreach IRIX Iterate over all elements in a list
lsort IRIX Sort the elements of a list
sum IRIX Sums array elements
rpccp_show_profile HP-UX Shows the elements of a profile
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service