Title: 【用Matlab对MH370的飞行轨迹进行预测拟合】
Date: 2014-03-28 22:19:22


收集了马航MH370已知的相关资料,然后想着自己来整理一下并进行一下轨迹拟合。

马来西亚航空公司(Malaysia Airlines)发布了关于使用多普勒效应来推测MH370航班的飞行轨迹的相关细节 [1.] 。在这份资料中,第1个图说明用了多普勒效应推测。第2个图显示了450节的飞机走北线(红色)南线(青色)预计会带来的频移和实际测量的频移(蓝色)。第3个是按400节(红线)和450节(黄线)的速度推测的航迹。

imge

由上图也可以推知(根据Google Earth),当天和飞机建立卫星通信(ping)的卫星为Inmarsat-3 F1,此颗卫星位于印度洋上空,东经64.5°(印度洋上空)GEO轨道 [3.] ,是地球同步轨道卫星。

然后去查了这个Inmarsat,根据Inmarsat网站的消息 [2.] ,因为MH370有一段时间没有和卫星联系,所以是卫星主动去ping飞机,而飞机回应一个Reply。

多普勒效应通常只能估算波源和接收方之间的相对速度(此时又逗逼的想起了物理课本的知识)。仅仅使用多普勒效应,很难估计速度的方向和接收方的具体位置。英国机构对此的解释说是参照了其它6架波音飞机的飞行状况,通过对比进行的确认。

我不知道调查机构的具体数据,但是我觉得可以先给定一个巡航速率Vc,用逼近的方法拟合出一条符合各点相对速率的航迹,根据最后一次已知位置,可以解出第一个ping的位置(似乎是认为在给定要素的情况下有唯一解),然后根据此位置递推,最终得到推测的航迹。最大的问题在于无法准确知道实际飞行速度,按恒定400节和450节推测的航迹最终误差上千公里。。(好像也只能这样了)

那么现在开始轨迹模拟(话说Matlab真的打开超级慢。。。学了的东西都快忘了)


代码如下:

vs=[500,450,400,350]
for i=1:4
Vc=vs(i)*1.862*1000/3600
drg=vs(i)/3600/60
x = 80:drg:127.5
c=400
mhz=abs(Vc*cosd(x)/c);
plot(x,mhz),grid on
hold all
legend('500','450','400','300')
end

代码参量解释:

  1. Vc: 海里单位换算

  2. drg:节-弧度换算

  3. mhz:频谱偏移量与卫星原发射频率之比


Matlab运行结果如下:

image


以及初步结论 + 吐槽

  1. 根据Figure图可知,不同的飞机速率对应的轨迹是差距很大的,纵坐标表示卫星与飞机的相对夹角,当它为90°时,说明飞机正在飞跃赤道,所以现在回过头来看马航的那幅图是有问题的。不能够简单地把每个时间点的线连起来。实际上飞机过赤道的时候频率偏移量应该为零!虽然在这个时间点上不能采集到数据。但至少说明,马航这样划线是不妥的。

  2. 大批媒体整天在那瞎bb干啥玩意呢,另外,媒体过多的主动嵌入家属的情绪也是甚为不妥的

  3. 就凭现在的信息,只能推定大致的航线(方向)而已,信息和具体的数据还是太少,或者是他们有意没放出来,

  4. 飞机的速度根本无法通过ping来推定,如果加上风力的话就更难预测了,在一般的机械空气振动学中,同样用400或450节的空速巡航,因为风速不同,地速可能差异很大在上面的模型中,相差50节的速度差到最后都会导致上千公里的轨迹误差,

  5. 所以说,那些不明事理就知道整天瞎bb要真相的人真是。。。。,真相可能会有,但绝壁没那么快就调查出来,没有人是神,但是也确实可以理解每个人的急切心情


相关资料

Comments
Write a Comment