Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - 日本語


prod

配列要素の積

呼び出し手順

y=prod(x)
y=prod(x,orientation)
y=prod(x,outtype)
y=prod(x,orientation,outtype)

引数

x

実数, 複素数, 論理値, 多項式または有理数の配列

orientation

以下のどちらかを指定します

  • 文字列で,使用可能な値は "*", "r", "c" または "m"

  • 正の整数値

outtype

文字列で, 使用可能な値は "native" または "double".

y

スカラーまたは配列

説明

配列xに関して, y=prod(x)はスカラー yxの全要素の積を返します.

y=prod(x,orientation)orientationで指定された方向の xの積をyに返します:

  • orientationが1または "r"の場合:

    { y(\mathbf{1},j) = \prod_{\mathbf{i}} x(\mathbf{i},j)}

    または

    y(\mathbf{1},j,k,\ldots) = \prod_{\mathbf{i}} x(\mathbf{i},j,k,\ldots)

  • orientationが 2 または "c" の場合:

    y(i,\mathbf{1}) = \prod_{\mathbf{j}} x(i,\mathbf{j})

    または

    y(i,\mathbf{1},k,\ldots) = \prod_{j} x(i,\mathbf{j},k,\ldots)

  • orientation が n の場合:

    y(i_1,\ldots,i_{n-1},\mathbf{1},i_{n+1},\ldots) = \prod_{\mathbf{i_n}} x(i_1,\ldots,i_{n-1},\mathbf{i_n},i_{n+1},\ldots)

  • y=prod(x,"*")y=prod(x) と等価です.

  • y=prod(x,"m")y=prod(x,orientation) と等価です. ただし,orientationxの1より大きい最初の次元の添字です.

outtype引数は積算の動作を規定します:

  • float, 多項式, 有理数の配列の場合, 評価は常に浮動小数点演算により行われます. "double""native" オプションは等価です.

  • 整数の配列の場合,

    outtype="native"の時, 評価は整数演算(モジュロ 2^b, ただし b は使用されるビット数) により行われます.

    outtype="double"の時, 評価は浮動小数点演算により行われます.

    デフォルト値は outtype="native"です.

  • 論理値の配列の場合,

    outtype="native"の時, 評価は論理値演算(* は &で置換されます)で行われます.

    outtype="double"の時, 評価は浮動小数点演算(%t は1, %f は 0 で置換されます) により行われます.

    デフォルト値は, outtype="double"です. このオプションは Matlabとの互換性のために使用されます.

This function applies with identical rules to sparse matrices.

A=[1,2;3,4];
prod(A)
prod(A,1)

I=uint8([2 95 103;254 9 0])
prod(I) //native evaluation
prod(I,"double")
prod(I,2,"double")

s=poly(0,"s");
P=[s,%i+s;s^2,1];
prod(P),
prod(P,2)

B=[%t %t %f %f];
prod(B) //evaluation in float
prod(B,"native") //similar to and(B)

参照

  • cumprod — 配列要素の累積積
  • sum — 配列要素の合計
Report an issue
<< or matrixoperations sign >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Mar 07 09:28:43 CET 2023