数学建模导弹跟踪问题_精品文档.docx
- 文档编号:1521085
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:11
- 大小:199.43KB
数学建模导弹跟踪问题_精品文档.docx
《数学建模导弹跟踪问题_精品文档.docx》由会员分享,可在线阅读,更多相关《数学建模导弹跟踪问题_精品文档.docx(11页珍藏版)》请在冰豆网上搜索。
导弹跟踪问题
摘要
本文研究的是导弹跟踪敌艇问题。
通过建立合理的数学模型,利用matlab软件模拟导弹跟踪敌艇的过程,并进行分析计算最终求得导弹击中敌艇的时间和位置。
首先我们根据问题中的条件粗略描绘出导弹和敌艇的运动轨迹并对其进行分析,利用在任何时刻导弹的飞行方向指向敌机的位置得出导弹的运动轨迹满足微分方程组的结论。
然后结合初值条件,并经过严格的数学公式推导和合理的假设,求解出导弹运动轨迹的方程。
在matlab中分别采用Euler法、改进的Euler法和仿真方法近似计算导弹轨迹上的一系列点,接着对这些点进行精确度分析,绘制出导弹运动轨迹的曲线,并比较这三种数值方法的精确度。
最后我们对该模型进行分析评价,指出该模型的优点和不足。
关键词导弹跟踪运动轨迹matlab常微分方程Euler法
正文
1.模型问题详述
某军的一导弹基地发现正北方向120km处海面上有敌艇一艘以90km/h的速度向正东方向行驶。
该基地立即发射导弹跟踪追击敌艇,导弹的速度为450km/h,自动导航系统使导弹在任一时刻都能对准敌艇。
试问导弹在何时何处击中敌艇?
并绘制导弹轨迹曲线图。
2.模型假设
假设一:
导弹与敌艇的速率恒定。
假设二:
导弹飞行的轨迹切线方向始终指向敌艇。
假设三:
导弹飞行的轨迹和敌艇行驶的高度始终在同一平面内。
假设四:
导弹与敌艇的长度可以忽略,均可看成物理质点。
假设五:
外界对导弹和敌艇的运动没有影响
3.数据字典
(x,y)坐标位置
t经历的时间
ve敌艇的速度
vw导弹飞行的速度
H敌艇最初点与导弹的距离
4.问题分类及分析
问题一导弹在何时何处击中敌艇?
分析:
由于敌艇的运行轨迹和导弹的运行轨迹是处于同一平面内,故可建立起平面直角坐标系。
又由于导弹飞行方向始终指向敌机,即导弹飞行方向随时间的改变而改变,故可建立起微分方程并求解。
问题二绘制导弹轨迹曲线图。
分析:
由于导弹运动轨迹满足微分方程,所以我们可以利用Euler法、改进Euler法、仿真方法分别对所建立的数学模型进行数值求解,并绘制出导弹运动轨迹曲线图像。
5.建模
设坐标系如下,取导弹基地为原点0(0,0)。
轴指向正东方,y轴指向正北方。
当t=0时,导弹位于O,敌艇位于点(0,H),(H=120(km))设导弹t时刻的位置为P(),由题意,
(1)
其中。
另外在t时刻,敌艇位置应该为,其中=90(km/h)。
由于导弹轨迹的切线方向必须指向敌艇,即直线PM的方向就是导弹轨迹上点P的切线方向,故有
(2)
(3)
方程(3)初值条件想
x(0)=0,y(0)=0(4)
构成了一个关于时间变量t的一阶微分方程组的初值问题。
由
(2)得
两边对t求导得
即有
把
(1)写为代入上式,就得到轨迹方程。
这是一个二阶非线性微分方程,加上初值条件,则初值问题
上式分别为(5),(6),(7)。
就是导弹的轨迹的数学模型。
方程(5)可以降阶。
令,则式(5)化为一介可分离变量方程
易得
由式(7)得,从而
于是有
(8)
于是积分又可以得到
利用式(6)得,于是导弹轨迹方程为
(9)
设导弹击中敌艇于B(L,H),以y=H代入(9)得
(10)
而导弹击中敌艇的时刻
(11)
将数据代入(10),(11)式,得
L=25(km),T0.2778(h)
接下来用数值方法求解
(1)Euler法
由方程
(1),(3)解出的表达式,取时间步长,对应
时导弹轨迹上点的坐标为,则Euler格式为
上式分别为(12)(13)(14)
当计算到即停止,于是,
使用matlab,编辑m文件:
functionEuler(t)
H=120;Ve=90;Vw=450;
x
(1)=0;y
(1)=0;T
(1)=0;
fori=1:
10e6
M=(Ve*T(i)-x(i))/(H-y(i));
x(i+1)=x(i)+Vw*t/sqrt(1+1/M.^2);
y(i+1)=y(i)+Vw*t/sqrt(1+M.^2);
T(i+1)=t+T(i);
ify(i+1)>=H
break;
end
end
[T;x;y]'
L=x(i+1)
T=x(i+1)/Ve
plot(x,y)
运行结果:
>>Euler(0.01)
ans=
000
0.010004.5000
0.02000.03518.9999
0.03000.106613.4993
0.04000.216217.9980
0.05000.365422.4955
0.06000.556026.9914
0.07000.790131.4854
0.08001.069635.9767
0.09001.397140.4647
0.10001.775044.9488
0.11002.206249.4281
0.12002.693953.9016
0.13003.241758.3682
0.14003.853562.8264
0.15004.534067.2746
0.16005.288471.7109
0.17006.122876.1329
0.18007.044380.5375
0.19008.061384.9211
0.20009.184189.2788
0.210010.425493.6042
0.220011.801097.8888
0.230013.3318102.1204
0.240015.0464106.2810
0.250016.9861110.3414
0.260019.2171114.2495
0.270021.8642117.8886
0.280025.2645120.8361
L=
25.2645
T=
0.2807
绘制出导弹运动轨迹曲线:
(2)改进Euler法
改进的Euler迭代式
(3)
上式分别为(15)(16)(17)(18)(19)
使用matlab,编辑m文件:
functionEuler2(t)
H=120;Ve=90;Vw=450;
x
(1)=0;y
(1)=0;T
(1)=0;
fori=1:
10e6
M=(Ve*T(i)-x(i))/(H-y(i));
x1(i+1)=x(i)+Vw*t/sqrt(1+1/M.^2);
y1(i+1)=y(i)+Vw*t/sqrt(1+M.^2);
T(i+1)=i*t;
x(i+1)=0.5*(x1(i+1)+x(i)+Vw*t/sqrt(1+((H-y1(i+1))/(Ve*T(i+1)-x1(i+1))).^2));
y(i+1)=0.5*(y1(i+1)+y(i)+Vw*t/sqrt(1+((Ve*T(i+1)-x1(i+1))/(H-y1(i+1))).^2));
ify(i+1)>=H
break;
end
end
[T;x;y]'
L=x(i+1)
T=x(i+1)/Ve
plot(x,y)
运行结果:
>>Euler2(0.01)
ans=
000
0.01000.01754.4999
0.02000.07028.9996
0.03000.159313.4987
0.04000.286417.9968
0.05000.453322.4937
0.06000.661626.9888
0.07000.913331.4817
0.08001.210635.9718
0.09001.555740.4585
0.10001.951444.9410
0.11002.400449.4184
0.12002.905953.8898
0.13003.471558.3540
0.14004.101362.8096
0.15004.799867.2549
0.16005.572271.6879
0.17006.424876.1062
0.18007.364680.5067
0.19008.400284.8856
0.20009.542089.2379
0.210010.802793.5571
0.220012.198997.8342
0.230013.7520102.0565
0.240015.4924106.2045
0.250017.4657110.2452
0.260019.7531114.1118
0.270022.5713117.5719
0.280023.9104121.6546
L=
23.9104
T=
0.2657
绘制出导弹运动轨迹曲线:
(3)仿真方法
设导弹和敌艇在初始时刻分别位于。
此时,导弹指向。
而在时,导弹的位置,其中,敌艇的位置则为。
这时导弹沿方向飞行,的倾角为;在时导弹的位置为。
以此方式,当时,导弹的位置为,其中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 导弹 跟踪 问题 精品 文档