MATLAB Function 次元について

10 views (last 30 days)
s
s on 6 Jan 2020
Commented: stozaki on 25 Jan 2020
Simulink内でMATLAB Function ブロック使用して演算しています。
画像のようにMATLAB Functionに入力すると
エラー内容
インデックスが行列の次元を超えています。配列 z は空であるため有効なインデックスを持ちません。
のようにエラーが発生しシミュレーションが実行できません。
次に、コメントアウトされている方(薄く表示されているA)の数値を使用すると、シミュレーションが実行されます。
この違いの原因が分かりません。どちらも出力されるデータ型はdouble型でした。20200106.PNG
  9 Comments
Etsuo Maeda
Etsuo Maeda on 9 Jan 2020
z = find(t_ppd>t_cr);
の一行前にブレークポイントを置いて
t_ppd>t_cr
の出力をコマンドウィンドウで確認してみてはどうでしょうか?
HTH
stozaki
stozaki on 25 Jan 2020
MATLAB Functionの入力引数は6つあります。一方、ブロックの入力ポートは1つなので、5つはパラメータという認識で宜しいでしょうか?
その場合、5つのパラメータはどの様な属性を設定されているのでしょうか? コードのデバッグを行う前に、前提として変数、パラメータの属性を明らかにして頂く必要があると思います。
もし、未定義のままですと、既定の属性設定のままなので、意図された動作と異なる可能性もあります。

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!