Euler's approximation for ODE
    12 views (last 30 days)
  
       Show older comments
    
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)
Answers (1)
  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.
See the documentation for the correct syntax: https://mathworks.com/help/releases/R2018b/matlab/ref/for.html?searchHighlight=for&s_tid=doc_srchtitle
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
See Also
Categories
				Find more on Ordinary Differential Equations in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

