LAPACK
3.4.2
LAPACK: Linear Algebra PACKage
Main Page
Modules
Files
File List
File Members
LAPACK
Modules
Files
File List
BLAS
SRC
caxpy.f
ccopy.f
cdotc.f
cdotu.f
cgbmv.f
cgemm.f
cgemv.f
cgerc.f
cgeru.f
chbmv.f
chemm.f
chemv.f
cher.f
cher2.f
cher2k.f
cherk.f
chpmv.f
chpr.f
chpr2.f
crotg.f
cscal.f
csrot.f
csscal.f
cswap.f
csymm.f
csyr2k.f
csyrk.f
ctbmv.f
ctbsv.f
ctpmv.f
ctpsv.f
ctrmm.f
ctrmv.f
ctrsm.f
ctrsv.f
dasum.f
daxpy.f
dcabs1.f
dcopy.f
ddot.f
dgbmv.f
dgemm.f
dgemv.f
dger.f
dnrm2.f
drot.f
drotg.f
drotm.f
drotmg.f
dsbmv.f
dscal.f
dsdot.f
dspmv.f
dspr.f
dspr2.f
dswap.f
dsymm.f
dsymv.f
dsyr.f
dsyr2.f
dsyr2k.f
dsyrk.f
dtbmv.f
dtbsv.f
dtpmv.f
dtpsv.f
dtrmm.f
dtrmv.f
dtrsm.f
dtrsv.f
dzasum.f
dznrm2.f
icamax.f
idamax.f
isamax.f
izamax.f
lsame.f
sasum.f
saxpy.f
scabs1.f
scasum.f
scnrm2.f
scopy.f
sdot.f
sdsdot.f
sgbmv.f
sgemm.f
sgemv.f
sger.f
snrm2.f
srot.f
srotg.f
srotm.f
srotmg.f
ssbmv.f
sscal.f
sspmv.f
sspr.f
sspr2.f
sswap.f
ssymm.f
ssymv.f
ssyr.f
ssyr2.f
ssyr2k.f
ssyrk.f
stbmv.f
stbsv.f
stpmv.f
stpsv.f
strmm.f
strmv.f
strsm.f
strsv.f
xerbla.f
xerbla_array.f
zaxpy.f
zcopy.f
zdotc.f
zdotu.f
zdrot.f
zdscal.f
zgbmv.f
zgemm.f
zgemv.f
zgerc.f
zgeru.f
zhbmv.f
zhemm.f
zhemv.f
zher.f
zher2.f
zher2k.f
zherk.f
zhpmv.f
zhpr.f
zhpr2.f
zrotg.f
zscal.f
zswap.f
zsymm.f
zsyr2k.f
zsyrk.f
ztbmv.f
ztbsv.f
ztpmv.f
ztpsv.f
ztrmm.f
ztrmv.f
ztrsm.f
ztrsv.f
TESTING
INSTALL
lapacke
SRC
TESTING
File Members
•
All
Files
Functions
Groups
sasum.f
Go to the documentation of this file.
1
*> \brief \b SASUM
2
*
3
* =========== DOCUMENTATION ===========
4
*
5
* Online html documentation available at
6
* http://www.netlib.org/lapack/explore-html/
7
*
8
* Definition:
9
* ===========
10
*
11
* REAL FUNCTION SASUM(N,SX,INCX)
12
*
13
* .. Scalar Arguments ..
14
* INTEGER INCX,N
15
* ..
16
* .. Array Arguments ..
17
* REAL SX(*)
18
* ..
19
*
20
*
21
*> \par Purpose:
22
* =============
23
*>
24
*> \verbatim
25
*>
26
*> SASUM takes the sum of the absolute values.
27
*> uses unrolled loops for increment equal to one.
28
*> \endverbatim
29
*
30
* Authors:
31
* ========
32
*
33
*> \author Univ. of Tennessee
34
*> \author Univ. of California Berkeley
35
*> \author Univ. of Colorado Denver
36
*> \author NAG Ltd.
37
*
38
*> \date November 2011
39
*
40
*> \ingroup single_blas_level1
41
*
42
*> \par Further Details:
43
* =====================
44
*>
45
*> \verbatim
46
*>
47
*> jack dongarra, linpack, 3/11/78.
48
*> modified 3/93 to return if incx .le. 0.
49
*> modified 12/3/93, array(1) declarations changed to array(*)
50
*> \endverbatim
51
*>
52
* =====================================================================
53
REAL
FUNCTION
sasum
(N,SX,INCX)
54
*
55
* -- Reference BLAS level1 routine (version 3.4.0) --
56
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
57
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
58
* November 2011
59
*
60
* .. Scalar Arguments ..
61
INTEGER
incx,n
62
* ..
63
* .. Array Arguments ..
64
REAL
sx(*)
65
* ..
66
*
67
* =====================================================================
68
*
69
* .. Local Scalars ..
70
REAL
stemp
71
INTEGER
i,m,mp1,nincx
72
* ..
73
* .. Intrinsic Functions ..
74
INTRINSIC
abs,mod
75
* ..
76
sasum
= 0.0e0
77
stemp = 0.0e0
78
IF
(n.LE.0 .OR. incx.LE.0) return
79
IF
(incx.EQ.1)
THEN
80
* code for increment equal to 1
81
*
82
*
83
* clean-up loop
84
*
85
m = mod(n,6)
86
IF
(m.NE.0)
THEN
87
DO
i = 1,m
88
stemp = stemp + abs(sx(i))
89
END DO
90
IF
(n.LT.6)
THEN
91
sasum
= stemp
92
return
93
END IF
94
END IF
95
mp1 = m + 1
96
DO
i = mp1,n,6
97
stemp = stemp + abs(sx(i)) + abs(sx(i+1)) +
98
$ abs(sx(i+2)) + abs(sx(i+3)) +
99
$ abs(sx(i+4)) + abs(sx(i+5))
100
END DO
101
ELSE
102
*
103
* code for increment not equal to 1
104
*
105
nincx = n*incx
106
DO
i = 1,nincx,incx
107
stemp = stemp + abs(sx(i))
108
END DO
109
END IF
110
sasum
= stemp
111
return
112
END
BLAS
SRC
sasum.f
Generated on Tue Sep 25 2012 16:27:01 for LAPACK by
1.8.1.1