MATLAB Answers

Euler's approximation for ODE

30 views (last 30 days)
MC
MC on 23 Sep 2019
Commented: darova on 23 Sep 2019
I want want to use MATLAB to implement Euler’s method with each step size h= 0.2,0.1,0.05 for 0≤t≤1 and plot the results in a single figure. I would like to also solve the ODE and plot the exact solution in the same in compare the two.
How do i fix this error:
Error: File: M1.m Line: 5 Column: 7
Invalid use of operator.
euler is a function i wrote.
f = @(t,y) t*y-y;
y0 = 0.5;
i = 0.2;
for i >= 0.05
t = 0:i:25;
[t,y1] = euler(f,t,y0);
i=i/2
plot(t,y1)
end
y2 = -1 ./ (t.^2/2 + 10);
plot(t,y2)
legend('Euler','Exact solution')
save(M1.fig)

  1 Comment

darova
darova on 23 Sep 2019
It's not Euler's method
[t,y1] = euler(f,t,y0);

Sign in to comment.

Answers (1)

Lucademicus
Lucademicus on 23 Sep 2019
Edited: Lucademicus on 23 Sep 2019
for i >= 0.05
This is not the correct way to define a for-loop.
Also, with the error message MATLAB tries to point you in the right direction, by telling you 1) what is not working, 2) where it is not working. I would want to advise you to take a look at what line number (and column number) MATLAB mentions and then looking in the documentation regarding the code you're using on that line.

  0 Comments

Sign in to comment.

Sign in to answer this question.