欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    MATLAB缉私艇追击走私船.ppt

    • 资源ID:2202143       资源大小:727.51KB        全文页数:26页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    MATLAB缉私艇追击走私船.ppt

    实验3 缉私艇追击走私船,3.1 实验目的 (1)学会用MATLAB软件求解微分方程的初值问题; (2)了解微分方程数值解的思想,掌握微分方程数值解的方法; (3)学会根据实际问题建立简单微分方程数学模型,提高解决问题能力; (4)了解简单的计算机仿真和数据模拟的基本方法.,3.2 实验问题 海上边防缉私艇发现距c公里处有一走私船正以匀速a沿直线行驶,缉私艇 立即以最大速度b追赶,在雷达的引导下,缉私艇的方向始终指向走私船。问 缉私艇何时追赶上走私船?并求出缉私艇追赶的路线。,x,y,c,o,2.3 建立模型,x,c,o,y,走私船初始位置在点(0,0),,行驶方向为y轴正方向,,缉私艇的初始位置在点(c,0),,缉私艇行驶的路程为s 。,在时刻t:,缉私艇到达点,走私船的位置到达点,2.4 模型求解,(1) 求解析解,令:,,,,,1),当 x = 0 时,,,,c=3千米,a=0.4千米/分, 分别取b=0.6,0.8,1.2千米/分时, 缉私艇追赶路线的图形。,追赶时间分别为: t=9,5,2.8125(分钟),2),当,时,,,,缉私艇不可能追赶上走私船。,3),,,,,当,时,,,,缉私艇不可能追赶上走私船。,(2)用MATLAB软件求解析解,MATLAB软件5.3以上版本提供的解常微分方程解析解的指令是 dsolve,完整的调用格式是:,微分方程的书写格式规定:当y是因变量时,用“Dny”表示y的n阶导数。,例1 求微分方程,的通解。,解 输入命令: y=dsolve('Dy=x+x*y','x'),Ans=-1+exp(1/2*x2)*C1,dsolve(方程1, 方程2,方程n, 初始条件, 自变量),解 输入命令: y=dsolve('D2y+4*Dy+29*y=0','y(0)=0,Dy(0)=15','x'),结 果 为 : y =3e-2xsin(5x),解 输入命令 : x,y,z=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z', 't'); x=simple(x) % 将x化简 y=simple(y) z=simple(z),结 果 为:x = (c1-c2+c3+c2e -3t-c3e-3t)e2t y = -c1e-4t+c2e-4t+c2e-3t-c3e-3t+c1-c2+c3)e2t z = (-c1e-4t+c2e-4t+c1-c2+c3)e2t,在实际生产和科研中所建立的微分方程往往很复杂,有时尽管是一阶微分方程, 也很难求解,即使求出解的表达式,要想计算相应已知变量的函数值也是很困难的,在这种情况下,在实际上,对初值问题,一般是要求得到解在若干个点上满足规定精确度的近似值,研究常微分方程的数值解法,或者得到一个满足精确度要求的便于计算的表达式。,(3)用MATLAB软件求微分方程的数值解,因此,研究常微分方程的数值解法是十分必要的。,对常微分方程,其数值解就是求其解析解,在一系列离散点,处的近似值,用MATLAB软件求数值解的一般格式为,t,x=solver(f,ts,x0),1、在解n个未知函数的方程组时,x0和x均为n维向量,m-文件中的待解方程组应以x的分量形式写成.,2、使用Matlab软件求数值解时,高阶微分方程必须等价地变换成一阶微分方程组.,注意:,function u=文件名(自变量,因变量) u=微分方程的右端,然后在指令窗口执行ode23(文件名,0,2,0),可得到图形与相关数据,再执行x,y=ode23(文件名,0,2,0),可得到两组数据,执行plot(x,y),可得到图形,建立M文件, 格式如左,例,polyfit(自变量,因变量,次数),(3)用MATLAB软件求数值解,c=3,a=0.4,b=0.8,,程序zjet.m function u=zjwt(t,y) u=0.5*(t/3)0.5-(3/t)0.5),执行下面的命令:ode23(zjwt',3,0.0005,0),若想看图中点的坐标可执行下面的命令: t,y=ode23(zjwt',3,0.0005,0) plot(t,y),此时缉私艇的位置坐标是(0.00050000000000,1.96013657712118),执行下面的命令: ode45(zjwt',3,0.0005,0),若想看图中点的坐标可执行下面的命令: t,y=ode45(zjwt',3,0.0005,0) plot(t,y),此时缉私艇的位置坐标是(0.0005,1.9675 ),MATLAB软件仿真法,当建立动态系统的微分方程模型很困难时, 我们可以用计算机仿真法对系统进行分析研究。 所谓计算机仿真就是利用计算机对实际动态系 统的结构和行为进行编程、模拟和计算,以此 来预测系统的行为效果。,MATLAB软件仿真法,x,c,o,y,走私船初始位在点(0,0),方向为y轴正方向,,缉私艇的初始位在点(c,0),,追赶方向可用方向余弦表示为:,走私船的位置:,缉私艇的位置:,o,缉私艇的位置:,则,时间步长,仿真算法:,第三步:计算缉私艇与走私船这两个动点之间的距离:,根据事先给定的距离,判断缉私艇是否已经追上了走私船,从而判断退出循环还是让时间产生一个步长,返回到第二步继续进入下一次循环;,取c=3千米,a=0.4千米/分钟,b=0.8千米/分钟,,c=3; a=0.4/60; b=0.8/60; d=0.01;dt=2;t=0; jstx=c;jsty=0;zscx=0;zscy=0; hold on axis(0,3,0,2) while (sqrt(jstx-zscx)2+(jsty-zscy)2)d) t=t+dt; 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; plot(jstx,jsty,'r+',zscx,zscy,'b*') pause(0.2) end jstx,jsty,zscx,zscy,t,程序zhuixiantu.m,显示船与艇行进路线程序 c=3; a=0.4/60; b=0.8/60; d=0.01;dt=2;t=0; jstx=c;jsty=0;zscx=0;zscy=0; while (sqrt(jstx-zscx)2+(jsty-zscy)2)d) pause(0.01) hold on axis(0,3,0,2) t=t+dt; 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; plot(jstx,jsty,'rO',zscx,zscy, 'b*') end,例设A(0,0)为一导弹发射点,发现位于B(0,100)处一架敌机沿水平方向逃离(如图),随即发射一枚导弹予以打击,现已知导弹时刻对准敌机,且速率为飞机速率的两倍(设飞机速度为1)。试编程模拟导弹打击敌机的动态过程,并实时给出飞机和导弹的位置坐标。 分析:现将整个动态过程离散化, 即以dt为时间间隔,实时观测飞机 与导弹的位置: 假定敌机从B点飞行到B1点, 导弹沿向量AB1到A1点; 此时敌机又到B2点,导弹则 沿向量A1B2到A2点; 以此类推,计算飞机的位置 坐标和导弹的位置坐标。,记,step1 画出导弹与飞机A、B点位置; step2 求出dt时间段后的B1点坐标; 2.1 求出向量A0B1的方向, 2.2 求出A1点坐标 2.3 求出导弹与飞机间的距离d; step3 判断距离d是否达到精度要求;如果没有 达到要求,转向step1重复画点、计算新的位置 直到d达到要求.,步骤:,hold on axis(0 3 0 2); k=0;A=3,0;B=0,0; v=0.01;dt=1;d=3; while d0.01 plot(A(1),A(2),'r.'); plot(B(1),B(2),'b*'); pause(0.2); k=k+1; B=B+0,v*dt; e=B-A; d=norm(e); A=A+2.0*v*dt*e/d; fprintf('k=%.0f B(%.2f,100) A(%.2f,%.2f) d=%.2fn',k,B(1),A(1),A(2),d); end,2.5 结果分析,用求解析解的方法算得的解是最为精确的;用数值方法计算的结果依赖于迭代终值的设定,减小迭代终值可以提高计算精度;用计算机仿真法计算的结果依赖于时间迭代步长的选取和程序终止条件的设定,修改终止条件的设定和减小时间迭代步长可以提高计算精度,减小误差。,1. 有一只猎狗在B点位置发现了一只兔子在正东北方距离它200米的地方O处,此时兔子开始以8米/秒的速度向正西北方距离为120米的洞口A全速跑去,假设猎狗在追赶兔子的时候始终朝着兔子的方向全速奔跑,用计算机仿真法等多种方法完成下面的实验: (1) 问猎狗能追上兔子的最小速度是多少? (2) 在猎狗能追上兔子的情况下,猎狗跑过的路程是多少? (3) 画出猎狗追赶兔子奔跑的曲线图。 (4) 假设在追赶过程中,当猎狗与兔 子之间的距离为30米时,兔子由于害怕, 奔跑的速度每秒减半,而猎狗却由于兴 奋奔跑的速度每秒增加0.1倍,在这种情 况下,再按前面的(1)(3)完成实验任务。,实验任务,A,B,N,W,O,2. 使用计算机仿真方法求解下述问题:在正方形的四个顶点上各有一人,如下图所示,在某一时刻,四人同时出发以匀速按顺时针方向追赶下一个人,如果他们始终保持对准目标,试确定每个人的行进路线。,end,

    注意事项

    本文(MATLAB缉私艇追击走私船.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开