初值给一下。
在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dxdt=ode_Miss_ghost(t,x)
%分别用x(1),x(2),x(3),x(4)代替N1,P1,N2,P2
N1=x(1);
P1=x(2);
N2=x(3);
P2=x(4);
K=2;
tau_c=3e-9;
tan_p=6e-12;
beta =5e-5;
delta=0。
692;
eta =0。0001;
fm =8e6;
Ith =26e-3;
Ib =1。5*Ith;
Im =0。
3*Ith;
I1=Ib Im*sin(2*pi*fm*t) K*P2;
I2=Ib Im*sin(2*pi*fm*t) K*P1;
dxdt=[
(I1/Ith-N1-(N1-delta)/(1-delta)*P1)/tau_e;
((N1-delta)/(1-delta)*(1-eta*P1)*P1-P1 beta*N1)/tau_p;
(I2/Ith-N2-(N2-delta)/(1-delta)*P2)/tau_e;
((N2-delta)/(1-delta)*(1-eta*P2)*P2-P2 beta*N2)/tau_p;
];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
在Matlab下面输入:
t_start=0;
t_end=2e-9;
y0=[1e-3;1e-4;0;0]; %初值
[x,y]=ode15s('ode_Miss_ghost',[0,t_end],y0);
plot(x,y);
legend('N1','P1','N2','P2');
xlabel('x');
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
vaela。
全部
该博客介绍了如何在Matlab环境下利用ode15s函数求解一个四变量的常微分方程组,该方程组模拟了生物体内的两个相互作用的群体N1和N2以及相应的配对分子P1和P2的动力学行为。通过设定初始条件和时间范围,展示了解的动态变化,并通过图形进行可视化。参数包括群体动力学的常数和外部信号的影响。
1541

被折叠的 条评论
为什么被折叠?



