项目四 微分方程与差分方程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
项目四 微分方程与差分方程 实验类型 验证型 实验学时 4
实验目的 利用Matlab 软件的数值计算功能求解微分方程与差分方程,并对结果进行分析。
实验内容
1. 传染病问题的SIR 模型:
00(0),(0)di asi bi
dt ds asi
dt
i i s s ⎧=-⎪⎪⎪=-⎨⎪==⎪⎪⎩
其中:(),()i t s t 表示t 时刻病人和健康者的比例,参数,a b 为日接触率和治愈率,00,i s 表示初始时刻的病人和健康者比例。
求解以上模型,并分析:
1) 病人和健康者的比例的变化规律;
2) 参数,a b 对病人和健康者的比例变化的影响;
3) 预测传染病传播高潮(病人比例的最大值)到来的时刻;
4) 参数,a b 对染病传播高潮(病人比例的最大值)到来的时刻的影响。
Matlab 程序:
1).先建立M 文件:
function f=sir(x,y)
a=1;b=0.1;
f(1)=a*y(1)*y(2)-b*y(1);
f(2)=-a*y(1)*y(2);
f=f';
保存为:sir.m
2)在命令窗口输入:
[t,y]=ode45('sir',[0:1:50],[0.02,0.98])
plot(t,y)
[c d]=max(y(:,1)) %寻找病人比例的最大值及其时刻
2.差分形式的阻滞增长模型
阻滞增长模型为:
(1)dx x rx dt N
=- (1) 其中:r 为自然增长率,N 为种群最大容量。 可将其离散化为差分方程形式:
k y ~某种群第
k 代的数量(人口)
则(1)化为: 1(1),1,2,k k k k y y y ry k N
+-=-= 即:
1(1)1(1)k k k r y r y y r N +⎡⎤=+-⎢⎥+⎣⎦
可引入变量替换:(1)k k r x y r N
=+,1b r =+记,则上式化为: 1(1)k k k x bx x +=- (2) 试求解上述模型(2),并分析:
(1)k x 的变化有何规律?
(2)k x 的变化如何受()b r 影响?
Matlab程序:
b=3.3;
n=100;
x(1)=0.2;
for k=1:n
x(k+1)=b*x(k)*(1-x(k)); end
x'
plot(x)