103 REAL function
clangt( norm, n, dl, d, du )
114 COMPLEX d( * ), dl( * ), du( * )
121 parameter( one = 1.0e+0, zero = 0.0e+0 )
125 REAL anorm, scale, sum, temp
141 ELSE IF(
lsame( norm,
'M' ) )
THEN
145 anorm = abs( d( n ) )
147 IF( anorm.LT.abs( dl( i ) ) .OR.
148 $
sisnan( abs( dl( i ) ) ) )
150 IF( anorm.LT.abs( d( i ) ) .OR.
sisnan( abs( d( i ) ) ) )
152 IF( anorm.LT.abs( du( i ) ) .OR.
153 $
sisnan(abs( du( i ) ) ) )
156 ELSE IF(
lsame( norm,
'O' ) .OR. norm.EQ.
'1' )
THEN
161 anorm = abs( d( 1 ) )
163 anorm = abs( d( 1 ) )+abs( dl( 1 ) )
164 temp = abs( d( n ) )+abs( du( n-1 ) )
165 IF( anorm .LT. temp .OR.
sisnan( temp ) ) anorm = temp
167 temp = abs( d( i ) )+abs( dl( i ) )+abs( du( i-1 ) )
168 IF( anorm .LT. temp .OR.
sisnan( temp ) ) anorm = temp
171 ELSE IF(
lsame( norm,
'I' ) )
THEN
176 anorm = abs( d( 1 ) )
178 anorm = abs( d( 1 ) )+abs( du( 1 ) )
179 temp = abs( d( n ) )+abs( dl( n-1 ) )
180 IF( anorm .LT. temp .OR.
sisnan( temp ) ) anorm = temp
182 temp = abs( d( i ) )+abs( du( i ) )+abs( dl( i-1 ) )
183 IF( anorm .LT. temp .OR.
sisnan( temp ) ) anorm = temp
186 ELSE IF( (
lsame( norm,
'F' ) ) .OR.
187 $ (
lsame( norm,
'E' ) ) )
THEN
193 CALL classq( n, d, 1, scale, sum )
195 CALL classq( n-1, dl, 1, scale, sum )
196 CALL classq( n-1, du, 1, scale, sum )
198 anorm = scale*sqrt( sum )
real function clangt(norm, n, dl, d, du)
CLANGT returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
subroutine classq(n, x, incx, scale, sumsq)
CLASSQ updates a sum of squares represented in scaled form.