How to plot bifurcation with Delay Differential equations?

69 vues (au cours des 30 derniers jours)
Kitipol Jankaew
Kitipol Jankaew le 14 Nov 2020
Commenté : Priya Verma le 26 Mar 2024 à 3:03
I want to draw the bifurcation diagram for the model.
All parameters are positve constant.
The value of parameters are as:
A1 = 0.8463, A2 = 0.6891, K = 1.2708, beta1 = 0.4110, beta2 = 0.1421,
The diagram are vary tau from 68 to 72 in steps of 0.001. For inital conditions X(0) = 0.26 and Y(0) = 0.58.
Please ansers me for Matlab code to plot the bifurcation diagrams.
  7 commentaires
kaushik dehingia
kaushik dehingia le 11 Fév 2021
Déplacé(e) : Dyuman Joshi le 15 Mar 2024
Can anyone share the Bifurcation diagram code for a delayed system? I t will be very helpful for me.
kaushik dehingia
kaushik dehingia le 11 Fév 2021
Can anyone share me the bifurcation code?

Connectez-vous pour commenter.

Réponse acceptée

Alan Stevens
Alan Stevens le 17 Nov 2020
How about the following for your loop (it assumed you have defined tau earlier in the file):
for j=1:N+1
if t(j)<=tau
xd = x(1);
yd = y(1);
else
d = ceil((t(j)-tau)/h);
xd = x(d);
yd = y(d);
end
t(j+1)=t(j)+h;
%tempx(j+1)=tempx(j)+h;
%tempy(j+1)=tempy(j)+h;
k1x=fx(t(j), x(j), y(j));
k1y=fy(t(j), xd, yd, y(j));
%k1y=fy(t(j), x(j), y(j), tempx(j), tempy(j));
k2x=fx(t(j)+h/2, x(j)+h/2*k1x, y(j)+h/2*k1y);
k2y=fy(t(j)+h/2, xd+h/2*k1x, yd+h/2*k1y, y(j)+h/2*k1y);
%k2y=fy(t(j)+h/2, x(j)+h/2*k1x, y(j)+h/2*k1y, tempx(j)+h/2*k1x, tempy(j)+h/2*k1y);
k3x=fx(t(j)+h/2, x(j)+h/2*k2x, y(j)+h/2*k2y);
k3y=fy(t(j)+h/2, xd+h/2*k2x, yd+h/2*k2y, y(j)+h/2*k2y);
%k3y=fy(t(j)+h/2, x(j)+h/2*k2x, y(j)+h/2*k2y, tempx(j)+h/2*k2x, tempy(j)+h/2*k2y);
k4x=fx(t(j)+h, x(j)+h*k3x, y(j)+h*k3y);
k4y=fy(t(j)+h, xd+h*k3x, yd+h*k3y, y(j)+h*k3y);
%k4y=fy(t(j)+h, x(j)+h*k3x, y(j)+h*k3y, tempx(j)+h*k3x, tempy(j)+h*k3y);
x(j+1)=x(j)+h/6*(k1x+2*k2x+2*k3x+k4x);
y(j+1)=y(j)+h/6*(k1y+2*k2x+2*k3y+k4y);
end
  20 commentaires
ibtissam benamara
ibtissam benamara le 20 Juin 2021
this is not my question, i undersand why you use (1,end-50:end);
the question why you will take x(i,:)=y(i,:), consequetly, it will give the same figure for the two species, this not true;
Akanksha Rajpal
Akanksha Rajpal le 30 Jan 2022
Your code really helped, but I was wondering if we can use similar coding if we want to extend the work to two delays? I tried that but it was showing error.
If you could help me regarding this and provide a code for this example only where the delay residing in X and Y are tau1 and tau2 respectively.

Connectez-vous pour commenter.

Plus de réponses (1)

Priya Verma
Priya Verma le 15 Mar 2024
In question, the denominator term is define in first delay variable term. Why are you all this term is defining in second delay term.
i. e. fy =@(t,x,y) A2*x*y/(1+y)-b2*y; in this denominator term is (1+y) .....?
A2*xd*yd/(1+yd)-b2*y; in this denominator term is (1+yd) .....?
please, explain...!
  21 commentaires
Priya Verma
Priya Verma le 26 Mar 2024 à 3:02
Is there any code, package, etc to fit the parameter values of dde?
Priya Verma
Priya Verma le 26 Mar 2024 à 3:03
or find tau value according to model?

Connectez-vous pour commenter.

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by