146 SUBROUTINE sgehd2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
153 INTEGER IHI, ILO, INFO, LDA, N
156 REAL A( LDA, * ), TAU( * ), WORK( * )
177 ELSE IF( ilo.LT.1 .OR. ilo.GT.max( 1, n ) )
THEN
179 ELSE IF( ihi.LT.min( ilo, n ) .OR. ihi.GT.n )
THEN
181 ELSE IF( lda.LT.max( 1, n ) )
THEN
185 CALL xerbla(
'SGEHD2', -info )
189 DO 10 i = ilo, ihi - 1
193 CALL slarfg( ihi-i, a( i+1, i ), a( min( i+2, n ), i ), 1,
198 CALL slarf1f(
'Right', ihi, ihi-i, a( i+1, i ), 1, tau( i ),
199 $ a( 1, i+1 ), lda, work )
203 CALL slarf1f(
'Left', ihi-i, n-i, a( i+1, i ), 1, tau( i ),
204 $ a( i+1, i+1 ), lda, work )
subroutine sgehd2(n, ilo, ihi, a, lda, tau, work, info)
SGEHD2 reduces a general square matrix to upper Hessenberg form using an unblocked algorithm.
subroutine slarfg(n, alpha, x, incx, tau)
SLARFG generates an elementary reflector (Householder matrix).
subroutine slarf1f(side, m, n, v, incv, tau, c, ldc, work)
SLARF1F applies an elementary reflector to a general rectangular