Next: OR, Previous: NULL, Up: Intrinsic Procedures

### 8.210 `NUM_IMAGES` — Function that returns the number of images

Description:
  Returns the number of images.
Standard:
  Fortran 2008 and later. With DISTANCE or FAILED argument, Technical Specification (TS) 18508 or later
Class:
  Transformational function
Syntax:
  `RESULT = NUM_IMAGES(DISTANCE, FAILED)`
Arguments:

  DISTANCE | (optional, intent(in)) Nonnegative scalar integer
  FAILED | (optional, intent(in)) Scalar logical expression

Return value:
  Scalar default-kind integer. If DISTANCE is not present or has value 0, the number of images in the current team is returned. For values smaller or equal distance to the initial team, it returns the number of images index on the ancestor team which has a distance of DISTANCE from the invoking team. If DISTANCE is larger than the distance to the initial team, the number of images of the initial team is returned. If FAILED is not present the total number of images is returned; if it has the value `.TRUE.`, the number of failed images is returned, otherwise, the number of images which do have not the failed status.
Example:

                INTEGER :: value[*]
                INTEGER :: i
                value = THIS_IMAGE()
                SYNC ALL
                IF (THIS_IMAGE() == 1) THEN
                  DO i = 1, NUM_IMAGES()
                    WRITE(*,'(2(a,i0))') 'value[', i, '] is ', value[i]
                  END DO
                END IF

See also:
  THIS_IMAGE, IMAGE_INDEX