150 SUBROUTINE dgehd2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
158 INTEGER IHI, ILO, INFO, LDA, N
161 DOUBLE PRECISION A( lda, * ), TAU( * ), WORK( * )
168 parameter ( one = 1.0d+0 )
187 ELSE IF( ilo.LT.1 .OR. ilo.GT.max( 1, n ) )
THEN
189 ELSE IF( ihi.LT.min( ilo, n ) .OR. ihi.GT.n )
THEN
191 ELSE IF( lda.LT.max( 1, n ) )
THEN
195 CALL xerbla(
'DGEHD2', -info )
199 DO 10 i = ilo, ihi - 1
203 CALL dlarfg( ihi-i, a( i+1, i ), a( min( i+2, n ), i ), 1,
210 CALL dlarf(
'Right', ihi, ihi-i, a( i+1, i ), 1, tau( i ),
211 $ a( 1, i+1 ), lda, work )
215 CALL dlarf(
'Left', ihi-i, n-i, a( i+1, i ), 1, tau( i ),
216 $ a( i+1, i+1 ), lda, work )
subroutine dlarf(SIDE, M, N, V, INCV, TAU, C, LDC, WORK)
DLARF applies an elementary reflector to a general rectangular matrix.
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dlarfg(N, ALPHA, X, INCX, TAU)
DLARFG generates an elementary reflector (Householder matrix).
subroutine dgehd2(N, ILO, IHI, A, LDA, TAU, WORK, INFO)
DGEHD2 reduces a general square matrix to upper Hessenberg form using an unblocked algorithm...