Previous: clatrs Up: ../lapack-c.html Next: clauu2

# clatzm

```
NAME
CLATZM - apply a Householder matrix generated by CTZRQF to a
matrix

SYNOPSIS
SUBROUTINE CLATZM( SIDE, M, N, V, INCV, TAU, C1, C2, LDC,
WORK )

CHARACTER      SIDE

INTEGER        INCV, LDC, M, N

COMPLEX        TAU

COMPLEX        C1( LDC, * ), C2( LDC, * ), V( * ), WORK(
* )

PURPOSE
CLATZM applies a Householder matrix generated by CTZRQF 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
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) COMPLEX 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.

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

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

C1      (input/output) COMPLEX array, dimension
(LDC,N) if SIDE = 'L' (M,1)   if SIDE = 'R' On
entry, the n-vector 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) COMPLEX 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
>= max(1,M).

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