108 DOUBLE PRECISION FUNCTION zlanhs( NORM, N, A, LDA, WORK )
120 DOUBLE PRECISION work( * )
121 COMPLEX*16 a( lda, * )
127 DOUBLE PRECISION one, zero
128 parameter( one = 1.0d+0, zero = 0.0d+0 )
132 DOUBLE PRECISION sum, value
135 DOUBLE PRECISION ssq( 2 ), colssq( 2 )
145 INTRINSIC abs, min, sqrt
151 ELSE IF(
lsame( norm,
'M' ) )
THEN
157 DO 10 i = 1, min( n, j+1 )
158 sum = abs( a( i, j ) )
159 IF(
VALUE .LT. sum .OR.
disnan( sum ) )
VALUE = sum
162 ELSE IF( (
lsame( norm,
'O' ) ) .OR. ( norm.EQ.
'1' ) )
THEN
169 DO 30 i = 1, min( n, j+1 )
170 sum = sum + abs( a( i, j ) )
172 IF(
VALUE .LT. sum .OR.
disnan( sum ) )
VALUE = sum
174 ELSE IF(
lsame( norm,
'I' ) )
THEN
182 DO 60 i = 1, min( n, j+1 )
183 work( i ) = work( i ) + abs( a( i, j ) )
189 IF(
VALUE .LT. sum .OR.
disnan( sum ) )
VALUE = sum
191 ELSE IF( (
lsame( norm,
'F' ) ) .OR. (
lsame( norm,
'E' ) ) )
THEN
203 CALL zlassq( min( n, j+1 ), a( 1, j ), 1,
204 $ colssq( 1 ), colssq( 2 ) )
207 VALUE = ssq( 1 )*sqrt( ssq( 2 ) )
logical function disnan(DIN)
DISNAN tests input for NaN.
subroutine dcombssq(V1, V2)
DCOMBSSQ adds two scaled sum of squares quantities.
logical function lsame(CA, CB)
LSAME
subroutine zlassq(N, X, INCX, SCALE, SUMSQ)
ZLASSQ updates a sum of squares represented in scaled form.
double precision function zlanhs(NORM, N, A, LDA, WORK)
ZLANHS returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...