Simulink上での分散の計算

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

 Respuesta aceptada

交感神経優位なあかべぇ
交感神経優位なあかべぇ el 16 de Jun. de 2024

1 voto

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

Más respuestas (2)

Toshinobu Shintai
Toshinobu Shintai el 14 de Jun. de 2024

1 voto

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

1 voto

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

Categorías

Productos

Versión

R2023a

Etiquetas

Preguntada:

el 14 de Jun. de 2024

Comentada:

el 17 de Jun. de 2024

Community Treasure Hunt

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

Start Hunting!