Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Save variable from a for loop

1 vue (au cours des 30 derniers jours)
Sandro Hantke
Sandro Hantke le 16 Avr 2020
Clôturé : MATLAB Answer Bot le 20 Août 2021
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)

Réponses (1)

Ameer Hamza
Ameer Hamza le 16 Avr 2020
Modifié(e) : Ameer Hamza le 16 Avr 2020
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 commentaires
Stephen23
Stephen23 le 16 Avr 2020
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 le 16 Avr 2020
Thanks Stephen for your comment. I will keep that in mind!

Cette question est clôturée.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by