Simulink上での分散の計算

Simulink上で,時刻tの時点において,tからNステップ分前までのデータを用いてデータの分散を計算したく思っています。
良い方法をご教示いただけないでしょうか?

 Risposta accettata

1 voto

Tapped Delayブロックを使用すれば、現在時刻からNstep前までの値の配列を取得できます。
この配列から分散を計算できます。

Più risposte (2)

Toshinobu Shintai
Toshinobu Shintai il 14 Giu 2024

1 voto

以下の質問に回答されているように、MATLAB Functionというブロックを用いてリングバッファを構築すると、現在時刻からNstep前までの値を配列に格納できます。
この配列に対して、平均を計算して、各要素から引き算したものの2乗和を計算し、Nで割れば分散を得ることができます。
Hiroshi Iwamura
Hiroshi Iwamura il 16 Giu 2024

1 voto

DSP System Toolbox をお持ちであれば、
Buffer ブロックを使うか、
Moving Variance ブロックでウィンドウ幅を指定することでもできます。
Varianceブロックでもできますが、こちらの "running" モードは廃止予定です。

Categorie

Scopri di più su モデル化 in Centro assistenza e File Exchange

Prodotti

Release

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!