質問: outportブロックからsimoutコマンドを使ってワークスペースから値取得すると計算過程でエラーが出ます outportブロックからsimoutコマンドを使ってワークスペースから値を取得すると計算でできずに 下記のようなエラーが出ます。 エラー: ^ 入力はスカラーと正方行列でなければなりません。 power を要素ごとに計算するには、代わりに power (.^) を使用してください。 ^ の部分を .^ にも変えましたが結果は変わりませんでした。 ワークスペースに書き出される行列がそろっていないために 計算できていないと思われるですが、エラーの意味の解釈はあっているでしょうか。 また、ワークスペースにoutportブロックから値を送る時に 例えば、 10×1 の行列を 1×10 の行列にする方法が分かりません。
回答: 当初の質問から若干逸れてきていると思いますので、一旦整理しますね。 ・質問 以下のように、for文を使って行列bの要素数分だけループを回した時にエラーになる。 for i=1:length(b) c = c(i,1) end ・回答 初回のループ実行時に c の要素数は必ず1になってしまいますので、 2回目以降のループでインデックスが2以上になった場合、エラーとなります。行列 c から一時的に要素を抽出して演算したい場合は別の変数定義して使ってみてください。