# Euler Method without using ODE solvers such as ode45

14 views (last 30 days)

Show older comments

I am trying to write a code that will solve a first order differential equation using Euler's method. I do not want to use an ode solver but rather would like to use numerical methods which allow me to calculate slope (k1, k2 values, etc). I am given an equation with two different step values. I am not sure how to begin to write this in MATLAB. I have solved the equation by hand and am now trying to write a code that solves that equation.

The equation to be used is y’ +2y = 2 – e -4t.

y(0) = 1, which has an exact solution:

y(t) = 1 + 0.5 e -4t - 0.5 e -2t .

I did the following to solve numerically: 1+(0.5e^-4t) - (0.5e^-2(0)) y_n+1=1+0.1 and y_n+1=1+1(.001)

The step sizes are 0.1 and 0.001. (so my h in this example). The t values range from 0.1 to 5.0.

Any help is appreciated even if its an example pseudocode. Thank you

##### 0 Comments

### Accepted Answer

Amit
on 8 Feb 2014

Edited: Amit
on 8 Feb 2014

Given the equation:y' + 2y = 2 - 1e-4t The approximation will be: y(t+h) = y(t) +h*(- 2*y(t)+ 2 - e(-4t))

To write this: EDIT

y = 1; % y at t = 0

h = 0.001;

t_final = 0.1;

t = 0;

while (t < t_final)

y = y +h*(- 2*y+ 2 - exp(-4*t));

t = t + h;

end

##### 11 Comments

James Tursa
on 20 Sep 2016

### More Answers (0)

### See Also

### Categories

### Community Treasure Hunt

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

Start Hunting!