125 DOUBLE PRECISION FUNCTION zlangb( NORM, N, KL, KU, AB, LDAB,
135 INTEGER kl, ku, ldab, n
138 DOUBLE PRECISION work( * )
139 COMPLEX*16 ab( ldab, * )
145 DOUBLE PRECISION one, zero
146 parameter( one = 1.0d+0, zero = 0.0d+0 )
150 DOUBLE PRECISION scale, sum,
value, temp
160 INTRINSIC abs, max, min, sqrt
166 ELSE IF(
lsame( norm,
'M' ) )
THEN
172 DO 10 i = max( ku+2-
j, 1 ), min( n+ku+1-
j, kl+ku+1 )
173 temp = abs( ab( i,
j ) )
177 ELSE IF( (
lsame( norm,
'O' ) ) .OR. ( norm.EQ.
'1' ) )
THEN
184 DO 30 i = max( ku+2-
j, 1 ), min( n+ku+1-
j, kl+ku+1 )
185 sum = sum + abs( ab( i,
j ) )
189 ELSE IF(
lsame( norm,
'I' ) )
THEN
198 DO 60 i = max( 1,
j-ku ), min( n,
j+kl )
199 work( i ) = work( i ) + abs( ab( k+i,
j ) )
207 ELSE IF( (
lsame( norm,
'F' ) ) .OR. (
lsame( norm,
'E' ) ) )
THEN
216 CALL
zlassq( min( n,
j+kl )-l+1, ab( k,
j ), 1, scale, sum )
218 value = scale*sqrt( sum )
LOGICAL function lsame(CA, CB)
LSAME
subroutine zlassq(N, X, INCX, SCALE, SUMSQ)
ZLASSQ updates a sum of squares represented in scaled form.
input scalars passed by value
LOGICAL function disnan(DIN)
DISNAN tests input for NaN.
DOUBLE PRECISION function zlangb(NORM, N, KL, KU, AB, LDAB, WORK)
ZLANGB returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j