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