Usno2.0 星表文件格式转换


1) 坐标系统采用赤经,赤纬和SPD(South Polar Distance)

2) 坐标被转换成整数,方法如下

              如果原来的赤经(表示成小时)为ra,赤纬(表示成度),则实际上在星表中这样存储

                RA=ra*15*3600*100

                DEC=(dec+90)*3600*100

3) 整个天空依照SPD被分成24个区域,每个跨越7.5度

4) 每个天区中,星的条目按照赤经递增的顺序排列

5) 24个区域的每一个对应两个文件,文件的名字按照如下方式命名:

                                   zoneXXXX.YYY

                    其中

                                   XXXX 是SPD的10倍(0,75,150 一直到1725)

                             YYY 为

                                    Acc 表示 ASCII 加速文件

                                    cat  表示 二进制目录文件

6) 在一个目录文件(.cat)中,每一条(恒星数据)记录包括3个32位整数.,存放的方式如同     C语言中的二维数组int[3,length],如下所示:

            | RA (1) | Dec(1) | Mag(1) | RA (2) | Dec (2) | Mag (2) | ...
                 其中RA,DEC各占据一个32位整数,第三个整数包含了红色亮度,蓝色亮
                     度还有其他一些信息,这个整数是这样构成的:
                         这个整数的数值(10进制)为:SQFFFBBBRRR
         其中
               S:  如果为1 表明该记录和一颗ACT星相关,为0则表示不相关。
               Q:   如果为1表明亮度可能有错,为0则无错
               FFF:目标的观测区
               BBB:10倍的蓝色星等
               RRR:10倍的红色星等

7) 字节顺序 BIG_ENDIAN ,而Intel  pc  机上使用LITTLE_ENDIAN因此在从目录文件中提取数据时需要做字节顺序转换。

         (依照 CPU 设计的不同, 当数据宽度超过一个字节(BYTE) 以上时, 将高字节摆在前面称为 BIG-ENDIAN, 相反的方式称为 LITTLE-ENDIA。例如长整0x12345678 在LITTLE-ENDIAN 系统使用两组两个字节 (WORDS) 来储存字符时, 内存内排列应该是 0x78563412, 在 BIG-ENDIAN 系统则 0x12345678.HP,IBM,MOTOROLA 68K 系列使用 BIG-ENDIAN 设计.INTEL X86, DEC VAX 使用 LITTLE-ENDIAN 设计.POWERPC 支持两种格式, 称为 BI-ENDIAN.)

8) 由于星表文件比较长,因此USNO-A2.0为每个星表文件提供了一个快速索引定位文件(.acc)。

 

你可能感兴趣的:(IBM,语言,360,byte,Motorola,distance)