Spec-Zone.ru › GNU Fortran 11

9.87 DOT_PRODUCT — Функция скалярного произведения

Описание:

DOT_PRODUCT(VECTOR_A, VECTOR_B) вычисляет скалярное произведение двух векторов VECTOR_A и VECTOR_B. Оба вектора могут быть числовыми или логическими и должны быть массивами ранга один и одинакового размера. Если векторы INTEGER или REAL, результат SUM(VECTOR_A*VECTOR_B). Если векторы COMPLEX, результат SUM(CONJG(VECTOR_A)*VECTOR_B). Если векторы LOGICAL, результат ANY(VECTOR_A .AND. VECTOR_B).

Стандарт:

Fortran 90 и более поздние версии

Класс:

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

Синтаксис:

RESULT = DOT_PRODUCT(VECTOR_A, VECTOR_B)

Аргументы:
VECTOR_A Тип должен быть числовым или LOGICAL, ранг 1.
VECTOR_B Тип должен быть числовым, если VECTOR_A числового типа, или LOGICAL если VECTOR_A типа LOGICAL. VECTOR_B должен быть массивом ранга один.
Возвращаемое значение:

Если аргументы числовые, возвращаемое значение — скаляр числового типа, INTEGER, REAL, или COMPLEX. Если аргументы LOGICAL, возвращаемое значение .TRUE. или .FALSE..

Пример:
program test_dot_prod
    integer, dimension(3) :: a, b
    a = (/ 1, 2, 3 /)
    b = (/ 4, 5, 6 /)
    print '(3i3)', a
    print *
    print '(3i3)', b
    print *
    print *, dot_product(a,b)
end program test_dot_prod

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

Spec-Zone.ru

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