148 SUBROUTINE slatzm( SIDE, M, N, V, INCV, TAU, C1, C2, LDC,
157 INTEGER INCV, LDC, M, N
161 REAL C1( LDC, * ), C2( LDC, * ), V( * ), WORK( * )
168 parameter( one = 1.0e+0, zero = 0.0e+0 )
182 IF( ( min( m, n ).EQ.0 ) .OR. ( tau.EQ.zero ) )
185 IF( lsame( side,
'L' ) )
THEN
189 CALL scopy( n, c1, ldc, work, 1 )
190 CALL sgemv(
'Transpose', m-1, n, one, c2, ldc, v, incv, one,
196 CALL saxpy( n, -tau, work, 1, c1, ldc )
197 CALL sger( m-1, n, -tau, v, incv, work, 1, c2, ldc )
199 ELSE IF( lsame( side,
'R' ) )
THEN
203 CALL scopy( m, c1, 1, work, 1 )
204 CALL sgemv(
'No transpose', m, n-1, one, c2, ldc, v, incv,
209 CALL saxpy( m, -tau, work, 1, c1, 1 )
210 CALL sger( m, n-1, -tau, work, 1, v, incv, c2, ldc )
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