DOT_PRODUCT

変形組込み関数 (総称):数値型または論理型のベクトル (次元数 1 の配列) の内積を実行します。

形式

result = DOT_PRODUCT (vector_a, vector_b)

vector_a
(入力) 数値型 (整数,実数,または複素数) または論理型の次元数 1 の配列。

vector_b
(入力) vector_a が数値型の場合は数値型,vector_a が論理型の場合は論理型の次元数 1 の配列。vector_a と同じ大きさでなくてはなりません。

結果

結果は,vector_avector_b の型に依存する型を持つスカラです。

vector_a が整数型または実数型の場合,結果の値は SUM(vector_a*vector_b) です。

vector_a が複素数型の場合,結果の値は SUM(CONJG(vector_b)*vector_b) です。

vector_a が論理型の場合,結果の値は ANY(vector_a .AND. vector_b) です。

いずれかの次元数 1 の配列の大きさがゼロである場合,結果は,配列が数値型の場合はゼロ,論理型の場合は偽です。

互換性

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

関連情報

MATMULPRODUCTTRANSPOSE

DOT_PRODUCT ((/1, 2, 3/), (/3, 4, 5/)) の値は 26 です。これは次のように計算されます

	((1 x 3) + (2 x 4) + (3 x 5))= 26

DOT_PRODUCT ((/ (1.0, 2.0), (2.0, 3.0) /), (/ (1.0,1.0), (1.0, 4.0) /)) の値は (17.0, 4.0) です。

DOT_PRODUCT ((/ .TRUE., .FALSE. /), (/ .FALSE., .TRUE. /)) の値は偽です。

以下に他の例を示します。

	I = DOT_PRODUCT((/1,2,3/), (/4,5,6/))	! 値 32 を返します。