飞行航程计算
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
✓直达航线缩短了多少千米?
纽约
2/14
球面短程线
球面上给定两点 P1、P2,由 P1 到 P2长度最短的
球面曲线称为球面短程线。
球面短程线位于过球心O以及P1、P2的平面与球面 相交的大圆弧上。
P1
Leabharlann Baidu
P2
球面短程线长度计算公式
L = R×
如何得到?
O
3/14
两向量所张夹角 的计算方法
记球面上两点坐标分别为:P1(x1,y1,z1)和P2(x2,
程与时间各是多少?
8/14
实验表格
单位:千米
x(×103) y(×103) z(×103)
北京
上海
东京 旧金山 纽约
距离(千米)
北京 纽约
时间(小时)
节约路程
北京 上海
上海 东京
东京 旧金山
旧金山 纽约
节约时间
9/14
思考问题
1. 根据“北京时间2002年9月27日14点,航班从北京 起飞,纽约时间9月27日15点30分,降落在纽约” 这段消息,分析两地经差和时差,计算飞行时间。
2、把经纬度坐标转换为地心直角坐标
x R cos cos
y R cos sin
z R sin
3、计算球心到两航点的向量夹角
arccos(
x1 x2
y1 y2 R2
z1z2
)
4、计算短程线距离 L R
6/14
小结
航点 北京 上海 东京 旧金山 纽约 经度 E116o E122 o E140 o W123 o W76o 纬度 N40o N31o N36o N37o N41o
z
本初子午线, 经度为0
P R
向北半取正径为: R北纬
向φ南∈经取(-负度90为,:9南0) 纬 向东纬取正度为:东经
向西取负为西经 θ∈(-180,180)
O
S
y
x R cos cos
x
赤道平面
y R cos sin z R sin
5/14
小结
要计算两航点间的短程线距离:
1、两航点的经纬度转化为数学形式
y2,z2), 则:
P1
P2
OP1 OP2 | OP1 | | OP2 | cos
OP1 OP2 x1 x2 y1 y2 z1z2
| OP1 || OP2 | R
cosarccxo1sx(2x1 xyR212y2yR1 2yz21
z2
z1z2
)
O
如何计算 航点的直 角坐标?
4/14
经纬度及转换为地心直角坐标原理
实验二 飞行航程计算实验
飞行航程背景介绍 短程线计算原理 程序举例与实验要求 思考练习题及附录
飞行航程计算的问题背景
北京时间2002年9月27日14点,国航CA981航班从首 都国际机场起飞,当地时间9月27日15点30分,降落 在纽约肯尼迪机场。
北京
东京 上海
旧金山
✓两条飞行路线,路程各有多长?
航点 P1
P2
P3
P4
P5
经度 +116 +122 +140 –123 –76
纬度 +40 +31 +36 +37 +41
7/14
实验任务
分别计算:
北京纽约 北京上海 东京旧金山 五个区间的飞行距离。
上海东京 旧金山纽约
若飞机的飞行速度为:980千米/小时,计算
五个区间的飞行时间。
假设原路线中转站不停,求直达航班节约路
2.数学实验所用的计算方法是近似方法,其误差跟哪 些参数有关?如何提高精度?
3.在互联网上利用“谷歌地球”(google earth),了解 电子地图,寻找“北京、纽约”的经纬度等数据。
10/14
11/14
4.下面程序是绘制地球上北京和纽约两城市之间球 面短程线,试对程序中的语句作功能性注释
R=6400; theta=(-90:15:90)*pi/180; fai=(-180:15:180)*pi/180; X=R*cos(theta)'*cos(fai); Y=R*cos(theta)'*sin(fai); Z=R*sin(theta)'*ones(size(fai)); colormap([0 0 0]),mesh(X,Y,Z),axis off hold on city=[40,118;41,-76]; theta=city(:,1)*pi/180;fai=city(:,2)*pi/180;
13/14
12/14
x=R*cos(theta).*cos(fai); y=R*cos(theta).*sin(fai); z=R*sin(theta); t=(0:20)/20; X=(1-t)*x(1)+t*x(2); Y=(1-t)*y(1)+t*y(2); Z=(1-t)*z(1)+t*z(2); r=sqrt(X.*X+Y.*Y+Z.*Z); X=R*X./r;Y=R*Y./r;Z=R*Z./r; plot3(x,y,z,'r<',X,Y,Z,'b','LineWidth',2)