导弹追击问题的数学建模与MATLAB仿真
创作时间:
作者:
@小白创作中心
导弹追击问题的数学建模与MATLAB仿真
引用
CSDN
1.
https://blog.csdn.net/2301_81340086/article/details/136761212
导弹追击问题是一个经典的数学建模问题,涉及微分方程、坐标变换和编程实现等多个方面的知识。本文将通过一个具体的实例,详细介绍如何通过MATLAB编程来模拟导弹追踪移动目标的过程。
问题描述
导弹基地发现正北方向120km处海面上有一艘敌舰以90km/h的速度向正东方向行驶。该基地立即发射导弹追踪追击敌舰,导弹速度为450km/h,自动导航系统使导弹在任一时刻都能对准敌舰。试问导弹在何时何处击中敌舰?
问题分析
由于自动导航系统的存在,导弹始终对准了敌舰,所以导弹的轨迹应该是一个曲线。我们可以采用微分的思想解决这个问题。先计算出基地和敌舰的初始距离d,然后利用三角函数将导弹和敌舰的坐标表示出来,设敌舰在t(t极小)时间内走过的距离为s,而导弹到飞行的距离为s1,通过此时导弹与敌舰连线与x轴的角度算出导弹的新坐标(x1,y1),以及敌舰的新坐标(x2,y2)。通过选取足够多的t,就可以找到d足够小时(视作打击完成)的导弹的坐标及飞行时间。
本题使用MATLAB编程和图像绘制。
相应公式
代码展示
clear;clc;
v1=25;v2=125;n=200;t=1; %采用米做单位,时间间隔选定1秒
a=rand(n,2,2);
a(1,1,1)=0;a(1,2,1)=0;
a(1,1,2)=0;a(1,2,2)=120000;
c=1;
while c>0.01
for i=1:1100 %冗余循环次数
d=sqrt((a(i,1,1)-a(i,1,2))^2+(a(i,2,1)-a(i,2,2))^2);
cos_1 = (abs(a(i,1,2)-a(i,1,1)))/d;
sin_1 = (abs(a(i,2,2)-a(i,2,1)))/d;
a(i+1,1,2)=a(i,1,2)+v1*t;
a(i+1,2,2)=120000;
a(i+1,1,1)=a(i,1,1)+v2*t*cos_1; %依次描出导弹每个点的坐标
a(i+1,2,1)=a(i,2,1)+v2*t*sin_1;
plot(a(i,1,1),a(i,2,1),'r.',a(i,1,2),a(i,2,2),'b.')
%legend('船','导弹','Location','northeastoutside')
xlabel('东方向距离')
ylabel('北方向距离')
title('导弹追击')
hold on;
pause(0.01)
if d<50 %假设导弹在离敌舰50米处即可命中
break
end
end
c=0;
end
time1 = a(i+1,1,2)/v2 %计算导弹命中的时间
zuobiao = [a(i,1,1) a(i,2,2)]
%显示命中坐标
图像示例
展望
真实的追击过程远比模拟的困难,需要用到更加复杂的公式,为了简单模拟,追击过程被大大简化。希望以后我也能模拟出真正的追踪过程。
本文原文来自CSDN
热门推荐
一文详解铜线和铝线变压器:从性能到成本的全方位对比
通过面相看出女性的好运与魅力
日本的起源是什么?——探索日本民族和国家的历史根源
中国将新建机场74个 未来去这些城市可坐飞机
公职人员能否继承农村宅基地?法律这样规定
特征, 光学玻璃的应用及检测方法
《三国冰河时代》平民魏国阵容攻略
英国已经破产,在全球化和国际竞争的背景下逐渐褪色
解锁秋冬男士圆领卫衣的时尚潮流穿搭指南
建材购买完全指南:在哪里找到合适的建材以及价格分析
自媒体运营数据分析:解读内容背后的数字
贺知章:与萧山历史紧密相连的文化巨擘
书法入门新手的正确步骤是什么?
金吾卫是什么官职?金吾卫主要负责干嘛的?
塔洛:一生追寻藏戏的脚步
荷叶的功效与作用 荷叶现代应用方法有什么
央视反诈短剧:揭秘十大诈骗套路
减肥期间能吃米饭吗?营养科医生的专业解答
赢下国乒内战!王曼昱4局横扫孙颖莎,轻松加冕亚洲杯冠军
逛前门大街,吃喝玩乐过大年
亚历山大东征:一场改变世界的历史事件
一所农村学校的特色教育发展之路
《西游记》里孙悟空与天庭两大高手的不同对战
郑和:中国最伟大的航海家,东方航海的缔造者
女生选羽绒服指南——长度、克重、含绒量、版型合集(文字细节版)
菜板选什么木材最好?这4种木材做菜板,可以用很多年
老年人的百万医疗保险值得买吗?
三维激活传统之美——陕北民歌何以常唱常新
北京天坛建成600周年历史文化展开幕
牛年余姓女宝宝起名指南:寓意美好、朗朗上口的名字推荐