What changes do i need to make so my matrix is not overwritten?

1 回表示 (過去 30 日間)
A K
A K 2016 年 10 月 18 日
編集済み: Walter Roberson 2016 年 10 月 18 日
I have the following code it runs fine, note where i=1; i want to change it to i=1:3, but i want to store the individual 3 matrices separately. What changes should i make?
Z=ones(n,no_of_stages);
for i=1;
for k=1:no_of_stages
M(k,k)=diag(-phi(i,k));
for d=2:no_of_stages
M(d,d-1)=diag(abs_coeff(i,d));
for r=1:no_of_stages-1;
M(r,r+1)=diag(Z(i,r));
end
end
end
end

採用された回答

Walter Roberson
Walter Roberson 2016 年 10 月 18 日
Use a cell array indexed by i
  2 件のコメント
A K
A K 2016 年 10 月 18 日
The code creates a tri-diagonal matrix, do u mean i should ad another line saying M(i)=M??? so M(1) is the first matrix, M(2) is the second.
Walter Roberson
Walter Roberson 2016 年 10 月 18 日
編集済み: Walter Roberson 2016 年 10 月 18 日
Z=ones(n,no_of_stages);
for i=1;
clear tM
for k=1:no_of_stages
tM(k,k)=diag(-phi(i,k));
for d=2:no_of_stages
tM(d,d-1)=diag(abs_coeff(i,d));
for r=1:no_of_stages-1;
tM(r,r+1)=diag(Z(i,r));
end
end
end
M{i} = tM;
end

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeOperators and Elementary Operations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by