·  Home
+   man pages
 -> Linux -> FreeBSD -> OpenBSD -> NetBSD -> Tru64 Unix -> HP-UX 11i -> IRIX
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

man pages->IRIX man pages -> complib/dlatzm (3)
 Title
 Content
 Arch
 Section All Sections 1 - General Commands 2 - System Calls 3 - Subroutines 4 - Special Files 5 - File Formats 6 - Games 7 - Macros and Conventions 8 - Maintenance Commands 9 - Kernel Interface n - New Commands

### Contents

```
DLATZM(3F)							    DLATZM(3F)

```

### NAME[Toc][Back]

```     DLATZM - applie a Householder matrix generated by DTZRQF to a matrix
```

### SYNOPSIS[Toc][Back]

```     SUBROUTINE	DLATZM(	SIDE, M, N, V, INCV, TAU, C1, C2, LDC, WORK )

CHARACTER	SIDE

INTEGER	INCV, LDC, M, N

DOUBLE		PRECISION TAU

DOUBLE		PRECISION C1( LDC, * ),	C2( LDC, * ), V( * ), WORK( *
)
```

### PURPOSE[Toc][Back]

```     DLATZM applies a Householder matrix generated by DTZRQF to	a matrix.

Let P = I - tau*u*u',   u = ( 1 ),
( v )
where v is	an (m-1) vector	if SIDE	= 'L', or a (n-1) vector if SIDE =
'R'.

If	SIDE equals 'L', let
C =	[ C1 ] 1
[ C2 ] m-1
n
Then C is overwritten by P*C.

If	SIDE equals 'R', let
C =	[ C1, C2 ] m
1  n-1
Then C is overwritten by C*P.

```

### ARGUMENTS[Toc][Back]

```     SIDE    (input) CHARACTER*1
= 'L': form P * C
= 'R': form C * P

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

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

V	     (input) DOUBLE PRECISION array, dimension
(1	+ (M-1)*abs(INCV)) if SIDE = 'L' (1 + (N-1)*abs(INCV)) if SIDE
= 'R' The vector v	in the representation of P. V is not used if
TAU = 0.

Page 1

DLATZM(3F)							    DLATZM(3F)

INCV    (input) INTEGER
The increment between elements of v. INCV <> 0

TAU     (input) DOUBLE PRECISION
The value tau in the representation of P.

C1	     (input/output) DOUBLE PRECISION array, dimension
(LDC,N) if	SIDE = 'L' (M,1)   if SIDE = 'R' On entry, the nvector
C1 if SIDE = 'L', or the m-vector C1 if SIDE = 'R'.

On	exit, the first	row of P*C if SIDE = 'L', or the first column
of	C*P if SIDE = 'R'.

C2	     (input/output) DOUBLE PRECISION array, dimension
(LDC, N)	if SIDE	= 'L' (LDC, N-1) if SIDE = 'R' On entry, the
(m	- 1) x n matrix	C2 if SIDE = 'L', or the m x (n	- 1) matrix C2
if	SIDE = 'R'.

On	exit, rows 2:m of P*C if SIDE =	'L', or	columns	2:m of C*P if
SIDE = 'R'.

LDC     (input) INTEGER
The leading dimension of the arrays C1 and	C2. LDC	>= (1,M).

WORK    (workspace) DOUBLE	PRECISION array, dimension
(N) if SIDE = 'L' (M) if SIDE = 'R'
DLATZM(3F)							    DLATZM(3F)

```

### NAME[Toc][Back]

```     DLATZM - applie a Householder matrix generated by DTZRQF to a matrix
```

### SYNOPSIS[Toc][Back]

```     SUBROUTINE	DLATZM(	SIDE, M, N, V, INCV, TAU, C1, C2, LDC, WORK )

CHARACTER	SIDE

INTEGER	INCV, LDC, M, N

DOUBLE		PRECISION TAU

DOUBLE		PRECISION C1( LDC, * ),	C2( LDC, * ), V( * ), WORK( *
)
```

### PURPOSE[Toc][Back]

```     DLATZM applies a Householder matrix generated by DTZRQF to	a matrix.

Let P = I - tau*u*u',   u = ( 1 ),
( v )
where v is	an (m-1) vector	if SIDE	= 'L', or a (n-1) vector if SIDE =
'R'.

If	SIDE equals 'L', let
C =	[ C1 ] 1
[ C2 ] m-1
n
Then C is overwritten by P*C.

If	SIDE equals 'R', let
C =	[ C1, C2 ] m
1  n-1
Then C is overwritten by C*P.

```

### ARGUMENTS[Toc][Back]

```     SIDE    (input) CHARACTER*1
= 'L': form P * C
= 'R': form C * P

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

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

V	     (input) DOUBLE PRECISION array, dimension
(1	+ (M-1)*abs(INCV)) if SIDE = 'L' (1 + (N-1)*abs(INCV)) if SIDE
= 'R' The vector v	in the representation of P. V is not used if
TAU = 0.

Page 1

DLATZM(3F)							    DLATZM(3F)

INCV    (input) INTEGER
The increment between elements of v. INCV <> 0

TAU     (input) DOUBLE PRECISION
The value tau in the representation of P.

C1	     (input/output) DOUBLE PRECISION array, dimension
(LDC,N) if	SIDE = 'L' (M,1)   if SIDE = 'R' On entry, the nvector
C1 if SIDE = 'L', or the m-vector C1 if SIDE = 'R'.

On	exit, the first	row of P*C if SIDE = 'L', or the first column
of	C*P if SIDE = 'R'.

C2	     (input/output) DOUBLE PRECISION array, dimension
(LDC, N)	if SIDE	= 'L' (LDC, N-1) if SIDE = 'R' On entry, the
(m	- 1) x n matrix	C2 if SIDE = 'L', or the m x (n	- 1) matrix C2
if	SIDE = 'R'.

On	exit, rows 2:m of P*C if SIDE =	'L', or	columns	2:m of C*P if
SIDE = 'R'.

LDC     (input) INTEGER
The leading dimension of the arrays C1 and	C2. LDC	>= (1,M).

WORK    (workspace) DOUBLE	PRECISION array, dimension
(N) if SIDE = 'L' (M) if SIDE = 'R'

PPPPaaaaggggeeee 2222```
[ Back ]
Similar pages