diff options
Diffstat (limited to '2.3-1/src/fortran/blas/dzasum.f')
-rw-r--r-- | 2.3-1/src/fortran/blas/dzasum.f | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/2.3-1/src/fortran/blas/dzasum.f b/2.3-1/src/fortran/blas/dzasum.f new file mode 100644 index 00000000..d21c1ffc --- /dev/null +++ b/2.3-1/src/fortran/blas/dzasum.f @@ -0,0 +1,34 @@ + double precision function dzasum(n,zx,incx) +c +c takes the sum of the absolute values. +c jack dongarra, 3/11/78. +c modified 3/93 to return if incx .le. 0. +c modified 12/3/93, array(1) declarations changed to array(*) +c + double complex zx(*) + double precision stemp,dcabs1 + integer i,incx,ix,n +c + dzasum = 0.0d0 + stemp = 0.0d0 + if( n.le.0 .or. incx.le.0 )return + if(incx.eq.1)go to 20 +c +c code for increment not equal to 1 +c + ix = 1 + do 10 i = 1,n + stemp = stemp + dcabs1(zx(ix)) + ix = ix + incx + 10 continue + dzasum = stemp + return +c +c code for increment equal to 1 +c + 20 do 30 i = 1,n + stemp = stemp + dcabs1(zx(i)) + 30 continue + dzasum = stemp + return + end |