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

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

Contents


DLATRD(3F)							    DLATRD(3F)


NAME    [Toc]    [Back]

     DLATRD - reduce NB	rows and columns of a real symmetric matrix A to
     symmetric tridiagonal form	by an orthogonal similarity transformation Q'
     * A * Q, and returns the matrices V and W which are needed	to apply the
     transformation to the unreduced part of A

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	DLATRD(	UPLO, N, NB, A,	LDA, E,	TAU, W,	LDW )

	 CHARACTER	UPLO

	 INTEGER	LDA, LDW, N, NB

	 DOUBLE		PRECISION A( LDA, * ), E( * ), TAU( * ), W( LDW, * )

PURPOSE    [Toc]    [Back]

     DLATRD reduces NB rows and	columns	of a real symmetric matrix A to
     symmetric tridiagonal form	by an orthogonal similarity transformation Q'
     * A * Q, and returns the matrices V and W which are needed	to apply the
     transformation to the unreduced part of A.

     If	UPLO = 'U', DLATRD reduces the last NB rows and	columns	of a matrix,
     of	which the upper	triangle is supplied;
     if	UPLO = 'L', DLATRD reduces the first NB	rows and columns of a matrix,
     of	which the lower	triangle is supplied.

     This is an	auxiliary routine called by DSYTRD.

ARGUMENTS    [Toc]    [Back]

     UPLO    (input) CHARACTER
	     Specifies whether the upper or lower triangular part of the
	     symmetric matrix A	is stored:
	     = 'U': Upper triangular
	     = 'L': Lower triangular

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

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

     A	     (input/output) DOUBLE PRECISION array, dimension (LDA,N)
	     On	entry, the symmetric matrix A.	If UPLO	= 'U', the leading nby-n
 upper	triangular 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 last NB columns have
	     been reduced to tridiagonal form, with the	diagonal elements
	     overwriting the diagonal elements of A; the elements above	the



									Page 1






DLATRD(3F)							    DLATRD(3F)



	     diagonal with the array TAU, represent the	orthogonal matrix Q as
	     a product of elementary reflectors; if UPLO = 'L',	the first NB
	     columns have been reduced to tridiagonal form, with the diagonal
	     elements overwriting the diagonal elements	of A; the elements
	     below the diagonal	with the array TAU, represent the  orthogonal
	     matrix Q as a product of elementary reflectors.  See Further
	     Details.  LDA     (input) INTEGER The leading dimension of	the
	     array A.  LDA >= (1,N).

     E	     (output) DOUBLE PRECISION array, dimension	(N-1)
	     If	UPLO = 'U', E(n-nb:n-1)	contains the superdiagonal elements of
	     the last NB columns of the	reduced	matrix;	if UPLO	= 'L', E(1:nb)
	     contains the subdiagonal elements of the first NB columns of the
	     reduced matrix.

     TAU     (output) DOUBLE PRECISION array, dimension	(N-1)
	     The scalar	factors	of the elementary reflectors, stored in
	     TAU(n-nb:n-1) if UPLO = 'U', and in TAU(1:nb) if UPLO = 'L'.  See
	     Further Details.  W       (output)	DOUBLE PRECISION array,
	     dimension (LDW,NB)	The n-by-nb matrix W required to update	the
	     unreduced part of A.

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

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

	Q = H(n) H(n-1)	. . . H(n-nb+1).

     Each H(i) has the form

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

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

     If	UPLO = 'L', the	matrix Q is represented	as a product of	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 real scalar, and v is a real vector	with
     v(1:i) = 0	and v(i+1) = 1;	v(i+1:n) is stored on exit in A(i+1:n,i), and
     tau in TAU(i).




									Page 2






DLATRD(3F)							    DLATRD(3F)



     The elements of the vectors v together form the n-by-nb matrix V which is
     needed, with W, to	apply the transformation to the	unreduced part of the
     matrix, using a symmetric rank-2k update of the form:  A := A - V*W' -
     W*V'.

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

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

       (  a   a	  a   v4  v5 )		    (  d		  )
       (      a	  a   v4  v5 )		    (  1   d		  )
       (	  a   1	  v5 )		    (  v1  1   a	  )
       (	      d	  1  )		    (  v1  v2  a   a	  )
       (		  d  )		    (  v1  v2  a   a   a  )

     where d denotes a diagonal	element	of the reduced matrix, a denotes an
     element of	the original matrix that is unchanged, and vi denotes an
     element of	the vector defining H(i).
DLATRD(3F)							    DLATRD(3F)


NAME    [Toc]    [Back]

     DLATRD - reduce NB	rows and columns of a real symmetric matrix A to
     symmetric tridiagonal form	by an orthogonal similarity transformation Q'
     * A * Q, and returns the matrices V and W which are needed	to apply the
     transformation to the unreduced part of A

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	DLATRD(	UPLO, N, NB, A,	LDA, E,	TAU, W,	LDW )

	 CHARACTER	UPLO

	 INTEGER	LDA, LDW, N, NB

	 DOUBLE		PRECISION A( LDA, * ), E( * ), TAU( * ), W( LDW, * )

PURPOSE    [Toc]    [Back]

     DLATRD reduces NB rows and	columns	of a real symmetric matrix A to
     symmetric tridiagonal form	by an orthogonal similarity transformation Q'
     * A * Q, and returns the matrices V and W which are needed	to apply the
     transformation to the unreduced part of A.

     If	UPLO = 'U', DLATRD reduces the last NB rows and	columns	of a matrix,
     of	which the upper	triangle is supplied;
     if	UPLO = 'L', DLATRD reduces the first NB	rows and columns of a matrix,
     of	which the lower	triangle is supplied.

     This is an	auxiliary routine called by DSYTRD.

ARGUMENTS    [Toc]    [Back]

     UPLO    (input) CHARACTER
	     Specifies whether the upper or lower triangular part of the
	     symmetric matrix A	is stored:
	     = 'U': Upper triangular
	     = 'L': Lower triangular

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

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

     A	     (input/output) DOUBLE PRECISION array, dimension (LDA,N)
	     On	entry, the symmetric matrix A.	If UPLO	= 'U', the leading nby-n
 upper	triangular 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 last NB columns have
	     been reduced to tridiagonal form, with the	diagonal elements
	     overwriting the diagonal elements of A; the elements above	the



									Page 1






DLATRD(3F)							    DLATRD(3F)



	     diagonal with the array TAU, represent the	orthogonal matrix Q as
	     a product of elementary reflectors; if UPLO = 'L',	the first NB
	     columns have been reduced to tridiagonal form, with the diagonal
	     elements overwriting the diagonal elements	of A; the elements
	     below the diagonal	with the array TAU, represent the  orthogonal
	     matrix Q as a product of elementary reflectors.  See Further
	     Details.  LDA     (input) INTEGER The leading dimension of	the
	     array A.  LDA >= (1,N).

     E	     (output) DOUBLE PRECISION array, dimension	(N-1)
	     If	UPLO = 'U', E(n-nb:n-1)	contains the superdiagonal elements of
	     the last NB columns of the	reduced	matrix;	if UPLO	= 'L', E(1:nb)
	     contains the subdiagonal elements of the first NB columns of the
	     reduced matrix.

     TAU     (output) DOUBLE PRECISION array, dimension	(N-1)
	     The scalar	factors	of the elementary reflectors, stored in
	     TAU(n-nb:n-1) if UPLO = 'U', and in TAU(1:nb) if UPLO = 'L'.  See
	     Further Details.  W       (output)	DOUBLE PRECISION array,
	     dimension (LDW,NB)	The n-by-nb matrix W required to update	the
	     unreduced part of A.

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

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

	Q = H(n) H(n-1)	. . . H(n-nb+1).

     Each H(i) has the form

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

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

     If	UPLO = 'L', the	matrix Q is represented	as a product of	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 real scalar, and v is a real vector	with
     v(1:i) = 0	and v(i+1) = 1;	v(i+1:n) is stored on exit in A(i+1:n,i), and
     tau in TAU(i).




									Page 2






DLATRD(3F)							    DLATRD(3F)



     The elements of the vectors v together form the n-by-nb matrix V which is
     needed, with W, to	apply the transformation to the	unreduced part of the
     matrix, using a symmetric rank-2k update of the form:  A := A - V*W' -
     W*V'.

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

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

       (  a   a	  a   v4  v5 )		    (  d		  )
       (      a	  a   v4  v5 )		    (  1   d		  )
       (	  a   1	  v5 )		    (  v1  1   a	  )
       (	      d	  1  )		    (  v1  v2  a   a	  )
       (		  d  )		    (  v1  v2  a   a   a  )

     where d denotes a diagonal	element	of the reduced matrix, a denotes an
     element of	the original matrix that is unchanged, and vi denotes an
     element of	the vector defining H(i).


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
ssptrd IRIX reduce a real symmetric matrix A stored in packed form to symmetric tridiagonal form T by an orthogonal simila
dsptrd IRIX reduce a real symmetric matrix A stored in packed form to symmetric tridiagonal form T by an orthogonal simila
ssytd2 IRIX reduce a real symmetric matrix A to symmetric tridiagonal form T by an orthogonal similarity transformation
dsytd2 IRIX reduce a real symmetric matrix A to symmetric tridiagonal form T by an orthogonal similarity transformation
dsbtrd IRIX reduce a real symmetric band matrix A to symmetric tridiagonal form T by an orthogonal similarity transformati
ssbtrd IRIX reduce a real symmetric band matrix A to symmetric tridiagonal form T by an orthogonal similarity transformati
dsytrd IRIX reduce a real symmetric matrix A to real symmetric tridiagonal form T by an orthogonal similarity transformati
ssytrd IRIX reduce a real symmetric matrix A to real symmetric tridiagonal form T by an orthogonal similarity transformati
chptrd IRIX reduce a complex Hermitian matrix A stored in packed form to real symmetric tridiagonal form T by a unitary si
zhptrd IRIX reduce a complex Hermitian matrix A stored in packed form to real symmetric tridiagonal form T by a unitary si
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service