请教各位牛人,小女子初学matlab,现遇到如下问题,还请各位多多指教,具体问题如下:
有一个时滞微分方程如图所示:
现在需要时间延迟tau不停变化,从0到20,从而画出x抽为tau,y轴分别为S,L,B。。。等的分叉图。我写得微分方程函数如下,后面的就不知道怎么写了。急求各位大神告知啊!!
function dy=ddefun1(t,y,z)
mu1=0.001;mu2=0.002;mu=0.003;beta1=0.3;beta2=0.62;beta3=0.35;gamma1=0.1;deta1=0.01;deta2=0.05;deta3=0.1;gamma2=0.65;gamma3=0.08;alpha=0.5;eta=0.15;
S=y(1);
L=y(2);
B=y(3);
Q=y(4);
R=y(5);
tauL=z(:,1);
dy=zeros(5,1);
dy(1)=mu1 + gamma1*L + gamma2*B + gamma3*R - (beta1 *L + beta2*B + beta3)*S - deta1*S - eta* S - mu* S;
dy(2)=(beta1*L +beta2*B + beta3 )*S - (gamma1 + mu + deta2 + eta )*L- alpha*tauL(2);
dy(3)=alpha*tauL(2) - (gamma2 + mu + deta3 + eta )*B;
dy(4)=deta1*S + deta2*L + deta3* B - (eta + mu )*Q;
dy(5)=mu2 + eta *(S + L + B + Q) - (mu + gamma3 )*R;
end
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
TMOD = 0x02;
EA=1;
ET0=1;
TH0 = 243; //11.0592 50Hz
TL0 = 243;
TR0 = 1;
/***************************************************
**函数名称:void timer0(void) interrupt 1
**函数功能:TCC中断服务函数
***************************************************/
void timer0(void) interrupt 1
{
// count++;
if(flag == 1)
SEND = !SEND;
else
SEND = 0;
}
一周热门 更多>