Cumulative Sum
チャネル、列または行の要素の累積和

ライブラリ:
DSP System Toolbox /
Math Functions /
Math Operations
説明
Cumulative Sum ブロックは入力の指定した次元に沿って、または時間の経過 (累積和) 全体で累積和を計算します。
端子
入力
入力。ベクトルとして指定するか、実数値または複素数値を含む行列入力として指定します。
この端子は、Reset port パラメーターを [なし] 以外の値に設定するまでは名前なしになります。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
複素数のサポート: あり
オプションのリセット端子 [Rst] はスカラー値を受け入れます。この値は boolean を含む任意の組み込み Simulink® データ型にすることができます。[Rst] 端子への入力レートは入力データ信号のレート以下でなければなりません。[Rst] 端子への入力のサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。
この端子は、Reset port パラメーターを [なし] 以外の値に設定するまでは名前なしになります。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean
出力
入力の累積和。ベクトルまたは行列として指定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
パラメーター
メイン
累積の総和を計算する対象の次元を指定します。[チャネル (累積和)]、[列] または [行] に沿って和を計算するよう選択できます。詳細については、次の節を参照してください。
入力のチャネルに沿って累積和を計算するときにブロックが入力を処理する方法を指定します。これらのパラメーターは、以下のいずれかのオプションに設定することができます。
チャネルとしての列 (フレーム ベース)— ブロックは入力の各列を別々のチャネルとして扱います。チャネルとしての要素 (サンプル ベース)— ブロックは入力の各要素を別々のチャネルとして扱います。
依存関係
このパラメーターは、Sum input along パラメーターを [チャネル (累積和)] に設定した場合にのみ使用できます。
ブロックにチャネルに沿った和をリセットさせるリセット イベントを決定します。Rst 端子への入力レートは入力データ信号のレート以下でなければなりません。[Rst] 端子への入力のサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。詳細については、累積和のリセットを参照してください。
依存関係
このパラメーターは、Sum input along パラメーターを [チャネル (累積和)] に設定した場合にのみ使用できます。
データ型
メモ
浮動小数点の継承は、このペインで定義されるデータ型の設定よりも優先されます。入力が浮動小数点の場合、ブロックはこれらの設定を無視します。すべての内部データ型は浮動小数点になります。
このパラメーターをオンにすると、ブロックは固定小数点演算の結果を飽和させます。このパラメーターをオフにすると、ブロックは固定小数点演算の結果をラップします。saturate および wrap の詳細については、固定小数点演算のオーバーフロー モードを参照してください。
[アキュムレータ] は、Cumulative Sum ブロックでの累積演算の出力のデータ型を指定します。このブロックのアキュムレータ データ型の使い方を示す図については、固定小数点データ型を参照してください。
継承: 入力と同じ— ブロックはアキュムレータのデータ型を入力のデータ型と同じになるように指定します。fixdt([],16,0)— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[アキュムレータ] のデータ型は、[データ型アシスタント] を使用して設定することもできます。[データ型アシスタントを表示] ボタン
をクリックします。
詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
[出力] は、Cumulative Sum ブロックの出力のデータ型を指定します。出力データ型の詳細については、固定小数点データ型を参照してください。
継承: 入力と同じ— ブロックは出力のデータ型を入力のデータ型と同じになるように指定します。継承: アキュムレータと同じ— ブロックは出力のデータ型をアキュムレータのデータ型と同じになるように指定します。fixdt([],16,0)— ブロックは語長が 16 ビットで小数部の長さが 0 である自動符号付きの 2 進小数点のスケーリングされた固定小数点データ型を指定します。
[出力] のデータ型は、[データ型アシスタント] を使用して設定することもできます。[データ型アシスタントを表示] ボタン
をクリックします。
データ型アシスタントの詳細については、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
ブロックが出力可能な最小値を指定します。Simulink ソフトウェアでは、この最小値を使用して次を行います。
シミュレーション範囲のチェック。信号範囲の指定 (Simulink)を参照してください。
固定小数点データ型の自動スケーリング。
ブロックが出力可能な最大値を指定します。Simulink ソフトウェアでは、この最大値を使用して次を行います。
シミュレーション範囲のチェック。信号範囲の指定 (Simulink)を参照してください。
固定小数点データ型の自動スケーリング。
ブロック ダイアログ ボックスで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
Sum input along パラメーターを [チャネル (累積和)] に設定した場合、ブロックは各入力チャネルで要素の累積和を計算します。現在の入力の累積和は、以前のすべての入力の累積和も考慮します。このモードでは、Input processing パラメーターの値も指定しなければなりません。
[入力処理] パラメーターを次に設定した場合、次のようになります。
チャネルとしての列 (フレーム ベース)–– ブロックは現在の入力の各列に沿って累積和を計算します。チャネルとしての要素 (サンプル ベース)–– ブロックは時間の経過に伴う入力の各要素の累積和を計算します。
入力の各列の累積和の計算
[入力処理] パラメーターを [チャネルとしての列 (フレーム ベース)] に設定した場合、ブロックは各入力列を独立したチャネルとして扱います。次の図と方程式で説明されるように、出力には次のような特性があります。
最初の出力の 1 行目は最初の入力の 1 行目と同じです。
後続の各出力の 1 行目は、現在の入力の 1 行目 (時間 t) と、前の出力の最終行 (時間 t - Tf、ここで Tf はフレーム周期) の和です。
出力は入力と同じサイズ、次元、データ型および実数/複素数をもちます。
M 行 N 列の行列入力 u が与えられた場合、出力 y は 1 行目に次の要素をもつ M 行 N 列の行列になります。

入力の各要素に対する累積和の計算
[入力処理] パラメーターを [チャネルとしての要素 (サンプル ベース)] に設定した場合、ブロックは入力行列の各要素を独立したチャネルとして扱います。以下の図と方程式が示すように、出力には次のような特性があります。
最初の出力は最初の入力と同じです。
後続の各出力は、現在の入力 (時間 t) と、前の出力 (時間 t - Ts、ここで Ts はサンプル周期) の和になります。
出力は入力と同じサイズ、次元、データ型および実数/複素数をもちます。
M 行 N 列の行列入力 u が与えられた場合、出力 y は次の要素をもつ M 行 N 列の行列になります。

累積和の計算中に、オプションの Rst 端子でリセット イベントが検出されるたびに累積和をリセットするようにブロックを構成することができます。[Rst] 端子への入力レートは入力データ信号のレート以下でなければなりません。[Rst] 端子への入力のサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。リセットのサンプル時間は、入力サンプル時間の正の整数倍でなければなりません。[Rst] 端子への入力は boolean にすることができます。
ブロックでのサンプルベース処理の実行中にリセット イベントが発生した場合、ブロックは現在の出力を現在の入力の値に初期化します。ブロックでのフレームベース処理の実行中にリセット イベントが発生した場合、ブロックは現在の出力の 1 行目を現在の入力の 1 行目の値に初期化します。
Reset port パラメーターには次のいずれかのリセット イベントを指定できます。
なし— [Rst] 端子を無効にします。立ち上がりエッジ— Rst の入力が次のいずれかを行うときにリセット操作をトリガーします。負の値から正の値またはゼロに立ち上がる
ゼロから正の値へ立ち上がる。この場合、立ち上がりは負の値からゼロへの立ち上がりと連続していません

立ち下がりエッジ— Rst の入力が次のいずれかを行うときにリセット操作をトリガーします。正の値から負の値またはゼロに立ち下がる
ゼロから負の値に立ち下がる。この場合、立ち下がりは正の値からゼロへの立ち下りと連続していません

両エッジ— [Rst] の入力が[立ち上がりエッジ]または[立ち下がりエッジ]の場合にリセット操作をトリガーします。非ゼロのサンプル— [Rst] 入力が非ゼロの各サンプル時間でリセット操作をトリガーします。
メモ
Simulink [マルチタスク] モードでシミュレーションを実行する場合、リセット信号のサンプル レイテンシは 1 つになります。ブロックでリセット イベントが検出されると、ブロックがリセットを適用する前にリセット端子のレートで 1 サンプル分の遅延が発生します。レイテンシと Simulink タスク モードの詳細については、Excess Algorithmic Delay (Tasking Latency)と時間ベースのスケジューリングとコード生成 (Simulink Coder)を参照してください。
Sum input along パラメーターを [列] に設定すると、ブロックは入力の各列の累積和を計算します。このモードでは、現在の累積和は以前の入力の累積和に依存しません。
y = cumsum(u) % Equivalent MATLAB code
出力は入力と同じサイズ、次元、データ型および実数/複素数をもちます。m 番目の出力行は入力の最初の m 行の和です。
M 行 N 列の入力 u が与えられた場合、出力 y は j 番目の列に次の要素をもつ M 行 N 列の行列になります。
列に沿って加算する場合、ブロックは長さ M の方向性をもたないベクトルの入力を M 行 1 列の列ベクトルとして扱います。

Sum input along パラメーターを [Rows] に設定すると、ブロックは行の要素の累積和を計算します。このモードでは、現在の累積和は以前の入力の累積和に依存しません。
y = cumsum(u,2) % Equivalent MATLAB code
出力は入力と同じサイズ、次元およびデータ型をもちます。n 番目の出力列は入力の最初の n 列の和です。
M 行 N 列の入力 u が与えられた場合、出力 y は i 番目の行に次の要素をもつ M 行 N 列の行列になります。
行に沿って加算する場合、ブロックは長さ N の方向性をもたないベクトル入力を 1 行 N 列の行ベクトルとして扱います。

次の図は、Cumulative Sum ブロック内で固定小数点信号に使用されるデータ型を示します。

アキュムレータおよび出力データ型をブロック ダイアログ ボックスで設定することができます。
拡張機能
生成されたコードは特定の条件下で関数 memcpy または関数 memset (string.h) に依存します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2006a より前に導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)