98 REAL FUNCTION srzt01( M, N, A, AF, LDA, TAU, WORK,
107 INTEGER lda, lwork, m, n
110 REAL a( lda, * ), af( lda, * ), tau( * ),
118 parameter( zero = 0.0e+0, one = 1.0e+0 )
141 IF( lwork.LT.m*n+m )
THEN
142 CALL
xerbla(
'SRZT01', 8 )
148 IF( m.LE.0 .OR. n.LE.0 )
151 norma =
slange(
'One-norm', m, n, a, lda, rwork )
155 CALL
slaset(
'Full', m, n, zero, zero, work, m )
158 work( (
j-1 )*m+i ) = af( i,
j )
164 CALL
sormrz(
'Right',
'No tranpose', m, n, m, n-m, af, lda, tau,
165 $ work, m, work( m*n+1 ), lwork-m*n, info )
170 CALL
saxpy( m, -one, a( 1, i ), 1, work( ( i-1 )*m+1 ), 1 )
subroutine slaset(UPLO, M, N, ALPHA, BETA, A, LDA)
SLASET initializes the off-diagonal elements and the diagonal elements of a matrix to given values...
real function slange(NORM, M, N, A, LDA, WORK)
SLANGE returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine saxpy(N, SA, SX, INCX, SY, INCY)
SAXPY
subroutine sormrz(SIDE, TRANS, M, N, K, L, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
SORMRZ
real function slamch(CMACH)
SLAMCH
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
real function srzt01(M, N, A, AF, LDA, TAU, WORK, LWORK)
SRZT01