how can i solve an EDF?

1 view (last 30 days)
triki
triki on 15 Apr 2014
Commented: Mischa Kim on 16 Apr 2014
How can i solve an equation having this form with Matlab : dy+y(t-h)=0 and plotting it's variation on the time with différents values of h .(h is a constant)

Answers (2)

Mischa Kim
Mischa Kim on 15 Apr 2014
Triki, use one of the numerical integrators, e.g. ode45
function ODEsim()
tspan = 0:0.1:10; % set up the problem
IC = 1;
h = 0.5;
[t,yt] = ode45(@myODE,tspan,IC,[],h); % call the integrator
plot(t,yt,'r') % plot the result
xlabel('t')
ylabel('y')
grid
end
function dy = myODE(t,y,h) % define the DE
dy = -y*(t - h);
end
  1 Comment
Mischa Kim
Mischa Kim on 15 Apr 2014
Edited: Mischa Kim on 16 Apr 2014
Ok, I see.
function DDEsim()
h = 1;
lag = h;
sol = dde23(@DDEeq,lag,@DDEhist,[0,5]);
plot(sol.x,sol.y);
xlabel('t');
ylabel('y');
end
function dydt = DDEeq(t,y,Z)
ylag = Z(:,1);
dydt = -ylag;
end
function S = DDEhist(t)
S = 1;
end
Check out the DDE documatation for more detail.

Sign in to comment.


triki
triki on 15 Apr 2014
Thank you for your help,but there is a little mistake,witch is my edf is not dy=y*(t-h) but dy=y(t-h). That's mean that y in the second member dependent on t-h not multiplied by (t-h);in other way we can suppose a x=t-h so our equation become: dy/d(x+h)=-y(x)
  1 Comment
Mischa Kim
Mischa Kim on 16 Apr 2014
Please add follow-up questions and comments as comments, not answers.

Sign in to comment.

Categories

Find more on Biological and Health Sciences 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!