simulinkにおけるM-functionでのforループについて
14 views (last 30 days)
Show older comments
simulinkにおけるM-function内で以下例のように,forループを使ってある配列を作成したく思っています.
x = zeros();
for i = 1:10
x(i) = 10*i
end
しかし,以下のようにエラーが発生してしまいます.
”・インデックスが配列の次元を超えています。インデックス値 2 が、配列 'x' の有効範囲 [1-1] を超えています。コード生成では、end+1 を使用する場合を除き、インデックス付けによる配列の増加はサポートされません。”
代替の方法,もしくはエラーの解決方法をご教示いただけないでしょうか?
よろしくお願いいたします.
0 Comments
Accepted Answer
Shoumei
on 28 Mar 2025
x = zeros();
で作成している変数の要素数は1となっており、その後のForループのインデックスで存在しない要素にアクセスしているためエラーが生じています。
以下のように書き直すとエラーが解決すると思います。
x = zeros(10,1);
試してみて下さい。
More Answers (0)
See Also
Categories
Find more on 命名規則 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!