how to modify code for distributed delay
41 views (last 30 days)
Show older comments
Muhammad
on 16 Aug 2024 at 18:58
Commented: Muhammad
on 17 Aug 2024 at 10:38
I have a code, which gives a solution of a delay logistic equation with discrete delay.
tau = 1;
tspan = [0 20];
y0 = 0.5;
sol = dde23(@ddefunc, tau, y0, tspan);
% Plot the solution
figure;
plot(sol.x, sol.y, 'LineWidth', 2);
xlabel('Time (days)');
ylabel('Population');
legend('y');
% Define the delay differential equation
function g = ddefunc(t, y, Z)
r = 1.5;
y_tau = Z;
g = r * y * (1 - y_tau);
end
Now I want to modify my code for distributed delay as attached below.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1754289/image.png)
Can someone guide me how to deal with distributed delay
0 Comments
Accepted Answer
Torsten
on 16 Aug 2024 at 19:06
r = 1.5;
fun = @(t,x)[r*x(1)*(1-x(2));x(1)];
x0 = [0.5;0];
tspan = [0 20];
[t,x] = ode45(fun,tspan,x0);
plot(t,x(:,1))
grid on
4 Comments
Torsten
on 16 Aug 2024 at 20:54
Edited: Torsten
on 16 Aug 2024 at 20:58
This is the solution for equation (1.6) with r=1.5 and x(0) = 0.5.
If you have something different in mind, you must post it.
Note that the second equation
dy/dt = x, y(0) = 0
gives
y(t) = integral_{tau=0}^{tau=t} x(tau) dtau
as solution, thus the integral in (1.6).
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!