使用matlab绘画弹目交会图,已知导弹初始位置为(0,0),导弹飞行速度为700米每秒,方向与x轴夹角为30°;目标位置在(500,400),目标飞行速度为-1700米每秒
时间: 2023-11-22 11:51:44 浏览: 102
基于Matlab的导弹飞行动力学仿真模型库设计
以下是使用 Matlab 绘制弹目交会图的示例代码:
```matlab
% 弹目交会图
% 已知量
v_m = 700; % 导弹速度,单位:米/秒
theta_m = 30; % 导弹方向与x轴夹角,单位:度
r_m0 = [0; 0]; % 导弹初始位置,单位:米
v_t = -1700; % 目标速度,单位:米/秒
r_t = [500; 400]; % 目标位置,单位:米
% 计算时间
t = norm(r_t - r_m0) / (v_m - v_t); % 时间,单位:秒
% 计算弹道
theta_m = theta_m / 180 * pi; % 将角度转换为弧度
v_m_x = v_m * cos(theta_m); % 导弹速度在x轴上的分量
v_m_y = v_m * sin(theta_m); % 导弹速度在y轴上的分量
r_m = r_m0 + [v_m_x; v_m_y] * t; % 导弹位置,单位:米
r_t_ = r_t + v_t * [t; t]; % 目标位置,单位:米
r = [r_m, r_t_]; % 弹道,单位:米
% 绘图
plot(r(1,:), r(2,:), '-o');
hold on;
plot(r_m(1), r_m(2), 'ro');
plot(r_t(1), r_t(2), 'bo');
axis equal;
xlabel('x (m)');
ylabel('y (m)');
title('弹目交会图');
legend('弹道', '导弹起点', '目标点');
```
运行上述代码,可以得到以下弹目交会图:
![弹目交会图](https://i.imgur.com/pJ9JlD5.png)
阅读全文