Adds the elements of ARRAY along dimension DIM if the corresponding element in MASK is TRUE
.
Fortran 95 and later
Transformational function
RESULT = SUM(ARRAY[, MASK]) |
RESULT = SUM(ARRAY, DIM[, MASK]) |
ARRAY | Shall be an array of type INTEGER , REAL or COMPLEX . |
DIM | (Optional) shall be a scalar of type INTEGER with a value in the range from 1 to n, where n equals the rank of ARRAY. |
MASK | (Optional) shall be of type LOGICAL and either be a scalar or an array of the same shape as ARRAY. |
The result is of the same type as ARRAY.
If DIM is absent, a scalar with the sum of all elements in ARRAY is returned. Otherwise, an array of rank n-1, where n equals the rank of ARRAY, and a shape similar to that of ARRAY with dimension DIM dropped is returned.
PROGRAM test_sum INTEGER :: x(5) = (/ 1, 2, 3, 4 ,5 /) print *, SUM(x) ! all elements, sum = 15 print *, SUM(x, MASK=MOD(x, 2)==1) ! odd elements, sum = 9 END PROGRAM
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.1.0/gfortran/SUM.html