跳到内容

Celestia/星数据库格式

来自维基教科书,开放的书籍,开放的世界
(从 Celestia/双星文件 重定向)

另请参阅GitHub上的此页面

stars.dat文件包含有关恒星的二进制格式信息。字节顺序是小端序。格式如下

一个14字节的文件头

8-byte character string   "CELSTARS"
2-byte unsigned integer   version number = 0x0100
4-byte unsigned integer   number of records in file

后面是长度为20字节的记录,格式如下

4-byte unsigned integer   Hipparcos catalog number (=0 for Sol)
4-byte floating point     x-coordinate in light years
4-byte floating point     y-coordinate in light years
4-byte floating point     z-coordinate in light years
2-byte signed integer     absolute magnitude * 256
2-byte unsigned integer   spectral class

x、y和z坐标的计算方法如下

其中d是光年距离,θ = RA + 180°,φ = Dec − 90°,ε = 23.4392911°。

光谱类型

[编辑 | 编辑源代码]

光谱类型用四个十六进制数字0xKTSL表示。

K位表示物体类型,它们是

K=0   normal star
K=1   white dwarf
K=2   neutron star
K=3   black hole

T位表示光谱类型。它对于普通恒星和白矮星有不同的含义。当物体是中子星或黑洞时,此位被忽略。

      normal stars            white dwarfs
-----------------------------------------------------
T=0   spectral type O         spectral type DA
T=1   spectral type B         spectral type DB
T=2   spectral type A         spectral type DC
T=3   spectral type F         spectral type DO
T=4   spectral type G         spectral type DQ
T=5   spectral type K         spectral type DZ
T=6   spectral type M         unknown spectral type D
T=7   spectral type R         spectral type DX
T=8   spectral type S
T=9   spectral type N
T=a   spectral type WC
T=b   spectral type WN
T=c   unknown spectral type
T=d   spectral type L
T=e   spectral type T
T=f   spectral type C

S位表示光谱亚型。对于中子星和黑洞,此位被忽略。

S=0   spectral subtype 0
S=1   spectral subtype 1
S=2   spectral subtype 2
S=3   spectral subtype 3
S=4   spectral subtype 4
S=5   spectral subtype 5
S=6   spectral subtype 6
S=7   spectral subtype 7
S=8   spectral subtype 8
S=9   spectral subtype 9
S=a   unknown spectral subtype

L位表示光度等级。此位仅与普通恒星相关。

L=0   luminosity class Ia-O
L=1   luminosity class Ia
L=2   luminosity class Ib
L=3   luminosity class II
L=4   luminosity class III
L=5   luminosity class IV
L=6   luminosity class V
L=7   luminosity class VI (also written as prefix sd)
L=8   unknown luminosity class

因此,光谱类型为G2V的恒星使用数字0x0426。

旧格式

[编辑 | 编辑源代码]

在1.4.0版之前,Celestia使用略微不同的stars.dat格式。

一个4字节的文件头,格式如下

4-byte unsigned integer   number of records

后面是长度为25的记录

4-byte unsigned integer   Hipparcos catalog number
4-byte unsigned integer   HD catalog number
4-byte floating point     Right Ascension in degrees
4-byte floating point     Declination in degrees
4-byte floating point     Parallax (in milliarcseconds?)
2-byte signed integer     Apparent magnitude * 256
2-byte unsigned integer   Spectral class
1-byte unsigned integer   Parallax error * 200

请注意,对于当前版本的Celestia,HD目录号存储在hdxindex.dat文件中。

华夏公益教科书