Save variable from a for loop

Hello everyone, I have a problem saving the variable TWR as a value, although I assigned it in the last step. Maybe someone can correct the code for me. Thanks!
R=[0.15,-0.1, 0.08, 0.02, -0.05];
%K1=10000;
%qt=19;
Lh=-0.1;
c=0;
Matrix=zeros(100,1);
for i=0.01:0.01:1
c1=c+i;
HPR=(1+c1*(-(R/Lh)));
TWR=prod(HPR(1:end,1:end));
Matrix(:,c)=TWR;
end
plot(Matrix,c1)

답변 (1개)

Ameer Hamza
Ameer Hamza 2020년 4월 16일
편집: Ameer Hamza 2020년 4월 16일

0 개 추천

try this
R=[0.15,-0.1, 0.08, 0.02, -0.05];
%K1=10000;
%qt=19;
Lh=-0.1;
c=1; % index must start from 1
Matrix=zeros(100,1);
for i=0.01:0.01:1
c1=c+i;
HPR=(1+c1*(-(R/Lh)));
TWR=prod(HPR(1:end,1:end));
Matrix(c)=TWR;
c = c+1; % index should increment by 1
end
plot(Matrix)

댓글 수: 4

Sandro Hantke
Sandro Hantke 2020년 4월 16일
Thank you Ameer, now it works!
Ameer Hamza
Ameer Hamza 2020년 4월 16일
Glad to be of help.
It is usually simpler and more robust to iterate over indices (rather than iterting over data values):
V = 0.01:0.01:1;
N = numel(V);
M = nan(1,N);
...
for k = 1:N
... do whatever with the data:
V(k)
... store data in output array:
M(k) = ...
end
Sandro Hantke
Sandro Hantke 2020년 4월 16일
Thanks Stephen for your comment. I will keep that in mind!

이 질문은 마감되었습니다.

태그

질문:

2020년 4월 16일

마감:

2021년 8월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by