# Help with a loop that computes at each step

1 view (last 30 days)
Lavorizia Vaughn on 13 Nov 2021
Commented: Lavorizia Vaughn on 14 Nov 2021
hi im doing an assignmenr where i have 5 different stepsizes that compose a row vector hs. i have 100/hs steps for which id like to compute the value th2 at each stepsize.
th1=1;
th2=1;
w1=0;
w2=0;
hs(1)=[0.05];
hs(2)=[0.05/2];
hs(3)=[0.05/4];
hs(4)=[0.05/8];
hs(5)=[1/1000];
th2s=[];
????????????
for i=1:N
k1= h*fpend(y);
k2=h*fpend(y + k1/2);
k3=h*fpend(y + k2/2);
k4= h*fpend(y + k3);
y = y + (k1 + 2*k2 + 2*k3 + k4) / 6;
end
th2s=[th2s,y(2)]
Jan on 13 Nov 2021
The instruction is nonsense: For k=1, the value of h = 0.05/2(k-1) is Inf.

Jan on 13 Nov 2021
hs = [0.05, 0.05/2, 0.05/4, 0.05/8, 1/1000];
for k = 1:numel(hs)
h = hs(k);
N = totalDuration / h; % ???
y = y0;
for i = 1:N
k1 = h * fpend(y);
k2 = h * fpend(y + k1/2);
k3 = h * fpend(y + k2/2);
k4 = h * fpend(y + k3);
y = y + (k1 + 2*k2 + 2*k3 + k4) / 6;
end
th2s(k) = y; % Why y(2)?
end
##### 1 CommentShowHide None
Lavorizia Vaughn on 14 Nov 2021
You helped me with the other but very similar thread. thanks a bunch. your help is much appreciated.

R2021a

### Community Treasure Hunt

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

Start Hunting!

Translated by