6个版本

0.2.9 2024年6月4日
0.2.8 2024年5月17日
0.2.7 2024年4月25日
0.2.5 2024年3月23日

#368 in 算法

Download history 185/week @ 2024-05-16 22/week @ 2024-05-23 118/week @ 2024-05-30 26/week @ 2024-06-06 1/week @ 2024-06-13 12/week @ 2024-06-27 105/week @ 2024-07-04 169/week @ 2024-07-11 179/week @ 2024-07-18 140/week @ 2024-07-25 125/week @ 2024-08-01 186/week @ 2024-08-08 145/week @ 2024-08-15

613次每月下载

自定义许可

795KB
16K SLoC

Rust 13K SLoC // 0.1% comments C 1.5K SLoC // 0.2% comments Python 705 SLoC // 0.3% comments Jupyter Notebooks 475 SLoC // 0.2% comments Batch 227 SLoC // 0.0% comments JavaScript 12 SLoC // 0.1% comments

基于Rust的卫星工具包

一个准确、高性能的卫星轨道动力学工具包,使用Rust编写,具有合理的接口。
还包括通过pyo3提供的所有功能的Python绑定

GitHub

Build Passing? Wheel Passing? GitHub License

Crates.io

Crates.io Version Crates.io Downloads (recent)

PyPi

PyPI - Version PyPI - Python Version PyPI - Implementation PyPI - Status

Read the Docs

语言绑定

  • 原生Rust绑定
  • Python绑定用于编译后的Rust代码 ... 具有Rust的速度和Python的便利性
    使用pip install satkit安装
    PyPi包括Windows、macos(Intel & ARM)和Linux的二进制包。Python文档在:https://satellite-toolkit.readthedocs.io/latest/

功能

    • 国际大地测量参考框架(ITRF)之间进行高精度坐标转换
    • 使用IAU-2000减法进行地心天体参考框架(GCRF)
    • 真春分平均赤道(TEME)框架,用于TLE的SGP4传播
    • 天体中间参考框架(CIRF)
    • 陆地中间参考框架(TIRF)
    • 陆地大地测量框架(纬度,经度)
  • 大地测量距离
  • SGP4和开普勒轨道传播
  • JPL高精度行星历书
  • 高阶重力模型
  • 使用高阶高效的Runge-Kutta求解器进行高精度、高速数值卫星轨道传播,能够求解状态转换矩阵,并包括后续力
    • 具有多个模型的高阶地球重力
    • 太阳重力
    • 月球重力
    • 阻力(NRL MISE-00密度模型)
    • 辐射压力

常微分方程求解器

高精度数值卫星轨道传播使用标准的Runge-Kutta方法进行常微分方程的积分。常微分方程求解器作为库的一部分提供。

该方法使用Runga-Kutta对进行常微分方程积分和误差估计,由Jim Verner生成: https://www.sfu.ca/~jverner/

参考文献、模型和外部软件。

本工作的方程和许多单元测试来源于以下来源

本代码参考并依赖于以下生成的模型

验证

代码包括用于验证几乎所有计算的rust测试模块和python测试模块,包括但不限于

  • JPL历书 - 通过JPL提供的测试向量进行Chebyshev多项式计算
  • SGP4 - 通过与原始C++分发一起提供的SGP4测试向量

作者

Steven Michael ([email protected])

如果您发现代码或计算中的错误,希望为此存储库做出贡献,或对API的改进有建议,请与我联系。

依赖关系

~7–14MB
~197K SLoC