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

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

Contents


ZUPMTR(3F)							    ZUPMTR(3F)


NAME    [Toc]    [Back]

     ZUPMTR - overwrite	the general complex M-by-N matrix C with   SIDE	= 'L'
     SIDE = 'R'	TRANS =	'N'

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZUPMTR(	SIDE, UPLO, TRANS, M, N, AP, TAU, C, LDC, WORK,	INFO )

	 CHARACTER	SIDE, TRANS, UPLO

	 INTEGER	INFO, LDC, M, N

	 COMPLEX*16	AP( * ), C( LDC, * ), TAU( * ),	WORK( *	)

PURPOSE    [Toc]    [Back]

     ZUPMTR overwrites the general complex M-by-N matrix C with	TRANS =	'C':
     Q**H * C	    C *	Q**H

     where Q is	a complex unitary matrix of order nq, with nq =	m if SIDE =
     'L' and nq	= n if SIDE = 'R'. Q is	defined	as the product of nq-1
     elementary	reflectors, as returned	by ZHPTRD using	packed storage:

     if	UPLO = 'U', Q =	H(nq-1)	. . . H(2) H(1);

     if	UPLO = 'L', Q =	H(1) H(2) . . .	H(nq-1).

ARGUMENTS    [Toc]    [Back]

     SIDE    (input) CHARACTER*1
	     = 'L': apply Q or Q**H from the Left;
	     = 'R': apply Q or Q**H from the Right.

     UPLO    (input) CHARACTER*1
	     = 'U': Upper triangular packed storage used in previous call to
	     ZHPTRD; = 'L': Lower triangular packed storage used in previous
	     call to ZHPTRD.

     TRANS   (input) CHARACTER*1
	     = 'N':  No	transpose, apply Q;
	     = 'C':  Conjugate transpose, apply	Q**H.

     M	     (input) INTEGER
	     The number	of rows	of the matrix C. M >= 0.

     N	     (input) INTEGER
	     The number	of columns of the matrix C. N >= 0.

     AP	     (input) COMPLEX*16	array, dimension
	     (M*(M+1)/2) if SIDE = 'L' (N*(N+1)/2) if SIDE = 'R' The vectors
	     which define the elementary reflectors, as	returned by ZHPTRD.
	     AP	is modified by the routine but restored	on exit.





									Page 1






ZUPMTR(3F)							    ZUPMTR(3F)



     TAU     (input) COMPLEX*16	array, dimension (M-1) if SIDE = 'L'
	     or	(N-1) if SIDE =	'R' TAU(i) must	contain	the scalar factor of
	     the elementary reflector H(i), as returned	by ZHPTRD.

     C	     (input/output) COMPLEX*16 array, dimension	(LDC,N)
	     On	entry, the M-by-N matrix C.  On	exit, C	is overwritten by Q*C
	     or	Q**H*C or C*Q**H or C*Q.

     LDC     (input) INTEGER
	     The leading dimension of the array	C. LDC >= max(1,M).

     WORK    (workspace) COMPLEX*16 array, dimension
	     (N) if SIDE = 'L' (M) if SIDE = 'R'

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


NAME    [Toc]    [Back]

     ZUPMTR - overwrite	the general complex M-by-N matrix C with   SIDE	= 'L'
     SIDE = 'R'	TRANS =	'N'

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	ZUPMTR(	SIDE, UPLO, TRANS, M, N, AP, TAU, C, LDC, WORK,	INFO )

	 CHARACTER	SIDE, TRANS, UPLO

	 INTEGER	INFO, LDC, M, N

	 COMPLEX*16	AP( * ), C( LDC, * ), TAU( * ),	WORK( *	)

PURPOSE    [Toc]    [Back]

     ZUPMTR overwrites the general complex M-by-N matrix C with	TRANS =	'C':
     Q**H * C	    C *	Q**H

     where Q is	a complex unitary matrix of order nq, with nq =	m if SIDE =
     'L' and nq	= n if SIDE = 'R'. Q is	defined	as the product of nq-1
     elementary	reflectors, as returned	by ZHPTRD using	packed storage:

     if	UPLO = 'U', Q =	H(nq-1)	. . . H(2) H(1);

     if	UPLO = 'L', Q =	H(1) H(2) . . .	H(nq-1).

ARGUMENTS    [Toc]    [Back]

     SIDE    (input) CHARACTER*1
	     = 'L': apply Q or Q**H from the Left;
	     = 'R': apply Q or Q**H from the Right.

     UPLO    (input) CHARACTER*1
	     = 'U': Upper triangular packed storage used in previous call to
	     ZHPTRD; = 'L': Lower triangular packed storage used in previous
	     call to ZHPTRD.

     TRANS   (input) CHARACTER*1
	     = 'N':  No	transpose, apply Q;
	     = 'C':  Conjugate transpose, apply	Q**H.

     M	     (input) INTEGER
	     The number	of rows	of the matrix C. M >= 0.

     N	     (input) INTEGER
	     The number	of columns of the matrix C. N >= 0.

     AP	     (input) COMPLEX*16	array, dimension
	     (M*(M+1)/2) if SIDE = 'L' (N*(N+1)/2) if SIDE = 'R' The vectors
	     which define the elementary reflectors, as	returned by ZHPTRD.
	     AP	is modified by the routine but restored	on exit.





									Page 1






ZUPMTR(3F)							    ZUPMTR(3F)



     TAU     (input) COMPLEX*16	array, dimension (M-1) if SIDE = 'L'
	     or	(N-1) if SIDE =	'R' TAU(i) must	contain	the scalar factor of
	     the elementary reflector H(i), as returned	by ZHPTRD.

     C	     (input/output) COMPLEX*16 array, dimension	(LDC,N)
	     On	entry, the M-by-N matrix C.  On	exit, C	is overwritten by Q*C
	     or	Q**H*C or C*Q**H or C*Q.

     LDC     (input) INTEGER
	     The leading dimension of the array	C. LDC >= max(1,M).

     WORK    (workspace) COMPLEX*16 array, dimension
	     (N) if SIDE = 'L' (M) if SIDE = 'R'

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


									PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
cunmr2 IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
cunml2 IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
cunm2r IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
zunm2l IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
cunm2l IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
zunml2 IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
zunmr2 IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
zunm2r IRIX overwrite the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q'* C if SIDE = 'L'
dormqr IRIX overwrite the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N'
dormql IRIX overwrite the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N'
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service