作业帮 > 数学 > 作业

求球面两线的交点已知地球球面上两条线,知道每条线上各两点的经纬度,求这两条线在球面的交点的经纬度.

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/23 00:22:11
求球面两线的交点
已知地球球面上两条线,知道每条线上各两点的经纬度,求这两条线在球面的交点的经纬度.
如果学过立体解析几何的话这个问题其实很简单.
如果没有学过也没关系,只要有平面解析几何的基础就不难理解以下解法.

不妨把地球看为一个球体,地心设为球心O,设半径为R,
南北极所在线设为Z轴,那么赤道平面就可以看做xy轴平面了,
且本初子午线所在平面与赤道所在平面的交线设为X轴,
那么地球上任一点坐标(x,y,z)满足方程:
x^2+y^2+z^2=R^2

且任一点A(x,y,z)与经纬度坐标是对应的,
设某点纬度为θ,经度为ω,
那么有:
x=cos(ω)cos(θ)R,
y=sin(ω)cos(θ)R,
z=sin(θ)R

所以当给出两点的经纬度时A1(ω1,θ1),B1(ω2, θ2),
可以得到两点的立体坐标A1(x1,y1,z1), B1(x2,y2,z2),
且经过A1,B1的大圆所在平面经过原点,
所以利用三点坐标可以得到它们所在的平面方程(三点决定一个平面).
不妨设此平面方程为:
a1*x+b1*y+c1*z=0,

同理由另外两点的经纬度确定的平面方程为:
a2*x+b2*y+c2*z=0,

加上球面方程共三个方程
a1*x+b1*y+c1*z=0,
a2*x+b2*y+c2*z=0,
x^2+y^2+z^2=R^2
(a1,a2,b1,b2,c1,c2,R都是已知的参数)

求出交点坐标:(x0,y0,z0)(一般是关于地心对称的两个交点)
最后利用: x0=cos(ω)cos(θ)R,y0=sin(ω)cos(θ)R,z0=sin(θ)R
就可以得到相应的经纬度坐标了.

另外说明下:
1)设北极为Z轴正的方向,本初子午线与赤道交点为X轴正方向,
2)此处计算把常用的经纬度表示转化为了弧度制.
3)且ω∈[-π,π],当ω∈[-π,0)时为西经,当ω∈[0,π]时为东经,θ∈[-π/2,π/2],当θ∈[-π/2,0)时为南纬,当θ∈[0,π/2]时为北纬,