MATLAB缉私艇追击走私船.ppt_第1页
MATLAB缉私艇追击走私船.ppt_第2页
MATLAB缉私艇追击走私船.ppt_第3页
MATLAB缉私艇追击走私船.ppt_第4页
MATLAB缉私艇追击走私船.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验三反走私船追赶走私船。实验3.1实验的目的(1)学会用MATLAB软件解决微分方程的初值问题。(2)理解微分方程数值解的思想,掌握微分方程数值解的方法;(3)学会根据实际问题建立简单的微分方程数学模型,提高解决问题的能力;(4)了解简单计算机模拟和数据模拟的基本方法。3.2实验问题海上边境缉私船发现一艘走私船在距离C公里处以匀速直线行驶。缉私船立即以最大速度追赶。在雷达的引导下,缉私船总是指向走私船。反走私船什么时候能赶上走私船?找出缉私船的追击路线。x,y,c,o,2.3建模,x,c,o,y,走私船初始位置在点(0,0),行驶方向为y轴正方向,反走私船初始位置在点(c,0),反走私船行驶距离为s。在时间t,反走私船到达点,走私船位置到达点,2.4模型求解,(1)得到解析解,当x=0,c=3公里,a=0.4公里追踪时间为:t=9,5,2.8125(分钟),2。当反走私船追不上走私船时。反走私船不可能赶上走私船。(2)利用MATLAB软件寻找解析解。用MATLAB软件5.3版或更高版本提供的求解常微分方程解析解的指令是dsolve。完整的调用格式是:微分方程的书写格式规定,当Y是因变量时,“Dny”用来表示Y的N阶导数。例如1,求微分方程的通解。输入命令:y=dsolve (dy=x x * y,X),ans=-1exp (1/2 * x 2) * C1,dsolve(方程式1 ,方程式2 ,方程式n ,初始条件,独立变量),输入命令:y=dsolve (d2y4 * dy29 * y=0,y (0)=0,dy (0)=15,X),结果为:y=3e-2xsin(5x),输入命令:1X=simple(x)%将x简化为y=simple(y)z=simple(z),得到x=(C1-C2C 3e-3t-c3e-3t)e2ty=-c1e-4t c2e-4t c2e-3t-c3e-3t C1-C2C 3)e2tz=(-c1e-4t c2e-4t C1-C2C 3)e2t。在实际生产和科学研究中建立的微分方程往往非常复杂,即使是一阶微分方程,有时也很难求解。即使找到了解的表达式,也很难计算出相应的已知变量的函数值。在这种情况下,在实践中,对于初值问题,通常需要在几个点上获得满足规定精度的解的近似值,研究常微分方程的数值解,或者获得满足精度要求的方便表达式。(3)利用MATLAB软件寻找微分方程的数值解,因此,研究常微分方程的数值解是非常必要的。对于常微分方程来说,数值解是求其解析解,即一系列离散点的近似值,用MATLAB软件求数值解的一般格式是,t,x=求解器( f ,ts,x0),1。当求解n个未知函数的方程时,x0和x是n维向量,m文件中要求解的方程应该以x分量的形式编写。2.在用Matlab软件求解数值解时,必须将高阶微分方程等价转化为一阶微分方程组。注:functionu=文件名(自变量,因变量)u=微分方程的右端,然后在指令窗口中执行ODE E23(“文件名”,0,2),0)以获得图形和相关数据,然后执行X,Y=ODE E23(“文件名”,0,2),0),可以获得两组数据,可以执行图(X,Y),可以获得图形,并且可以建立m个文件,格式如左,例,polyfit(自变量,0) (3)数值解可由MATLAB软件获得,c=3,a=0.4,b=0.8,程序zjet.mfinactivatonu=zjwt (t,Y)u=0.5 *(t/3)0.5-(3/t)0.5,执行下列步骤所谓计算机仿真就是利用计算机对实际动态系统的结构和行为进行编程、仿真和计算,以预测系统的行为效果。MATLAB软件仿真方法,x,c,o,y,走私船的初始位置在点(0,0),方向是y轴的正方向,走私船的初始位置在点(c,0),追踪方向可以表示为方向的余弦,走私船的位置,走私船的位置,o,和,走私船的位置,然后,时间步长,仿真算法,步骤3:计算缉私船和走私船的两个移动点之间的距离:根据预先给定的距离, 判断缉私船是否已经追上走私船,从而判断是退出循环还是让时间产生一个步长,并返回步骤2继续进入下一个循环;取c=3公里,a=0.4km公里/分钟,b=0.8km公里/分钟,c=3;a=0.4/60;b=0.8/60;d=0.01dt=2;t=0;jstx=c。jsty=0;zscx=0。zssy=0;holdonaxis(0,3,0,2)while(sqrt(jstx-zscx)2(jsty-zscy)2)d)t=t;jstx=jstx-b*dt*jstx/sqrt(jstx2(a*t-jsty)2);jsty=jsty b*dt*(a*t-jsty)/sqrt(jstx2(a*t-jsty)2);zscy=a * t。图(jstx、jsty、r、zscx、zssy、b *)暂停(0.2) endjstx、jsty、zscx、zssy、t、程序zhuixiantu.m、程序c=3,显示船舶路线;a=0.4/60;b=0.8/60;d=0.01dt=2;t=0;jstx=c。jsty=0;zscx=0。zssy=0;while(sqrt(jstx-zscx)2(jsty-zscy)2)d)pause(0.01)holdonaxis(0,3,0,2)t=t;jstx=jstx-b*dt*jstx/sqrt(jstx2(a*t-jsty)2);jsty=jsty b*dt*(a*t-jsty)/sqrt(jstx2(a*t-jsty)2);zscy=a * t。图(jstx、jsty、ro、zcx、zscy、b *)结束,例如,设置A(0,0)为导弹发射点,发现一架敌机在B(0,100)处水平方向逃窜(如图所示),然后发射一枚导弹对其进行打击。现在已经知道导弹一直瞄准敌机,速度是飞机速度的两倍(设定飞机速度为1)。通过试编程模拟导弹攻击敌机的动态过程,实时给出飞机和导弹的位置坐标。分析:现在将整个动态过程离散化,即以dt为时间间隔实时观察飞机和导弹的位置;假设敌机从b点飞到B1点,导弹沿矢量AB1到达A1点;此时,敌机再次到达B2点,导弹沿着向量A1B2到达A2点。通过类比,计算出飞机和导弹的位置坐标。第一步画出导弹和飞机的a点和b点的位置。步骤2:在dt周期后计算B1点坐标;2.1找到向量A0B1的方向,2.2找到点A1的坐标,2.3找到导弹和飞机之间的距离D;步骤3判断距离D是否满足精度要求;如果不满足要求,转到步骤1重复绘制点并计算新位置.直到d符合要求。步骤:保持(0302);k=0;A=3,0;B=0,0;v=0.01dt=1;d=3;而0.01批次(A(1),A(2),r .);图(B(1),B(2),B *);暂停(0.2);k=k1;B=B 0,v * dt;e=B-A;d=标准(e);A=2.0 * v * dt * e/d;fprintf(k=%.0fB(%.2f,100)A(%.2f,%.2f)d=%.2fn,k,B(1),A(1),A(2),d);结束,2.5结果分析:用解析解方法计算的解最准确;数值方法计算的结果取决于迭代终值的设置。减少迭代终值可以提高计算精度。用计算机模拟方法计算的结果取决于时间迭代步长的选择和程序终止条件的设置。修改终止条件的设置和减少时间迭代步骤可以提高计算精度和减少误差。一只猎狗在东北方向的B点发现了一只离它200米远的兔子。这时,兔子开始以8米/秒的速度全速向离它西北方向120米的A洞跑去。假设猎狗在追逐兔子时总是全速朝兔子的方向跑,通过计算机模拟和其他方法完成了以下实验:(1)猎狗追赶兔子的最小速度是多少?(2)在猎犬能追上兔子的情况下,猎犬能跑多长时间?(3)画一张狗追兔子的图。(4)假设当猎狗和兔子之间的距离为30米时,兔

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论