123 SUBROUTINE zlaqhp( UPLO, N, AP, S, SCOND, AMAX, EQUED )
130 CHARACTER EQUED, UPLO
132 DOUBLE PRECISION AMAX, SCOND
135 DOUBLE PRECISION S( * )
142 DOUBLE PRECISION ONE, THRESH
143 parameter( one = 1.0d+0, thresh = 0.1d+0 )
147 DOUBLE PRECISION CJ, LARGE, SMALL
151 DOUBLE PRECISION DLAMCH
152 EXTERNAL lsame, dlamch
168 small = dlamch(
'Safe minimum' ) / dlamch(
'Precision' )
171 IF( scond.GE.thresh .AND. amax.GE.small .AND. amax.LE.large )
THEN
180 IF( lsame( uplo,
'U' ) )
THEN
188 ap( jc+i-1 ) = cj*s( i )*ap( jc+i-1 )
190 ap( jc+j-1 ) = cj*cj*dble( ap( jc+j-1 ) )
200 ap( jc ) = cj*cj*dble( ap( jc ) )
202 ap( jc+i-j ) = cj*s( i )*ap( jc+i-j )
subroutine zlaqhp(uplo, n, ap, s, scond, amax, equed)
ZLAQHP scales a Hermitian matrix stored in packed form.