-1

私は MATLAB を初めて使用します。「A」で示される次の二重和を解きたいと思います。

A= sigma(j=1..n)sigma(k=1..m)x1_ik((x2_ijk - x3_ij(k-1))^2)

ループがソリューションまたは他の何かを解決するための良い方法であることを理解していません。Matlab には二重加算のための関数が組み込まれていないようです。私が二重合計に使用しているもの:

sum2=0;
  for i=1:10
      for j=1:10  
         sum2=sum2+(i*j);
       end
   end 

助けてくれてありがとう。

4

1 に答える 1

1

ベクトル化されたコードは、多くの場合、Matlab の方が高速です。ループは次のようにベクトル化できます。

vec1 = 1:10;
vec2 = 1:10;

mat1 = repmat(vec1',1,length(vec2));
mat2 = repmat(vec2,length(vec1),1);

sum(sum(mat1.*mat2))
于 2013-03-14T01:52:15.183 に答える