Spec-Zone.ru › GNU Fortran 7

9.266 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-7.2.0/gfortran/THIS_005fIMAGE.html

Spec-Zone.ru

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