slw 发表于 2007-7-18 10:59

延时微分方程组如何求解?

dA(t)/dt=a*b^1/2*exp[(1-i*c)*F(t-T)/2-(1-i*d)*G(t-T)/2]A(t-T)-a*A(t);
dB(t)/dt=-e*B(t)+f*D(t)*-g*B(t)-exp(-G(t))**abs(A(t))^2;
dC(t)/dt=-h*C(t)+j*E(t)*-k*C(t)-s**abs(A(t))^2;
dD(t)/dt=D0-m*D(t)-2*f*D(t)*+2*g*B(t);
dE(t)/dt=E0-n*E(t)-2*j*E(t)*+2*k*C(t);
其中
F(t)=2*u*
G(t)=2*v*
其中变量都是时间t的函数,这里牵扯到时间延迟F(t-T),G(t-T),A(t-T), 其中T为恒定量,abs(A(t))^2为模的平方,其他a,b...都为常数,求这些函数随时间的变化关系曲线,能否用的DDE23 来求?我写了下面代码,运行起来也没发现错误,但没有关于T的周期性,感觉不对,那位高手给指点一下,十分感谢!!!
clear
sol=dde23(@DDE_SL,,,);
figure
plot(sol.x,sol.y(1,:));
figure
plot(sol.x,sol.y(2,:));
figure
plot(sol.x,sol.y(3,:));

function dydt=DDE_SL(t,y,Z)   
a=10;
b=0.2;
c=2;
d=2;
e=0.01;
h=0.01;
f=2;
j=2;
g=0.1;
k=0.1;
s=10;
m=0.01;
n=1;
D0=5;
E0=6;
u=1.6;
v=3;
dydt=[a*b^(1/2)*exp((1-i*c)*Z(1)/2-(1-i*d)*Z(2)/2)*Z(3)-a*y(1);
    -e*y(2)+g*y(4)*(1-y(2))-j*y(2)-exp(-y(7))*(exp(y(6))-1)*(abs(y(1)))^2;
    -f*y(3)+h*y(5)*(1-y(3))-k*y(3)-s*(1-exp(-y(7)))*(abs(y(1)))^2;
    D0-m*y(4)-2*f*y(4)*(1-y(2))+2*g*y(2);
    E0-n*y(5)-2*j*y(5)*(1-y(3))+2*k*y(3);
    4*u*y(2);
    4*v*y(3);];

[ 本帖最后由 eight 于 2007-7-19 14:52 编辑 ]

zhlong 发表于 2007-7-18 11:02

好像记得有贴子讨论过,楼主搜索一下看看吧

slw 发表于 2007-7-18 11:08

回复 #2 zhlong 的帖子

我的搜索功能不知什么原因好像不能用,谢谢您,不知你对这方面有研究吗?恳请帮助!我的QQ:122302827,非常感谢!

zhlong 发表于 2007-7-18 11:11

回复 #3 slw 的帖子

参考      用四阶Runge-Kutta法解延迟微分方程组

http://luobo.yculblog.com/post.2505186.html


希望对你有所帮助!

slw 发表于 2007-7-18 11:21

回复 #3 slw 的帖子

我先看看,非常感谢!

花如月 发表于 2007-7-23 10:11

回复 #6 slw 的帖子

请参考以下2帖,应该可以解决你的问题
http://forum.vibunion.com/forum/thread-28642-1-1.html
http://forum.vibunion.com/forum/viewthread.php?tid=9220
页: [1]
查看完整版本: 延时微分方程组如何求解?