summation of valuse in nested loops

2 ビュー (過去 30 日間)
Ali Kareem
Ali Kareem 2015 年 10 月 23 日
編集済み: Andrei Bobrov 2015 年 10 月 25 日
Hello,
I have three nested loop (I change from 1-10, J change from 1-20 and K change from 1-100) I saved the result from J,K loops in matrix (20,100). When loop went to I again I want to sum the old value with new value. For example
new A(1,1)=old A(1,1)+U(j,k) for new I loop.
I used below code and I do not know if it is correct. Please can you suggest new one or correct mine
A(20,100)=0
U(20,100)=0
for i=1:10
for j=1:20
for k=1:100
A(j,k)=A(j,k)+U(j,k)
end
end
end
  2 件のコメント
Star Strider
Star Strider 2015 年 10 月 23 日
Please go into more detail on what you intend with:
new A(1,1)=old A(1,1)+U(j,k) for new I loop.
What should the other elements of ‘A’ be? Do you intend:
new A(l,m)=old A(l,m)+U(j,k) for new I loop?
That could require four nested loops. MATLAB can certainly do that, but there could be more efficient ways than nested loops.
Ali Kareem
Ali Kareem 2015 年 10 月 23 日
編集済み: Ali Kareem 2015 年 10 月 24 日
Hi,
Thank you for your reply.
I want to save output from equation in matrix A(20,100) this is for loops (J,K). So this matrix A(20,100) will repeated for ten times. each time I want to add the output from old matrix to new one for all cell (each cell will add to same old cell) for all cell in all raw and column.
new A(1,1)=old A(1,1)+U(j,k) ....to .. new A(1,20)=old A(1,20)+U(j,k)
new A(100,1)=old A(100,1)+U(j,k) ... new A(100,20)=old A(100,20)+U(j,k)
A(20,100)=0
U(20,100)=0
z=3
for i=1:10
for j=1:20
for k=1:100
U(j,k)=z^2+sin(j)
A(j,k)=A(j,k)+U(j,k)
end
end
end
for I=1 I will get from (j,k) loops below matrix
A(1,1) A(1,2) A(1,3)…… A(1,100)
A(2,1) A(2,2) A(2,3)…… A(2,100)
A(20,1) A(20,2) A(20,3)…… A(20,100)
When I=2 I want to add each new cell like (A(1,1)) to old cell to new cell ( I mean for I repeated ten times then there will be 10 values for each cell like A(1,1) when I=1, then A(1,1) when I =2….and so on until I=10). I want to have summation for these values. (I mean by old the previous matrix when I=2 the previous matrix is when I =1 and so on until I=10)
A(1,1) A(1,2) A(1,3)…… A(1,100)
A(2,1) A(2,2) A(2,3)…… A(2,100)
Thank you so much A(20,1) A(20,2) A(20,3)…… A(20,100)

サインインしてコメントする。

回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2015 年 10 月 24 日
編集済み: Andrei Bobrov 2015 年 10 月 24 日
z = 3;
ii = 10;
jj = 20;
k = 100;
z2 = z^2;
A = (z2+sin(1:jj)'*ones(1,k))*ii;
  6 件のコメント
Ali Kareem
Ali Kareem 2015 年 10 月 24 日
編集済み: Ali Kareem 2015 年 10 月 24 日
Hi,
Thank you for your reply. U,VCo constant. Xc,Yc,Y arrays.
Regards
Andrei Bobrov
Andrei Bobrov 2015 年 10 月 25 日
編集済み: Andrei Bobrov 2015 年 10 月 25 日
Hi Ali! What is the size of your arrays (Xc,Yc,Y)?
:)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by