152 SUBROUTINE slatzm( SIDE, M, N, V, INCV, TAU, C1, C2, LDC, WORK )
161 INTEGER INCV, LDC, M, N
165 REAL C1( ldc, * ), C2( ldc, * ), V( * ), WORK( * )
172 parameter( one = 1.0e+0, zero = 0.0e+0 )
186 IF( ( min( m, n ).EQ.0 ) .OR. ( tau.EQ.zero ) )
189 IF( lsame( side,
'L' ) )
THEN
193 CALL
scopy( n, c1, ldc, work, 1 )
194 CALL
sgemv(
'Transpose', m-1, n, one, c2, ldc, v, incv, one,
200 CALL
saxpy( n, -tau, work, 1, c1, ldc )
201 CALL
sger( m-1, n, -tau, v, incv, work, 1, c2, ldc )
203 ELSE IF( lsame( side,
'R' ) )
THEN
207 CALL
scopy( m, c1, 1, work, 1 )
208 CALL
sgemv(
'No transpose', m, n-1, one, c2, ldc, v, incv, one,
213 CALL
saxpy( m, -tau, work, 1, c1, 1 )
214 CALL
sger( m, n-1, -tau, work, 1, v, incv, c2, ldc )
subroutine scopy(N, SX, INCX, SY, INCY)
SCOPY
subroutine saxpy(N, SA, SX, INCX, SY, INCY)
SAXPY
subroutine sgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SGEMV
subroutine sger(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
SGER
subroutine slatzm(SIDE, M, N, V, INCV, TAU, C1, C2, LDC, WORK)
SLATZM