“2018年IOAA理论第10题-牛郎和织女”的版本间的差异

来自astro-init
第85行: 第85行:
  
 
请注意,向量解法并不适用于所有的类似题目。坐标转换题目涉及到旋转矩阵,这并不在高中数学能接触的范畴。
 
请注意,向量解法并不适用于所有的类似题目。坐标转换题目涉及到旋转矩阵,这并不在高中数学能接触的范畴。
 +
 +
为方便撰写,计算过程使用了简单matlab代码。
  
 
=== 球面三角解法 ===
 
=== 球面三角解法 ===
 
1.将时分秒、度分秒化成度
 
1.将时分秒、度分秒化成度
 
  clear;
 
  clear;
v_a=279+14/60+7.35/3600;%织女星赤经
+
v_a=279+14/60+7.35/3600;%织女星赤经
 
+
v_d=38+47/60+7.7/3600;%织女星赤纬
v_d=38+47/60+7.7/3600;%织女星赤纬
+
v_r=1/(130.23/1000);%织女星距离
 
+
a_a=297+41/60+55.5/3600;%牛郎星赤经
v_r=1/(130.23/1000);%织女星距离
+
a_d=8+52/60+13.3/3600;%牛郎星赤纬
 
+
a_r=1/(194.95/1000);%牛郎星距离
a_a=297+41/60+55.5/3600;%牛郎星赤经
 
 
 
a_d=8+52/60+13.3/3600;%牛郎星赤纬
 
 
 
a_r=1/(194.95/1000);%牛郎星距离
 
  
 
2.解牛郎星A、织女星V和北天极P组成的球面三角形
 
2.解牛郎星A、织女星V和北天极P组成的球面三角形
  
P=a_a-v_a;
+
P=a_a-v_a;
 
+
PA=90-a_d;
PA=90-a_d;
+
PV=90-v_d;
 
+
AV=acosd(cosd(PA)*cosd(PV)+sind(PA)*sind(PV)*cosd(P))%a小问
PV=90-v_d;
+
'''AV = 34.1958'''
 
+
A=asind(sind(P)*sind(PV)/sind(AV))
AV=acosd(cosd(PA)*cosd(PV)+sind(PA)*sind(PV)*cosd(P))%a小问
+
'''A = 26.0557'''
 
+
V=asind(sind(P)*sind(PA)/sind(AV))
AV = 34.1958
+
'''V = 33.8319'''
 
 
A=asind(sind(P)*sind(PV)/sind(AV))
 
 
 
A = 26.0557
 
 
 
V=asind(sind(P)*sind(PA)/sind(AV))
 
 
 
V = 33.8319
 
  
 
2.1.角V是钝角还是锐角?
 
2.1.角V是钝角还是锐角?
  
V=180-V
+
V=180-V
 
+
'''V = 146.1681'''
V = 146.1681
 
  
 
3.计算两颗星的空间距离
 
3.计算两颗星的空间距离
  
lAV=sqrt(v_r^2+a_r^2-2*v_r*a_r*cosd(AV))
+
lAV=sqrt(v_r^2+a_r^2-2*v_r*a_r*cosd(AV))
 
+
'''lAV = 4.4852'''
lAV = 4.4852
 
  
 
4.根据自行数据计算方向角
 
4.根据自行数据计算方向角
  
v_v=atand(200.94/286.23)
+
v_v=atand(200.94/286.23)
 
+
'''v_v = 35.0697'''
v_v = 35.0697
+
a_v=atand(536.23/385.29)%c小问
 
+
'''a_v = 54.3021'''
a_v=atand(536.23/385.29)%c小问
 
 
 
a_v = 54.3021
 
  
 
5.解画出牛郎星、织女星、交叉点组成的球面三角形
 
5.解画出牛郎星、织女星、交叉点组成的球面三角形
 
+
IAV=a_v+A
IAV=a_v+A
+
'''IAV = 80.3578'''
 
+
IVA=V-v_v
IAV = 80.3578
+
'''IVA = 111.0984'''
 
+
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
IVA=V-v_v
+
'''AIV = 34.8084'''
 
+
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
IVA = 111.0984
+
'''AI = 66.7171'''
 
+
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
+
'''VI = 76.0858'''
 
 
AIV = 34.8084
 
 
 
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
 
 
 
AI = 66.7171
 
 
 
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
 
 
 
VI = 76.0858
 
  
 
6.计算PI,进而得到交叉点赤纬
 
6.计算PI,进而得到交叉点赤纬
 
+
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(a_v))
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(a_v))
+
'''PI = 53.8052'''
 
+
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(v_v))%分别使用PIA和PIV计算PI,作为验算
PI = 53.8052
+
'''PI2 = 39.6558'''
 
+
%为什么不一样??!!
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(v_v))%分别使用PIA和PIV计算PI,作为验算
 
 
 
PI2 = 39.6558
 
 
 
%为什么不一样??!!
 
  
 
7.重新做第4步。实际上,交叉点I在牛郎和织女星的背后
 
7.重新做第4步。实际上,交叉点I在牛郎和织女星的背后
 
+
IAV=180-(a_v+A)
IAV=180-(a_v+A)
+
'''IAV = 99.6422'''
 
+
IVA=180-(V-v_v)
IAV = 99.6422
+
'''IVA = 68.9016'''
 
+
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
IVA=180-(V-v_v)
+
'''AIV = 34.8084'''
 
+
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
IVA = 68.9016
+
'''AI = 66.7171'''
 
+
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
+
'''VI = 76.0858'''
 
 
AIV = 34.8084
 
 
 
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
 
 
 
AI = 66.7171
 
 
 
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
 
 
 
VI = 76.0858
 
  
 
8.重新做第5步。∠PIA和∠PIV实际上也是补角
 
8.重新做第5步。∠PIA和∠PIV实际上也是补角
 
+
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
+
'''PI = 117.9455'''
 
+
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
PI = 117.9455
+
'''PI2 = 117.9455'''
 
+
%这次一样了!
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
 
 
 
PI2 = 117.9455
 
 
 
%这次一样了!
 
  
 
9.计算交叉点赤经
 
9.计算交叉点赤经
 
+
API=asind(sind(AI)*sind(180-a_v)/sind(PI))
API=asind(sind(AI)*sind(180-a_v)/sind(PI))
+
'''PI = 57.6117'''
 
+
I_d=90-PI
API = 57.6117
+
'''I_d = -27.9455'''
 
+
I_a=a_a-API%e小问
I_d=90-PI
+
'''I_a = 240.0870'''
 
 
I_d = -27.9455
 
 
 
I_a=a_a-API%e小问
 
 
 
I_a = 240.0870
 
  
 
10.后话:如果你没注意到第2步中∠V实际是钝角,会发生什么?
 
10.后话:如果你没注意到第2步中∠V实际是钝角,会发生什么?
 +
V=asind(sind(P)*sind(PA)/sind(AV));
 +
IAV=180-(a_v+A);
 +
IVA=180-(V-v_v);
 +
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV));
 +
AI=asind(sind(IVA)*sind(AV)/sind(AIV));
 +
VI=asind(sind(IAV)*sind(AV)/sind(AIV));
 +
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
 +
'''PI = 80.7170'''
 +
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
 +
'''PI2 = 80.9302'''
 +
%非常致命:即使你验算,也很可能无法发现之前的错误!
 +
I_d=90-PI
 +
'''I_d = 9.2830'''
  
V=asind(sind(P)*sind(PA)/sind(AV));
+
如果你没有意识到交叉点在背后,你的答案出错。流程:1-2-3-4-5-出错
  
IAV=180-(a_v+A);
+
这个错误可以通过验算发现,但一般来说你不会验算。流程:1-2-3-4-5-6-7-8-满分
  
IVA=180-(V-v_v);
+
如果你没意识到V是钝角,即使验算也无法发现。流程:1-2-9-出错
  
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV));
+
只有你同时避开了这两个坑,有可能拿到满分。流程:1-2-3-6-7-8-满分
  
AI=asind(sind(IVA)*sind(AV)/sind(AIV));
+
===向量解法===
  
VI=asind(sind(IAV)*sind(AV)/sind(AIV));
+
将球面坐标转化成直角坐标,对向量做操作,可能可以节省计算
  
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
+
1.将球面坐标转化为弧度,写成一个向量
 
+
clear;
PI = 80.7170
+
v_a=279+14/60+7.35/3600;
 
+
v_d=38+47/60+7.7/3600;
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
+
v_r=1/(130.23/1000);
 
+
a_a=297+41/60+55.5/3600;
PI2 = 80.9302
+
a_d=8+52/60+13.3/3600;
 
+
a_r=1/(194.95/1000);
%非常致命:即使你验算,也很可能无法发现之前的错误!
+
vy=[deg2rad(v_a),deg2rad(v_d),v_r];
 
+
ay=[deg2rad(a_a),deg2rad(a_d),a_r];
I_d=90-PI
+
2.将球坐标的向量转化成直角坐标向量
 +
具体转换方式(sph2cart函数):
 +
x=cos(δ)cos(α)
 +
y=cos(δ)sin(α)
 +
z=sin(δ)
 +
[vc(1),vc(2),vc(3)]=sph2cart(vy(1),vy(2),vy(3));
 +
vc
 +
'''vc = 0.9606  -5.9080    4.8100'''
 +
[ac(1),ac(2),ac(3)]=sph2cart(ay(1),ay(2),ay(3));
 +
ac
 +
'''ac = 2.3558  -4.4874    0.7910'''
 +
两个直角坐标点乘再除以两个模长,即可求出两颗星角距离的余弦值
 +
AV=acosd(dot(vc,ac)/(a_r*v_r))%(a)问
 +
'''AV = 34.1958'''
 +
两个直角坐标相减再取模,即可求出两颗星距离
 +
lAV=norm(vc-ac)%(b)问
 +
'''lAV = 4.4852'''
 +
3.将自行加到现在的球面坐标上,同样转化成直角坐标
 +
vyd=vy(1:2)+deg2rad([200.94/1000/3600/cos(vy(2)),286.23/1000/3600])*1000;
 +
ayd=ay(1:2)+deg2rad([536.23/1000/3600/cos(ay(2)),385.29/1000/3600])*1000;
 +
%请注意在赤经加赤经自行时,不需要cos(δ),因此除掉
 +
[vcd(1),vcd(2),vcd(3)]=sph2cart(vyd(1),vyd(2),vy(3));
 +
vcd
 +
'''vcd = 0.9669  -5.9002    4.8183'''
 +
[acd(1),acd(2),acd(3)]=sph2cart(ayd(1),ayd(2),vy(3));
 +
acd
 +
'''acd = 3.5432  -6.7062    1.1982'''
 +
4.对每颗星,现在的直角坐标与自行后的直角坐标叉乘,可以得到旋转平面的法向量
 +
叉乘(cross)具体计算方式:
 +
|  i        j        k    |
 +
|  x1      y1      z1  |
 +
|  x2      y2      z2  |
 +
xc=y1z2-z1y2
 +
yc=z1x2-x1z2
 +
zc=x1y2-y1x2
 +
vp=cross(vc,vcd)
 +
'''vp = -0.0866    0.0223    0.0447'''
 +
ap=cross(ac,acd)
 +
'''ap = -0.0725  -0.0202    0.1011'''
 +
5.两个平面的交叉点同时与两个法向量垂直,因此将两个法向量相叉乘
 +
inc=cross(ap,vp)
 +
'''inc = -0.0032  -0.0055  -0.0034'''
 +
6.最后,转换回球面坐标,再换回角度值
 +
δ=arcsin(z/r)
 +
α=arcsin(y/(rcosδ))=arccos(x/(rcosδ))
 +
[incy(1),incy(2),~]=cart2sph(inc(1),inc(2),inc(3));
 +
incyd=rad2deg(incy)%赤经小于0°,加上360°
 +
'''incyd = -119.8619  -27.9405'''
 +
I_a=incyd(1)+360
 +
'''I_a = 240.1381'''
 +
I_d=incyd(2)
 +
'''I_d = -27.9405'''
 +
7.另一个交叉点在哪?很显然,在我们现在求得的坐标的对面。通过观察也可以发现另一个交叉点更远。如果另一个更近,就将赤纬取相反数,赤经加12h。
  
I_d = 9.2830
 
 
如果你没有意识到交叉点在背后,你的答案出错。流程:1-2-3-4-5-出错
 
 
这个错误可以通过验算发现,但一般来说你不会验算。流程:1-2-3-4-5-6-7-8-满分
 
 
如果你没意识到V是钝角,即使验算也无法发现。流程:1-2-9-出错
 
 
只有你同时避开了这两个坑,有可能拿到满分。流程:1-2-3-6-7-8-满分
 
 
[[分类:球面三角]]
 
[[分类:球面三角]]

2019年8月2日 (五) 13:33的版本

英文题目

(T10) Vega and Altair(75 points)

As per a very famous Chinese folklore about love, Vega and Altair are two lovers. It is said that they can meet each other once every year on a bridge made up of birds over the Milky Way. The parameters of two stars are given in the table below. For the purpose of this question, assume that the coordinate frame is fixed (i.e. not affected by precession or motion of the Sun).

Based on this data, answer the following questions:

(a) (9 points) What is the angular separation of the two stars?

(b) (6 points) Calculate the distance (in parsecs) between Vega and Altair.

(c) (3 points) Calculate position angles of the proper motion vectors of each of these two stars.

For parts d-g, assume that the angular velocity of the stars on the celestial sphere remains constant. This is not a physical situation but this is an assumption to simplify the problem.

(d) (2 points) How many common points on the celestial sphere are there which can be reached by both these stars?

(e) (20 points) Find the coordinates of the closest such point. (Note: Drawing the situation on a celestial sphere will help you in visualising the situation) (f) (8 points) Find when (which year) each of these stars were / will be at that point.

(g) (5 points) When Altair was / will be at that point, what would be its angular separation from Vega?

(h) (22 points) Find coordinates of any point (if it exists) in 3-D space which was /will be visited by both these stars. Do not ignore radial velocities for this part of the question.

Star/恒星 Right Ascension/赤经

(J2000.0)

Declination/赤纬

(J2000.0)

Parallax/视差

(mas)

Proper Motion/自行 Radial Volocity/视向速度

(km/s)

μαcosδ(mas/year) μδ(mas/year)
Vega/织女星 18h36m56.49s +38°47'07.7'' 130.23 +200.94 +286.23 -13.9
Altair/牛郎星 19h50m47.70s +8°52'13.3'' 194.85 +536.23 +385.29 -26.1

中文翻译

(T10)牛郎和织女(75分)

根据中国一段有名的神话传说,牛郎星和织女星是一对恋人。据说他们每年又一次机会在银河上空的鹊桥上相会。两颗星的参数在下表中列出。为了解题方便,假设参考架是固定的(也即,不会受岁差和太阳自身的运动影响。)

根据这些数据,回答下列问题:

(a)(9分)这两颗星的角距离是多少?

(b)(6分)计算这每颗星在空间中的距离,单位为秒差距。

(c)(3分)计算每颗星自行的方向角。

对于d-g小问,假设两颗星在天球上的自行角速度保持恒定。这在实际情况是不可能的,但为了简化问题做出这个假设。

(d)(2分)这两颗星在天球上经过的轨迹有多少个公共点?

(e)(20分)找到离他们最近的公共点。(提示:画出示意图有助于你理解情景)

(f)(8分)计算什么时候(具体到年)每颗星位于这个点。

(g)(5分)当牛郎星位于这个点时,它与织女星的角距离是多少?

(h)(22分)找出它们在空间中轨迹的公共点(如果存在)。这个小问中注意不要忽略视向速度。

解答

本解答只提供(a)(b)(c)(d)(e)小问的两种解法,目的是对比向量解法于传统球面三角解法的计算量与出错的可能性。

请注意,向量解法并不适用于所有的类似题目。坐标转换题目涉及到旋转矩阵,这并不在高中数学能接触的范畴。

为方便撰写,计算过程使用了简单matlab代码。

球面三角解法

1.将时分秒、度分秒化成度

clear;
v_a=279+14/60+7.35/3600;%织女星赤经
v_d=38+47/60+7.7/3600;%织女星赤纬
v_r=1/(130.23/1000);%织女星距离
a_a=297+41/60+55.5/3600;%牛郎星赤经
a_d=8+52/60+13.3/3600;%牛郎星赤纬
a_r=1/(194.95/1000);%牛郎星距离

2.解牛郎星A、织女星V和北天极P组成的球面三角形

P=a_a-v_a;
PA=90-a_d;
PV=90-v_d;
AV=acosd(cosd(PA)*cosd(PV)+sind(PA)*sind(PV)*cosd(P))%a小问
AV = 34.1958
A=asind(sind(P)*sind(PV)/sind(AV))
A = 26.0557
V=asind(sind(P)*sind(PA)/sind(AV))
V = 33.8319

2.1.角V是钝角还是锐角?

V=180-V
V = 146.1681

3.计算两颗星的空间距离

lAV=sqrt(v_r^2+a_r^2-2*v_r*a_r*cosd(AV))
lAV = 4.4852

4.根据自行数据计算方向角

v_v=atand(200.94/286.23)
v_v = 35.0697
a_v=atand(536.23/385.29)%c小问
a_v = 54.3021

5.解画出牛郎星、织女星、交叉点组成的球面三角形

IAV=a_v+A
IAV = 80.3578
IVA=V-v_v
IVA = 111.0984
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
AIV = 34.8084
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
AI = 66.7171
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
VI = 76.0858

6.计算PI,进而得到交叉点赤纬

PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(a_v))
PI = 53.8052
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(v_v))%分别使用PIA和PIV计算PI,作为验算
PI2 = 39.6558
%为什么不一样??!!

7.重新做第4步。实际上,交叉点I在牛郎和织女星的背后

IAV=180-(a_v+A)
IAV = 99.6422
IVA=180-(V-v_v)
IVA = 68.9016
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV))
AIV = 34.8084
AI=asind(sind(IVA)*sind(AV)/sind(AIV))
AI = 66.7171
VI=asind(sind(IAV)*sind(AV)/sind(AIV))
VI = 76.0858

8.重新做第5步。∠PIA和∠PIV实际上也是补角

PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
PI = 117.9455
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
PI2 = 117.9455
%这次一样了!

9.计算交叉点赤经

API=asind(sind(AI)*sind(180-a_v)/sind(PI))
PI = 57.6117
I_d=90-PI
I_d = -27.9455
I_a=a_a-API%e小问
I_a = 240.0870

10.后话:如果你没注意到第2步中∠V实际是钝角,会发生什么?

V=asind(sind(P)*sind(PA)/sind(AV));
IAV=180-(a_v+A);
IVA=180-(V-v_v);
AIV=acosd(-cosd(IAV)*cosd(IVA)+sind(IAV)*sind(IVA)*cosd(AV));
AI=asind(sind(IVA)*sind(AV)/sind(AIV));
VI=asind(sind(IAV)*sind(AV)/sind(AIV));
PI=acosd(cosd(AI)*cosd(PA)+sind(AI)*sind(PA)*cosd(180-a_v))
PI = 80.7170
PI2=acosd(cosd(VI)*cosd(PV)+sind(VI)*sind(PV)*cosd(180-v_v))
PI2 = 80.9302
%非常致命:即使你验算,也很可能无法发现之前的错误!
I_d=90-PI
I_d = 9.2830

如果你没有意识到交叉点在背后,你的答案出错。流程:1-2-3-4-5-出错

这个错误可以通过验算发现,但一般来说你不会验算。流程:1-2-3-4-5-6-7-8-满分

如果你没意识到V是钝角,即使验算也无法发现。流程:1-2-9-出错

只有你同时避开了这两个坑,有可能拿到满分。流程:1-2-3-6-7-8-满分

向量解法

将球面坐标转化成直角坐标,对向量做操作,可能可以节省计算

1.将球面坐标转化为弧度,写成一个向量

clear;
v_a=279+14/60+7.35/3600;
v_d=38+47/60+7.7/3600;
v_r=1/(130.23/1000);
a_a=297+41/60+55.5/3600;
a_d=8+52/60+13.3/3600;
a_r=1/(194.95/1000);
vy=[deg2rad(v_a),deg2rad(v_d),v_r];
ay=[deg2rad(a_a),deg2rad(a_d),a_r];

2.将球坐标的向量转化成直角坐标向量 具体转换方式(sph2cart函数): x=cos(δ)cos(α) y=cos(δ)sin(α) z=sin(δ)

[vc(1),vc(2),vc(3)]=sph2cart(vy(1),vy(2),vy(3));
vc
vc = 0.9606   -5.9080    4.8100
[ac(1),ac(2),ac(3)]=sph2cart(ay(1),ay(2),ay(3));
ac
ac = 2.3558   -4.4874    0.7910

两个直角坐标点乘再除以两个模长,即可求出两颗星角距离的余弦值

AV=acosd(dot(vc,ac)/(a_r*v_r))%(a)问
AV = 34.1958

两个直角坐标相减再取模,即可求出两颗星距离

lAV=norm(vc-ac)%(b)问
lAV = 4.4852

3.将自行加到现在的球面坐标上,同样转化成直角坐标

vyd=vy(1:2)+deg2rad([200.94/1000/3600/cos(vy(2)),286.23/1000/3600])*1000;
ayd=ay(1:2)+deg2rad([536.23/1000/3600/cos(ay(2)),385.29/1000/3600])*1000;
%请注意在赤经加赤经自行时,不需要cos(δ),因此除掉
[vcd(1),vcd(2),vcd(3)]=sph2cart(vyd(1),vyd(2),vy(3));
vcd
vcd = 0.9669   -5.9002    4.8183
[acd(1),acd(2),acd(3)]=sph2cart(ayd(1),ayd(2),vy(3));
acd
acd = 3.5432   -6.7062    1.1982

4.对每颗星,现在的直角坐标与自行后的直角坐标叉乘,可以得到旋转平面的法向量 叉乘(cross)具体计算方式: | i j k | | x1 y1 z1 | | x2 y2 z2 | xc=y1z2-z1y2 yc=z1x2-x1z2 zc=x1y2-y1x2

vp=cross(vc,vcd)
vp = -0.0866    0.0223    0.0447
ap=cross(ac,acd)
ap = -0.0725   -0.0202    0.1011

5.两个平面的交叉点同时与两个法向量垂直,因此将两个法向量相叉乘

inc=cross(ap,vp)
inc = -0.0032   -0.0055   -0.0034

6.最后,转换回球面坐标,再换回角度值 δ=arcsin(z/r) α=arcsin(y/(rcosδ))=arccos(x/(rcosδ))

[incy(1),incy(2),~]=cart2sph(inc(1),inc(2),inc(3));
incyd=rad2deg(incy)%赤经小于0°,加上360°
incyd = -119.8619  -27.9405
I_a=incyd(1)+360
I_a = 240.1381
I_d=incyd(2)
I_d = -27.9405

7.另一个交叉点在哪?很显然,在我们现在求得的坐标的对面。通过观察也可以发现另一个交叉点更远。如果另一个更近,就将赤纬取相反数,赤经加12h。