0

A と B のラベルが付いたセルとして 2 セットの行列があります。

参照用の一般的な問題:

マトリックス A の 5 つのセル (それぞれが 9x9 マトリックスで構成されています) と B の 20 個のセル (これも 9x9 マトリックスで構成されています) があります。

私はまだそれらを次のパターンにする方法を見つけようとしています:

A{1}  B{1}  B{2}  B{3}  B{4}
B{5}  A{2}  B{6}  B{7}  B{8}
B{9}  B{10} A{3}  B{11} B{12}
B{13} B{14} B{15} A{4}  B{16}
B{17} B{18} B{19} B{20} A{5}

このより大きな行列は、時間の経過とともに繰り返されます: 5 回の反復としましょう。したがって、時刻 1 のセル A{1} のデータに対して A{1}(:,:,1) を使用して参照しています。

*私の質問は私が遭遇したものです: *

これはループで動作しますが、

 for j=1:t
    A{1}(:,:,j+1) = B{1}(:,:,j)*A{1}(:,:,j)
 end

以下が機能しないのはなぜですか?

 A{1}(:,:,2:t)=B{1}(:,:,1:t-1)*A{1}(:,:,1:t-1);

助けてくれた人たちに乾杯。

4

1 に答える 1

0

.*おそらく、の代わりにを使用して要素ごとの乗算を実行する必要があり*ます。ループを使用した例では、行列が特定の時間に正方形であり、コードがエラーを返さないため、実際に行列の乗算を行っていることに気付かない場合があります。

于 2011-11-30T17:50:28.303 に答える