欢迎来到天天文库
浏览记录
ID:57244054
大小:92.60 KB
页数:10页
时间:2020-08-07
《数学建模-猎狗追兔子问题.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《数学建模》(2014春)课程期末论文题目猎狗追兔子问题题号A成员姓名学号班级学院联系学生1学生2摘要(一)对于问题一:自然科学中存在许多变量,也有许多常量,而我们要善于通过建立合适的模型找到这些变量之中的不变量。猎狗追赶兔子的问题是我们在生活中常见的实例,而题目把我们生活中的普通的例子抽象成为高等数学中微分方程的例子,通过对高阶微分方程的分析,建立微分方程模型,并用数学软件编写程序求解,得出结论,解决生活中常见的实际问题。(二)对于问题二:学习使用matlab进行数学模型的求解,掌握常用计算机软件的使用方法。关键词微分方程导数的几何意义猎狗追兔子数学建模数学软件一、问题重述BANOWSE
2、如图1所示,有一只猎狗在B点位置,发现了一只兔子在正东北方距离它250m的地方O处,此时兔子开始以8m/s的速度正向正西北方向,距离为150m的洞口A全速跑去.假设猎狗在追赶兔子的时候,始终朝着兔子的方向全速奔跑。请回答下面的问题:⑴猎狗能追上兔子的最小速度是多少?⑵在猎狗能追上兔子的情况下,猎狗跑过的路程是少?⑶假设猎狗在追赶过程中,当猎狗与兔子之间的距离为30m时,兔子由于害怕导致奔跑速度每秒减半,而狗却由于兴奋奔跑速度每秒增加0.1倍,在这种情况下回答前面两个问题。二、问题分析与假设在猎狗追赶兔子的时候猎狗一直朝着兔子的方向追赶,所以可以建立平面直角坐标系,通过导数联立起猎狗运动位移
3、,速度和兔子的运动状态。1.假设兔子的运动是匀速的。2.假设猎狗的运动轨迹是一条光滑并且一阶导数存在的曲线。3.猎狗的运动时匀速或者匀变速的。4.猎狗运动时总是朝向兔子。三、模型的建立及求解3.1符号规定1.(x,y):猎狗或者兔子所在位置的坐标。2.t:从开始到问题结束经过的时间。3.a:猎狗奔跑的路程。BANOWSE4.v:猎狗的奔跑速度。3.2模型一的建立与求解猎狗能够抓到兔子的必要条件:猎狗的运动轨迹在OA要有交点以OA为y轴,以OB为x轴建立坐标系,则由图有O(0,0),A(0,150),B(250,0),兔子的初始位置0点,而猎狗初始位置是B点,t(s)后猎狗到达了C(x,y)
4、,而兔子到达了D(0,8t),则有CD的连线是猎狗运动轨迹的一条切线,由导数的几何意义有:三式联立消去t,得到;设:若猎狗可以追上兔子则有当兔子在OA,猎狗在OB之间运动时此方程有解,设:得到:得到:两式联立相加得到:1.如果q=1即v=8m/s得到所以此情况无交点,所以v=8m/s猎狗无法追上兔子;2.如果q<1即v>8m/s得到此情况有交点,所以有可能能够追上兔子,如果要追上兔子需要y<=150;解得到:即所以这种情况下能够追上的最小速度是.3.如果q>1利用上式得到,所以这种情况不能追上兔子。综上讨论,猎狗可以追上兔子的最小速度为。3.3模型二的建立与求解如果猎狗可以追上兔子那么猎狗
5、的轨迹和兔子的轨迹必相交与一点,此时兔子的路程,所用放的时间,那么猎狗的的路程a=tv;带入数值解得a=。3.4模型三的建立与求解模型三利用matlab试验,得到代码如下:a=8;dogxa=[];dogya=[];rabbitxa=[];rabbitya=[];d=1;dogx=250;dogy=0;rabbitx=0;rabbity=0;t=0;dt=0.001;forb=0:100dogx=250;dogy=0;rabbitx=0;rabbity=0;t=0;c=b;a=8;while(sqrt((dogx-rabbitx)^2+(dogy-rabbity)^2)>d&rabbity
6、<150)if(sqrt((dogx-rabbitx)^2+(dogy-rabbity)^2)<=30)b=b*1.1^dt;a=a*0.5^dt;endt=t+dt;dogx=dogx+b*dt*(rabbitx-dogx)/sqrt((dogx-rabbitx)^2+(dogy-rabbity)^2);dogy=dogy+b*dt*(rabbity-dogy)/sqrt((dogx-rabbitx)^2+(dogy-rabbity)^2);rabbitx=rabbitx+0;rabbity=rabbity+a*dt;endif(rabbity<=150)b=c;break;endend
7、fprintf('猎狗的最小速度是::%2f',b);a=8;b=16;d=1;dogxb=[];dogyb=[];rabbitxb=[];rabbityb=[];dogx=250;dogy=0;rabbitx=0;rabbity=0;t=0;dt=0.001;s=0;while(sqrt((dogx-rabbitx)^2+(dogy-rabbity)^2)>d)t=t+dt;if(sqrt((dogx-rabbitx)
此文档下载收益归作者所有