124 REAL function
clantp( norm, uplo, diag, n, ap, work )
132 CHARACTER diag, norm, uplo
144 parameter( one = 1.0e+0, zero = 0.0e+0 )
152 REAL ssq( 2 ), colssq( 2 )
168 ELSE IF(
lsame( norm,
'M' ) )
THEN
173 IF(
lsame( diag,
'U' ) )
THEN
175 IF(
lsame( uplo,
'U' ) )
THEN
177 DO 10 i = k, k + j - 2
179 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
185 DO 30 i = k + 1, k + n - j
187 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
194 IF(
lsame( uplo,
'U' ) )
THEN
196 DO 50 i = k, k + j - 1
198 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
204 DO 70 i = k, k + n - j
206 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
212 ELSE IF( (
lsame( norm,
'O' ) ) .OR. ( norm.EQ.
'1' ) )
THEN
218 udiag =
lsame( diag,
'U' )
219 IF(
lsame( uplo,
'U' ) )
THEN
223 DO 90 i = k, k + j - 2
224 sum = sum + abs( ap( i ) )
228 DO 100 i = k, k + j - 1
229 sum = sum + abs( ap( i ) )
233 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
239 DO 120 i = k + 1, k + n - j
240 sum = sum + abs( ap( i ) )
244 DO 130 i = k, k + n - j
245 sum = sum + abs( ap( i ) )
249 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
252 ELSE IF(
lsame( norm,
'I' ) )
THEN
257 IF(
lsame( uplo,
'U' ) )
THEN
258 IF(
lsame( diag,
'U' ) )
THEN
264 work( i ) = work( i ) + abs( ap( k ) )
275 work( i ) = work( i ) + abs( ap( k ) )
281 IF(
lsame( diag,
'U' ) )
THEN
288 work( i ) = work( i ) + abs( ap( k ) )
298 work( i ) = work( i ) + abs( ap( k ) )
307 IF(
VALUE .LT. sum .OR.
sisnan( sum ) )
VALUE = sum
309 ELSE IF( (
lsame( norm,
'F' ) ) .OR. (
lsame( norm,
'E' ) ) )
THEN
316 IF(
lsame( uplo,
'U' ) )
THEN
317 IF(
lsame( diag,
'U' ) )
THEN
324 CALL classq( j-1, ap( k ), 1,
325 $ colssq( 1 ), colssq( 2 ) )
336 CALL classq( j, ap( k ), 1,
337 $ colssq( 1 ), colssq( 2 ) )
343 IF(
lsame( diag,
'U' ) )
THEN
350 CALL classq( n-j, ap( k ), 1,
351 $ colssq( 1 ), colssq( 2 ) )
362 CALL classq( n-j+1, ap( k ), 1,
363 $ colssq( 1 ), colssq( 2 ) )
369 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 clantp(NORM, UPLO, DIAG, N, AP, WORK)
CLANTP 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.