详解JPL星历表
JPL历表结构(以DE405为例)
header.405
KSIZE
应该是一个读取的缓冲区的大小,取值与NCOEFF有关,具体就是NCOEFF的2倍,根据历表的不同而不同。
比如DE200取1652,DE405取2036,DE406取1456等。
实际在程序中KSIZE与RECL有关,RECL是Fortran OPEN语句中的参数,即设置每一模块的读取分区长度,不同编译器使用的单位不同,有Bytes和single precision words之分,两者相差4倍。
一般来说是使用Bytes作为单位。
在实际使用的时候我们会调用FSIZER3函数,这个函数会调用KSIZE来计算RECL,即IRECSZ=NRECL*KSIZE
下面请看程序注释:
123456789C 1) The parameter RECL in the OPEN statement is the number of units per C record. For some compilers, it is given in bytes; in some, it is givenC ...
计算金星凌日
使用ephem库计算
计算方法
使用ephem库非常简单,算出视位置然后判断是否凌日就行了。
ephem库的使用
关于凌日的判断
ephem库自带视距计算,与太阳的视半径比较即可
示例代码
1234567891011121314151617181920212223242526272829303132333435import ephemimport datetimeimport numpy as npimport matplotlib.pyplot as pltplt.title("Transit of Venus")plt.xlabel("Differ of Right Ascension")plt.ylabel("Differ of Declination")ra=[]#储存方位角dec=[]#储存高度角Beijing=ephem.Observer()Beijing.lon='116.391'Beijing.lat='39.906'begin=datetime.date(2012,6, ...
Fortran编译JPL历表
1. 下载历表文件
FTP方法
在CMD命令行下输入
1ftp ssd.jpl.nasa.gov
或是先输入ftp进入FTP模式之后再输入open ssd.jpl.nasa.gov
我这边可能是梯子没配置好,连不上FTP服务器……后略!
网页下载
直接进入FTP文件页面
在Ascii目录中下载需要的历表文件,在Fortran目录中下载程序即可。
2. 配置asc2eph.f
找到代码中如下部分,删去NRECL=4一行前的注释符号
12345C ***** The user must choose one of the following statements *****C ( Usually NRECL = 4 is used on Unix platforms) PARAMETER ( NRECL = 4 )C PARAMETER ( NRECL = 1 )
其实这个地方似乎选取1和4都没有问题?
NRECL的取值似乎只是与之后的读取有关
3. 制作星表
以制作2000-2040年星表为例
在星表的目录下运行命令行程序合并数据
Wind ...
NOVAS实践(球面天文学实践2)
本文章修改自YoungJune的博客
实践题目
题目一
天体星表位置:ICRS[α,δ]=14h34m16s.81183,−12°31′10′′.396ICRS[\alpha,\delta]=14^h34^m16^s.81183,-12\degree31^\prime10^{\prime\prime}.396ICRS[α,δ]=14h34m16s.81183,−12°31′10′′.396
自行:μα=−354.45mas/y,μδ=+595.35mas/y\mu_\alpha=-354.45mas/y,\mu_\delta=+595.35mas/yμα=−354.45mas/y,μδ=+595.35mas/y
视差:0′′.164990^{\prime\prime}.164990′′.16499,径向速度(退行速度)=0km/s=0km/s=0km/s
观测时刻2023年5月1日,23h15m43s.55UTC2023年5月1日,23^h15^m43^s.55UTC2023年5月1日,23h15m43s.55UTC
地球指向参数请在IERS网站自查
求:
该星地心视位置
测站坐 ...
Hello World
每一个伟大博客的开始都应该是一篇Hello World!
你好,世界!