传染病模型SISISSIR.docx

上传人:b****7 文档编号:9920731 上传时间:2023-02-07 格式:DOCX 页数:12 大小:45.47KB
下载 相关 举报
传染病模型SISISSIR.docx_第1页
第1页 / 共12页
传染病模型SISISSIR.docx_第2页
第2页 / 共12页
传染病模型SISISSIR.docx_第3页
第3页 / 共12页
传染病模型SISISSIR.docx_第4页
第4页 / 共12页
传染病模型SISISSIR.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

传染病模型SISISSIR.docx

《传染病模型SISISSIR.docx》由会员分享,可在线阅读,更多相关《传染病模型SISISSIR.docx(12页珍藏版)》请在冰豆网上搜索。

传染病模型SISISSIR.docx

传染病模型SISISSIR

SI模型

利用MATLAB求解传染病模型中的SI模型的解析解:

程序中a即λ,y即i

>>y=dsolve('Dy=a*(y-y^2)','y(0)=y0')

y=

1/(1-exp(-a*t)*(-1+y0)/y0)

 

画图:

SI模型的i~t曲线

设λ=1,i(0)=0.1

>>y=dsolve('Dy=y-y^2','y(0)=0.1')

y=

1/(1+9*exp(-t))

>>x=0:

0.01:

13;

y=1./(1+9.*exp(-x));

>>plot(x,y)

title('SI模型的i~t曲线');

xlabel('t');

ylabel('i');

axis([01301.1]);

画图:

SI模型的di/dt~i曲线

程序中x即i,y即di/dt,λ=1

>>x=0:

0.01:

1;

y=x-x.*x;

>>plot(x,y)

title('SI模型的di/dt~i曲线');

xlabel('i');

ylabel('di/dt');

>>

 

SIS模型

利用MATLAB求解传染病模型中的SIS模型的解析解:

程序中a即λ,b即μ,y即i

>>y=dsolve('Dy=a*(y-y^2)-b*y','y(0)=y0')

y=

(a-b)/(a-exp(-(a-b)*t)*(-a+b+y0*a)/y0/(a-b)*a+exp(-(a-b)*t)*(-a+b+y0*a)/y0/(a-b)*b)

 

画图:

SIS模型的di/dt~i曲线〔δ>1〕

程序中x即i,y即di/dt,λ=1,μ=0.3

>>x=0:

0.01:

1;

>>y=0.7.*x-x.^2;

>>plot(x,y)

title('SIS模型的di/dt~i曲线');

xlabel('i');

ylabel('di/dt');

>>

画图:

SIS模型的i~t曲线〔δ>1〕

设λ=1,μ=0.3,i(0)=0.02

>>y=dsolve('Dy=0.7*y-y^2','y(0)=0.02')

y=

7/(10+340*exp(-7/10*t))

>>x=0:

1:

16;

>>y=7./(10+340.*exp(-7./10.*x));

>>plot(x,y)

title('SIS模型的i~t曲线');

xlabel('t');

ylabel('i');

>>

 

画图:

SIS模型的di/dt~i曲线〔δ≤1〕

程序中x即i,y即di/dt,λ=0.5,μ=0.6

>>x=0:

0.01:

1;

>>y=-0.5.*x.^2-0.1.*x;

>>plot(x,y)

title('SIS模型的di/dt~i曲线');

xlabel('i');

ylabel('di/dt');

>>

 

画图:

SIS模型的i~t曲线〔δ≤1〕

设λ=0.5,μ=0.6,i(0)=0.02

>>y=dsolve('Dy=-0.5*y^2-0.1*y','y(0)=0.02')

y=

1/(-5+55*exp(1/10*t))

 

>>x=0:

1:

40;

>>y=1./(-5+55.*exp(1./10.*x));

>>plot(x,y)

title('SIS模型的i~t曲线');

xlabel('t');

ylabel('i');

>>

 

SIR模型

利用MATLAB求解传染病模型中的SIR模型的数值解:

程序中a=λ=1,b=μ=0.3,i(0)=0.02,s(0)=0.98

M文件中:

functiony=ill(t,x)

a=1;b=0.3;

y=[a*x

(1)*x

(2)-b*x

(1),-a*x

(1)*x

(2)]';

命令窗口中:

>>[t,x]=ode45('ill',[0:

50],[0.02,0.98]);[t,x]

ans=

00.02000.9800

1.00000.03900.9525

2.00000.07320.9019

3.00000.12850.8169

4.00000.20330.6927

5.00000.27950.5438

6.00000.33120.3995

7.00000.34440.2839

8.00000.32470.2027

9.00000.28630.1493

10.00000.24180.1145

11.00000.19860.0917

12.00000.15990.0767

13.00000.12720.0665

14.00000.10040.0593

15.00000.07870.0543

16.00000.06140.0507

17.00000.04780.0480

18.00000.03710.0460

19.00000.02870.0445

20.00000.02230.0434

21.00000.01720.0426

22.00000.01330.0419

23.00000.01030.0415

24.00000.00790.0411

25.00000.00610.0408

26.00000.00470.0406

27.00000.00360.0404

28.00000.00280.0403

29.00000.00220.0402

30.00000.00170.0401

31.00000.00130.0400

32.00000.00100.0400

33.00000.00080.0400

34.00000.00060.0399

35.00000.00050.0399

36.00000.00040.0399

37.00000.00030.0399

38.00000.00020.0399

39.00000.00020.0399

40.00000.00010.0399

41.00000.00010.0399

42.00000.00010.0399

43.00000.00010.0399

44.00000.00000.0398

45.00000.00000.0398

46.00000.00000.0398

47.00000.00000.0398

48.00000.00000.0398

49.00000.00000.0398

50.00000.00000.0398

>>plot(t,x(:

1),t,x(:

2)),grid,pause

i(t),s(t)图形如下:

>>plot(x(:

2),x(:

1)),grid,pause

i~s图形〔相轨线〕如下:

 

画图:

SIR模型的相轨线

程序中y即i,x即s,λ=1,μ=0.3

1s(0)=0.32;

2s(0)=0.58;

3s(0)=0.73;

4s(0)=0.85

>>x=0:

0.01:

1;

>>y=1-x;

>>y1=1-x+0.3.*(log(x)-log(0.32));

>>y2=1-x+0.3.*(log(x)-log(0.58));

>>y3=1-x+0.3.*(log(x)-log(0.73));

>>y4=1-x+0.3.*(log(x)-log(0.85));

>>plot(x,y,x,y1,x,y2,x,y3,x,y4)

axis([0101]);

title('SIR模型的i~s曲线');

xlabel('s');

ylabel('i');

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1