Go to the documentation of this file.00001 REAL FUNCTION SASUM(N,SX,INCX)
00002
00003 INTEGER INCX,N
00004
00005
00006 REAL SX(*)
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 REAL STEMP
00026 INTEGER I,M,MP1,NINCX
00027
00028
00029 INTRINSIC ABS,MOD
00030
00031 SASUM = 0.0e0
00032 STEMP = 0.0e0
00033 IF (N.LE.0 .OR. INCX.LE.0) RETURN
00034 IF (INCX.EQ.1) GO TO 20
00035
00036
00037
00038 NINCX = N*INCX
00039 DO 10 I = 1,NINCX,INCX
00040 STEMP = STEMP + ABS(SX(I))
00041 10 CONTINUE
00042 SASUM = STEMP
00043 RETURN
00044
00045
00046
00047
00048
00049
00050 20 M = MOD(N,6)
00051 IF (M.EQ.0) GO TO 40
00052 DO 30 I = 1,M
00053 STEMP = STEMP + ABS(SX(I))
00054 30 CONTINUE
00055 IF (N.LT.6) GO TO 60
00056 40 MP1 = M + 1
00057 DO 50 I = MP1,N,6
00058 STEMP = STEMP + ABS(SX(I)) + ABS(SX(I+1)) + ABS(SX(I+2)) +
00059 + ABS(SX(I+3)) + ABS(SX(I+4)) + ABS(SX(I+5))
00060 50 CONTINUE
00061 60 SASUM = STEMP
00062 RETURN
00063 END