0

これは以前はかなり些細なエラーでしたが、ここでは見られません。

 >> rmatrix = zeros(size(Rx,1), size(Rx,2));
 for k = 1:size(Rx,1)
     for l = 1:size(Rx,2)
         rmatrix(k,l) = [Rx(k,l).^2, (Ry(k,l)).^2];
     end
 end
??? Subscripted assignment dimension mismatch.
4

3 に答える 3

9
rmatrix(k,l) = [Rx(k,l).^2, (Ry(k,l)).^2];

1x2マトリックスをマトリックス1x1に割り当てようとしています

おそらく、次のことを行うつもりでした。

rmatrix = zeros(size(Rx,1), size(Rx,2),2);
for k = 1:size(Rx,1)
    for l = 1:size(Rx,2)
        rmatrix(k,l,:) = [Rx(k,l).^2, (Ry(k,l)).^2];
    end
end

//編集: これを使えばもっと簡単にできます:

rmatrix = cat(3,Rx,Ry).^2
于 2012-07-03T14:28:25.163 に答える
2
 >> rmatrix = zeros(size(Rx,1), size(Rx,2));
 for k = 1:size(Rx,1)
     for l = 1:size(Rx,2)
         rmatrix(k,l) = [Rx(k,l).^2, (Ry(k,l)).^2];  % CHECK THIS LINE
     end
 end
??? Subscripted assignment dimension mismatch.
于 2012-07-03T14:27:49.047 に答える
1

問題は確かにこれですか??

    rmatrix(k,l) = [Rx(k,l).^2, (Ry(k,l)).^2]; 

配列のスカラー要素にベクトルを割り当てます。これは問題ではありませんか?

于 2012-07-03T14:29:10.833 に答える