114 REAL function
clansp( norm, uplo, n, ap, work )
134 parameter( one = 1.0e+0, zero = 0.0e+0 )
138 REAL absa, sum, value
141 REAL ssq( 2 ), colssq( 2 )
151 INTRINSIC abs, aimag, real, sqrt
157 ELSE IF(
lsame( norm,
'M' ) )
THEN
162 IF(
lsame( uplo,
'U' ) )
THEN
165 DO 10 i = k, k + j - 1
167 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
174 DO 30 i = k, k + n - j
176 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
181 ELSE IF( (
lsame( norm,
'I' ) ) .OR. (
lsame( norm,
'O' ) ) .OR.
182 $ ( norm.EQ.
'1' ) )
THEN
188 IF(
lsame( uplo,
'U' ) )
THEN
192 absa = abs( ap( k ) )
194 work( i ) = work( i ) + absa
197 work( j ) = sum + abs( ap( k ) )
202 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
209 sum = work( j ) + abs( ap( k ) )
212 absa = abs( ap( k ) )
214 work( i ) = work( i ) + absa
217 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
220 ELSE IF( (
lsame( norm,
'F' ) ) .OR. (
lsame( norm,
'E' ) ) )
THEN
233 IF(
lsame( uplo,
'U' ) )
THEN
237 CALL classq( j-1, ap( k ), 1, colssq( 1 ), colssq( 2 ) )
245 CALL classq( n-j, ap( k ), 1, colssq( 1 ), colssq( 2 ) )
250 ssq( 2 ) = 2*ssq( 2 )
258 IF( real( ap( k ) ).NE.zero )
THEN
259 absa = abs( real( ap( k ) ) )
260 IF( colssq( 1 ).LT.absa )
THEN
261 colssq( 2 ) = one + colssq(2)*( colssq(1) / absa )**2
264 colssq( 2 ) = colssq( 2 ) + ( absa / colssq( 1 ) )**2
267 IF( aimag( ap( k ) ).NE.zero )
THEN
268 absa = abs( aimag( ap( k ) ) )
269 IF( colssq( 1 ).LT.absa )
THEN
270 colssq( 2 ) = one + colssq(2)*( colssq(1) / absa )**2
273 colssq( 2 ) = colssq( 2 ) + ( absa / colssq( 1 ) )**2
276 IF(
lsame( uplo,
'U' ) )
THEN
283 VALUE = ssq( 1 )*sqrt( ssq( 2 ) )
subroutine scombssq(V1, V2)
SCOMBSSQ adds two scaled sum of squares quantities
logical function sisnan(SIN)
SISNAN tests input for NaN.
logical function lsame(CA, CB)
LSAME
real function clansp(NORM, UPLO, N, AP, WORK)
CLANSP returns the value of the 1-norm, or the Frobenius norm, or the infinity norm,...
subroutine classq(N, X, INCX, SCALE, SUMSQ)
CLASSQ updates a sum of squares represented in scaled form.