Spec-Zone.ru › GNU Fortran 10

9.269 THIS_IMAGE — Функция, возвращающая индекс коподстроки этого изображения

Описание:

Возвращает коподстроку для этого изображения.

Стандарт:

Fortran 2008 и более поздние версии. С аргументом DISTANCE, Техническое задание (TS) 18508 или более поздние версии.

Класс:

Функция преобразования

Синтаксис:
RESULT = THIS_IMAGE()
RESULT = THIS_IMAGE(DISTANCE)
RESULT = THIS_IMAGE(COARRAY [, DIM])
Аргументы:
DISTANCE (необязательно, intent(in)) Неотрицательное скалярное целое число (не допускается вместе с COARRAY).
COARRAY Массив коматриц любого типа (необязательно; если присутствует DIM, обязательно).
DIM дефолтная скалярная целочисленная переменная (необязательно). Если присутствует, DIM должна быть от единицы до ранга коматрицы COARRAY.
Значение, возвращаемое функцией:

Целочисленный тип по умолчанию. Если COARRAY не задан, оно скалярное; если DISTANCE не задан или имеет значение 0, его значение равно индексу изображения на вызывающем изображении для текущей команды, для значений, меньших или равных расстоянию до начальной команды, оно возвращает индекс изображения на команде предка, имеющей расстояние DISTANCE от вызывающей команды. Если DISTANCE больше, чем расстояние до начальной команды, возвращается индекс изображения начальной команды. В противном случае, когда COARRAY задан, если DIM не задан, возвращается одномерный массив с элементами корранга, содержащий коподстроки для COARRAY, определяющие вызывающее изображение. Если DIM задан, возвращается скаляр со значением элемента DIM от THIS_IMAGE(COARRAY).

Пример:
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

! Check whether the current image is the initial image
IF (THIS_IMAGE(HUGE(1)) /= THIS_IMAGE())
  error stop "something is rotten here"
См. также:

NUM_IMAGES, IMAGE_INDEX

Следующее: TIME, Предыдущее: TANH, Вверх: Встроенные процедуры [Содержание][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.2.0/gfortran/THIS_005fIMAGE.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API