基于i.m.longman潮汐加速度计算公式的潮汐重力改正
tidegravit的Python项目详细描述
TideGravity是一个Python库,它实现了Ivor Longman的计算潮汐加速度的方案,因为 月亮和太阳,由I.M.朗曼在《地球物理研究杂志》第64卷第12期,1959年出版 这对于修正重力测量数据很有用,因为 太阳和月亮的数量可以达到几百微伽,这取决于测量者的位置和相对位置。 太阳和月亮相互之间的位置,以及测量员。
要求
- 努比
- 熊猫
Numpy和Pandas库是处理潮汐改正和导入改正轨道数据所必需的
matplotlib库是一个可选的需求,目前仅在示例中用于绘制可视化 数据的表示。
API
提供了以下API函数(可能在将来的版本中更改):
solve_longman_tide(lat,lon,alt,time)
从numpy数组输入解算太阳/月亮引起的总重力校正
solve_longman_tide_scalar(lat,lon,alt,time)
包装器solve_longman_tide,接受lat/lon/alt和单个datetime对象的单个标量值
solve_point_corr(lat,lon,alt,t0,n=3600,increment=’S’)
由t0定义的时间跨度内的退潮改正,静态(标量)在给定增量下有n个点 位置参数
solve_tide_df(df,lat=’lat’,lon=’lon’,alt=’alt’)
包装器接受pandas数据帧(df)对象作为输入,df应该有一个datetimeindex和lat/lon/alt 柱。可以通过参数提供备用列名,然后使用这些列名从 输入数据帧。
参考文献
- I.M.Longman“Forumlas,用于计算月球引起的潮汐加速度 《太阳》地球物理研究杂志,第64卷,第12期,1959年, 第2351-2355页
- P.Schureman,“潮汐谐波分析和预测手册”,美国海岸和大地测量局,1958年
致谢
这个库基于john leeman的longmantide python实现。 LongmanTide
示例
示例目录中有几个示例脚本,说明如何使用longmantide求解函数。
下面是计算静纬度/经度/海拔的校正序列的简单演示 指定的时间段,间隔为1秒。
fromdatetimeimportdatetimefromtidegravityimportsolve_point_corr# Example static data for Denver, January 1, 2018lat=39.7392lon=-104.9903# Note: West should be entered as a negative longitude valuealt=1609.3t0=datetime(2018,1,1,12,0,0)# Calculate corrections for one day (60*60*24 points), with 1 second resolutionresult_df=solve_point_corr(lat,lon,alt,t0,n=60*60*24,increment='S')# Result is a pandas DataFrame, with a DatetimeIndex, and correction# values in the 'total_corr' column i.e.corrections=result_df['total_corr'].values# Plot the corrections using matplotlibfrommatplotlibimportpyplotaspltplt.plot(corrections)plt.ylabel('Tidal Correction [mGals]')plt.show()