Next: DPROD, Previous: DIM, Up: Intrinsic Procedures [Contents][Index]
DOT_PRODUCT
— Dot product functionDOT_PRODUCT(VECTOR_A, VECTOR_B)
computes the dot product multiplication
of two vectors VECTOR_A and VECTOR_B. The two vectors may be
either numeric or logical and must be arrays of rank one and of equal size. If
the vectors are INTEGER
or REAL
, the result is
SUM(VECTOR_A*VECTOR_B)
. If the vectors are COMPLEX
, the result
is SUM(CONJG(VECTOR_A)*VECTOR_B)
. If the vectors are LOGICAL
,
the result is ANY(VECTOR_A .AND. VECTOR_B)
.
Fortran 95 and later
Transformational function
RESULT = DOT_PRODUCT(VECTOR_A, VECTOR_B)
VECTOR_A | The type shall be numeric or LOGICAL , rank 1. |
VECTOR_B | The type shall be numeric if VECTOR_A is of numeric type or LOGICAL if VECTOR_A is of type LOGICAL . VECTOR_B shall be a rank-one array. |
If the arguments are numeric, the return value is a scalar of numeric type,
INTEGER
, REAL
, or COMPLEX
. If the arguments are
LOGICAL
, the return value is .TRUE.
or .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