clear

clc

y(1)=2;

yanal(1)=2

err(1)=0;

t(1);

delt=0.5;

for i = 2:15

    dydt = 4*exp(0.8*t(i-1)) - 0.5*y(i-1);

    y(i) = y(i-1) + dydt *delt

    t(i) = t(i-1) + delt;

    yanal(i) = 3.07923*exp(0.8*t(i))- 3.076923*exp(-0.5*t(i))+2*exp(-.5*t(i));

    err(i) = 100* (yanal(i) - y(i))/yanal(i)

end

 

disp( 'time   y   yanaly   error')

[t'  y'  yanal'  err']

 

 

function dydt = euler(t,y)

dydt = 4*exp(0.8*t) - 0.5 * y;

 

 

clear

format long g

y(1)=2;

yanal(1)=2;

err(1)=0;

t(1)=0;

delt=.1

for i = 2:15

    dydt = 4*exp(0.8*t(i-1)) - 0.5*y(i-1);

    y(i) = y(i-1) + dydt *delt;

    t(i) = t(i-1) + delt;

    yanal(i) = 3.07923*exp(0.8*t(i))- 3.076923*exp(-0.5*t(i))+2*exp(-.5*t(i));

    err(i) = 100* (yanal(i) - y(i))/yanal(i);

end

 

disp( '                         time               y                  yanaly                   error')

[t'  y'  yanal'  err']

 

 

clc

clear

 

 

tspan= 0:0.5:7;

 

[t,y] = ode45(@euler, tspan, 2);

 

yanal = 3.076923 * exp(0.8*tspan) - 3.076923*exp(-.5*tspan)+2*exp(0.5*tspan);

err = abs((y'-yanal)./yanal)*100;

 

n= length(t);

disp ('time          y        yanal')

for i = 1:n

    fprintf('%f    %f     %f    \n', t(i), y(i), yanal(i))

end