基于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()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
两个不同类中的java trycatch NullPointerException错误   java在安卓 studio中使用Eclipse类?   java Python在Android上的限制是什么?   java无法找到或加载主类com。太阳工具。javac。主hadoop mapreduce   json Java jersey客户端使用JsonArray的JsonArray   Java Swing GUI隐藏输入   java readobject方法引发ClassNotFoundException   java Transactional不会在Spring引导中使用数据JPA回滚已检查的异常   java如何返回通用枚举的枚举元素列表?   java中一种多线程负载平衡线程池   java运行。bat将无法正确打开命令提示符   java为什么C++给了你拥有非新分配对象的选项?   java Weka未找到主类错误   java SSL检查绕过SSLSocketFactory   Java8函数组合和