CO_SUM — Sum of values on the current set of images#
-
CO_SUM(A, RESULT_IMAGE, STAT, ERRMSG)#
CO_SUM
sums up the values of each element ofA
on all images of the current team. IfRESULT_IMAGE
is present, the summed-up values are returned inA
on the specified image only and the value ofA
on the other images become undefined. IfRESULT_IMAGE
is not present, the value is returned on all images. If the execution was successful andSTAT
is present, it is assigned the value zero. If the execution failed,STAT
gets assigned a nonzero value and, if present,ERRMSG
gets assigned a value describing the occurred error.- Parameters:
A – shall be an integer, real or complex variable, which has the same type and type parameters on all images of the team.
RESULT_IMAGE – (optional) a scalar integer expression; if present, it shall have the same value on all images and refer to an image of the current team.
STAT – (optional) a scalar integer variable
ERRMSG – (optional) a scalar character variable
- Standard:
Technical Specification (TS) 18508 or later
- Class:
Collective subroutine
- Syntax:
CALL CO_SUM(A [, RESULT_IMAGE, STAT, ERRMSG])
- Example:
program test integer :: val val = this_image () call co_sum (val, result_image=1) if (this_image() == 1) then write(*,*) "The sum is ", val ! prints (n**2 + n)/2, ! with n = num_images() end if end program test
- See also:
CO_MAX — Maximal value on the current set of images, CO_MIN — Minimal value on the current set of images, CO_REDUCE — Reduction of values on the current set of images, CO_BROADCAST — Copy a value to all images the current set of images