17.4 Sums and Products

Last-modified: 2025-04-02 (水) 21:51:09

17.4 和と積

: y = sum (x)

: y = sum (x, dim)

: y = sum (…, "native")

: y = sum (…, "double")

: y = sum (…, "extra")

次元dimに沿った要素の合計。

dimが省略された場合、デフォルトで最初の非シングルトン次元に設定されます。

オプションの"type"入力は、計算に使用される変数のクラスを決定します。デフォルトでは、浮動小数点入力 (double または single) に対する演算はネイティブ データ型で実行され、整数、論理、および文字データ型に対する演算は double を使用して実行されます。引数"native"が指定されている場合、演算は元の引数と同じ型で実行されます。

例えば:

sum ([true, true])
  ⇒ 2
sum ([true, true], "native")
  ⇒ true

が指定されている場合は"double"、単精度入力の場合でも倍精度で合計が実行されます。

倍精度入力の場合、"extra"オプションは単純な合計よりも正確なアルゴリズムを使用します。単精度入力の場合、"extra"は と同じです"double"。他のすべてのデータ型では"extra"効果はありません。

See also: cumsum, sumsq, prod.

: y = prod (x)

: y = prod (x, dim)

: y = prod (…, "native")

: y = prod (…, "double")

次元dimに沿った要素の積。

dimが省略された場合、デフォルトで最初の非シングルトン次元に設定されます。

オプションの"type"入力は、計算に使用される変数のクラスを決定します。引数"native"が指定されている場合、演算はデフォルトの double 型ではなく、元の引数と同じ型で実行されます。

例えば:

prod ([true, true])
  ⇒ 1
prod ([true, true], "native")
  ⇒ true

逆に、"double"が指定されている場合は、単精度入力の場合でも倍精度で演算が実行されます。

See also: cumprod, sum.

: y = cumsum (x)

: y = cumsum (x, dim)

: y = cumsum (…, "native")

: y = cumsum (…, "double")

次元dimに沿った要素の累積合計。

dimが省略された場合、デフォルトで最初の非シングルトン次元に設定されます。例:

cumsum ([1, 2; 3, 4; 5, 6])
  ⇒  1   2
      4   6
      9  12

"native"オプションパラメータおよび の説明については"double"、を参照してくださいsum。

See also: sum, cumprod.

: y = cumprod (x)

: y = cumprod (x, dim)

次元dimに沿った要素の累積積。

dimが省略された場合、デフォルトで最初の非シングルトン次元に設定されます。例:

cumprod ([1, 2; 3, 4; 5, 6])
  ⇒  1   2
      3   8
     15  48

See also: prod, cumsum.

: y = sumsq (x)

: y = sumsq (x, dim)

次元dimに沿った要素の二乗の合計。

dimが省略された場合、デフォルトで最初の非シングルトン次元に設定されます。

この関数は概念的には計算と同等である

sum (x .* conj (x), dim)

ただし、メモリ使用量が少なくなり、x がconj実数の場合の呼び出しを回避できます。

See also: sum, prod.