146 SUBROUTINE slarz( SIDE, M, N, L, V, INCV, TAU, C, LDC, WORK )
155 INTEGER incv, l, ldc, m, n
159 REAL c( ldc, * ), v( * ), work( * )
166 parameter( one = 1.0e+0, zero = 0.0e+0 )
177 IF(
lsame( side,
'L' ) )
THEN
181 IF( tau.NE.zero )
THEN
185 CALL
scopy( n, c, ldc, work, 1 )
189 CALL
sgemv(
'Transpose', l, n, one, c( m-l+1, 1 ), ldc, v,
190 $ incv, one, work, 1 )
194 CALL
saxpy( n, -tau, work, 1, c, ldc )
199 CALL
sger( l, n, -tau, v, incv, work, 1, c( m-l+1, 1 ),
207 IF( tau.NE.zero )
THEN
211 CALL
scopy( m, c, 1, work, 1 )
215 CALL
sgemv(
'No transpose', m, l, one, c( 1, n-l+1 ), ldc,
216 $ v, incv, one, work, 1 )
220 CALL
saxpy( m, -tau, work, 1, c, 1 )
225 CALL
sger( m, l, -tau, work, 1, v, incv, c( 1, n-l+1 ),
subroutine slarz(SIDE, M, N, L, V, INCV, TAU, C, LDC, WORK)
SLARZ applies an elementary reflector (as returned by stzrzf) to a general matrix.
subroutine scopy(N, SX, INCX, SY, INCY)
SCOPY
logical function lsame(CA, CB)
LSAME
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