《2022年微分方程初值问题求解matlab实验 .pdf》由会员分享,可在线阅读,更多相关《2022年微分方程初值问题求解matlab实验 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 数学建模与数学实验课程实验报告实验名称微分方程初值问题求解matlab 实验班级学号姓名序号任课教师实验地点数学实验中心评分一、实验目的1、学习简单问题的常微分方程建模。2、学习并理解食饵- 捕食者模型;3、掌握微分方程(组)初值问题的matlab 数值求解;二、实验要求和结果1. 地中海鲨鱼问题意大利生物学家Ancona 曾致力于鱼类种群相互制约关系的研究,他从第一次世界大战期间 , 地中海各港口捕获的几种鱼类捕获量百分比的资料中,发现鲨鱼等的比例有明显增加(见下表), 而供其捕食的食用鱼的百分比却明显下降. 显然战争使捕鱼量下降,食用鱼增加,鲨鱼等也随之增加,但为何鲨鱼的比例大幅增加呢
2、?年代1914 1915 1916 1917 1918 百分比11.9 21.4 22.1 21.2 36.4 年代1919 1920 1921 1922 1923 百分比27.3 16.0 15.9 14.8 19.7 1符号说明:)(1tx食饵在t 时刻的数量;)(2tx捕食者在t 时刻的数量;1r食饵独立生存时的增长率;2r捕食者独自存在时的死亡率;1捕食者掠取食饵的能力;2食饵对捕食者的供养能力. e捕获能力系数2基本假设:(1)食饵由于捕食者的存在使增长率降低,假设降低的程度与捕食者数量成正比;(2)捕食者由于食饵为它提供食物的作用使其死亡率降低或使之增长,假定增长的程度与食饵数量成
3、正比。3模型建立与求解模型(一)不考虑人工捕获)(21111xrxdtdx)(12222xrxdtdx名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 2 x2(t) 针对一组具体的数据用Matlab 软件进行数值求解,画出食饵和捕食者图形以及相轨线图. 设食饵和捕食者的初始数量分别为101)0(xx,202)0(xx对于数据2,25,02.0,5.0, 1.0, 120102211xxrr,t的终值经试验后确定为15,即模型为:
4、2)0(,25)0()02.05 .0()1 .01(21122211xxxxxxxx解:Matlab 运行首先建立 M文件 fun.m 如下:function dx=fun(t,x) dx=zeros(2,1) dx(1)=x(1)*(1-0.1*x(2); dx(2)=x(2)*(-0.5+0.02*x(1); 然后,输入以下命令: t,x=ode45(fun ,0 15,25 2); plot(t,x(:,1),-,t,x(:,2),* ) plot(x(:,1),x(:,2) x1(t) 和 x2(t) 的曲线图如下相轨线 y(x) 的图形如下:x1(t) 食饵捕食者图形名师资料总结
5、- - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - 3 数值结果为t=77*1double, x=77*2double. 该模型反映了在没有人工捕获的自然环境中食饵与捕食者之间的制约关系,没有考虑食饵和捕食者自身的阻滞作用,是最简单的模型。食饵的量增加,捕食者也随之增加;食饵的量减少, 捕食者的量也随之减少。可以猜想 x1(t) 和 x2(t) 都是周期函数。 而且它们的循环是有一定周期的。模型(二)考虑人工捕获设表示捕获能力的系数为e,相当于食
6、饵的自然增长率由r1 降为 r1-e ,捕食者的死亡率由r2 增为 r2+e )()(1222221111xerxdtdxxerxdtdx20,250,02.0,5 .0, 1.0, 1212211)()(仍取xxrr设战前捕获能力系数e=0.3, 战争中降为e=0.1, 则战前与战争中的模型分别为: 2)0(,25)0()02.08 .0()1.07 .0(21122211xxxxdtdxxxdtdx2)0(,25)0()02.06.0()1.09.0(21122211xxxxdtdxxxdtdx建立主程序shark1.m, 求解两个方程,并画出两种情况下鲨鱼数在鱼类总数中所占比例 x2(t
7、)/x1(t)+x2(t) 解: 先在 matlab 中建立 M文件 shier1.m: function dx=shier1(t,x) dx=zeros(2,1); dx(1)=x(1)*(0.7-0.1*x(2); dx(2)=x(2)*(-0.8+0.02*x(1); 再在 matlab 中先建立 M文件 shier2.m : :名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 4 function dx=shier2(t,
8、x) dx=zeros(2,1); dx(1)=x(1)*(0.9-0.1*x(2); dx(2)=x(2)*(-0.6+0.02*x(1); 然后在 matlab 中输入以下命令:t,x=ode45(shier1,0 15,25 2); plot(t,x(:,2)./(x(:,1)+x(:,2),-) t,x=ode45(shier2,0 15,25 2); plot(t,x(:,2)./(x(:,1)+x(:,2),*) 求解结果:战前x=65*2double t=65*1double 战争中 x=77*2double t=77*1double 结论 :战争中鲨鱼的比例比战前高。2. 慢跑
9、者与狗一慢跑者在平面上沿着他喜欢的路径跑步,突然遭到一只狗的攻击,这只狗以恒定的速 度 跑 向 慢 跑 者 , 试 计 算 狗 追 赶 的 轨 迹 。 并 就 当 慢 跑 者 沿 路 径010YtX或tYtXsin1520cos2010(t为时间参数)跑动时,给出具体的数值结果和运动轨迹图(狗的初始位置和速度可以自行设定)。解:1. 模型建立当慢跑者沿路径2 慢跑时,设时刻 t 慢跑者的坐标为 (X(t),Y(t),狗的坐标为(x(t),y(t),狗的速率为w=20,则 X=10+20cos t, Y=20+15sin t, 狗从( 0,0 )出发,建立狗的运动轨迹的参数方程:)()()(20
10、20)()()(202222yYyYxXdtdyxXyYxXdtdx战争中战前名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - 5 x(0)=0,y(0)=0 2. 模型求解建立 M文件 eq2.m 如下:function dy=eq2(t,y) dy=zeros(2,1); dy(1)=20*(10+20*cos(t)-y(1)/sqrt(10+20*cos(t)-y(1)2+(20+15*sin(t)-y(2)2); dy(2
11、)=20*(20+15*sin(t)-y(2)/sqrt(10+20*cos(t)-y(1)2+(20+15*sin(t)-y(2)2); 取 t0=0 ,tf=10 ,建立主程序chase2.m 如下: t,y=ode45(eq2,0 10,0 0); Y=0:0.1:2*pi; X=10+20*cos(t); Y=20+15*sin(t); plot(X,Y,-), hold on plot(y(:,1),y(:,2),*) 得到图形:在 chase2.m 中,不断修改tf的值,用二分法分别取tf=5,2.5,3.5,.,至 3.15 时,狗刚好追上慢跑者,即如下图名师资料总结 - - -
12、精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - 6 三、思考自然界中不少吃农作物的害虫都有其天敌益虫,也就是以害虫为食饵的捕食者。因此害虫和益虫也构成了一个食饵捕食者系统。如果人类使用的某种杀虫剂,既能杀死害虫,也能杀死益虫,从长期来看,会有什么样的效果,害虫会减少吗?答:害虫不仅不会减少,还会增加。 因为人类对作物喷洒杀虫剂时,相当于前面讨论过的人为捕获的影响,此时捕食者(益虫)占总虫子数的比例减小,从长期效果看,用这种杀虫剂将使害虫增加,益虫减少,与使用者的愿望相反。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -