《MATLAB缉私艇追击走私船数学建模》由会员分享,可在线阅读,更多相关《MATLAB缉私艇追击走私船数学建模(11页珍藏版)》请在金锄头文库上搜索。
1、MATLABMATLAB缉私艇追击走私缉私艇追击走私船船- -数学建模数学建模3 3 建立模型建立模型 xcoy走私船初始位置在点走私船初始位置在点(0,0)(0,0),行驶方向为行驶方向为y y轴正方向,轴正方向,缉私艇的初始位置在点缉私艇的初始位置在点( (c c,0),0),缉私艇行驶的路程为缉私艇行驶的路程为s s 。 在时刻在时刻t t:缉私艇到达点缉私艇到达点 走私船的位置到达点走私船的位置到达点4 模型求解模型求解 (1) 求解析解求解析解 令:,1),当 x = 0 时, ,c=3c=3千米,千米,a=0.4a=0.4千米千米/ /分,分,分别取分别取b=0.6,0.8,1.2
2、b=0.6,0.8,1.2千米千米/ /分时,分时,缉私艇追赶路线的图形。缉私艇追赶路线的图形。 追赶时间分别为:追赶时间分别为:t=9t=9,5 5,2.81252.8125(分钟)(分钟) 2)2)当当时,时,缉私艇不可能追赶上走私船。缉私艇不可能追赶上走私船。 3 3),当当时,时,缉私艇不可能追赶上走私船。缉私艇不可能追赶上走私船。 MATLAB软件仿真法软件仿真法 当建立动态系统的微分方程模型很困难时,当建立动态系统的微分方程模型很困难时,我们可以用计算机仿真法对系统进行分析研究。我们可以用计算机仿真法对系统进行分析研究。所谓计算机仿真就是利用计算机对实际动态系所谓计算机仿真就是利用
3、计算机对实际动态系统的结构和行为进行编程、模拟和计算,以此统的结构和行为进行编程、模拟和计算,以此来预测系统的行为效果。来预测系统的行为效果。MATLAB软件仿真法软件仿真法xcoy走私船初始位在点走私船初始位在点(0,0)(0,0),方向为,方向为y y轴正方向,轴正方向,缉私艇的初始位在点缉私艇的初始位在点( (c c,0),0),追赶方向可用方向余弦表示为追赶方向可用方向余弦表示为: 走私船的位置走私船的位置:缉私艇的位置缉私艇的位置: o缉私艇的位置缉私艇的位置: 则则时间步长时间步长仿真算法:仿真算法: 第二步:第二步: 计算动点缉私艇计算动点缉私艇D D在时刻在时刻 时的坐标时的坐
4、标 计算走私船计算走私船R R在时刻在时刻 时的坐标时的坐标 第一步:设置时间步长第一步:设置时间步长, 速度速度a, ba, b及初始位置及初始位置第三步:计算缉私艇与走私船这两个动点之间的距离:第三步:计算缉私艇与走私船这两个动点之间的距离: 根据事先给定的距离,判断缉私艇是否已经追上根据事先给定的距离,判断缉私艇是否已经追上了走私船,从而判断退出循环还是让时间产生一个了走私船,从而判断退出循环还是让时间产生一个步长,返回到第二步继续进入下一次循环;步长,返回到第二步继续进入下一次循环; 第四步:当从上述循环退出后,由点列第四步:当从上述循环退出后,由点列 和和可分别绘制成两条曲线可分别绘
5、制成两条曲线即为缉私艇和走私船走过的轨迹曲线。即为缉私艇和走私船走过的轨迹曲线。 取取c=3 3千米,千米,a=0.40.4千米千米/ /分钟,分钟,b=0.80.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 onaxis(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,ro,zscx,zscy,b*) pause(0.2)endjstx,jsty,zscx,zscy,t程序程序zhuixiantu.mzhuixiantu.m历时历时:296秒秒,艇艇:(:(0.000041,1.97) 船船:(:(0,1.97) 结束结束