Skip to content

RibleOrbit

RibleOrbit 实现了引力场模型和天体力学仿真功能,用于航天器动力学和多体引力问题。

概述

该包提供了精确的引力场建模工具,支持从简单的点质量模型到复杂的非球形引力场模型,适用于航天器轨道动力学、天体力学和引力捕获等问题。

主要特性

  • 多种引力模型:点质量、球谐函数、多面体

  • N体问题:多天体引力相互作用

  • 高精度积分:适用于长期轨道演化

  • 引力捕获:三体问题和引力辅助

引力模型

点质量模型

最简单的引力模型:

F = -GMm/r² · r̂

球谐函数展开

考虑天体非球形效应:

  • J2项:扁率效应

  • 高阶项:更精确的引力场

多面体模型

用于不规则小天体:

  • 精确几何表示

  • 任意形状引力场

  • 适用于小行星

N体问题

二体问题

  • 开普勒轨道

  • 轨道要素

  • 轨道传播

三体问题

  • 限制性三体问题

  • 拉格朗日点

  • 周期轨道

多体系统

  • 太阳系动力学

  • 卫星星座

  • 引力相互作用

应用场景

航天器轨道

  • 地球卫星轨道

  • 行星际转移

  • 深空探测

天体力学

  • 行星运动

  • 小行星动力学

  • 彗星轨道

引力辅助

  • 行星引力弹弓

  • 轨道转移优化

  • 能量节省

特殊轨道

霍曼转移

最节能的轨道转移:

  • 两次脉冲

  • 椭圆转移轨道

Halo轨道

拉格朗日点附近的周期轨道:

  • L1, L2, L3点

  • 三维周期轨道

使用示例

julia
using Rible
using RibleOrbit

# 定义地球引力场
earth = CelestialBody(
    mass = 5.972e24,  # kg
    radius = 6.371e6,  # m
    J2 = 1.08263e-3    # 扁率系数
)

# 创建航天器
spacecraft = Satellite(
    mass = 1000.0,  # kg
    position = [7000e3, 0, 0],  # m
    velocity = [0, 7546.0, 0]   # m/s
)

# 仿真轨道
prob = OrbitProblem(spacecraft, earth)
sol = solve(prob, tspan=(0.0, 86400.0))  # 一天

坐标系

惯性坐标系

  • J2000.0

  • 国际天球参考系(ICRF)

旋转坐标系

  • 地心地固系(ECEF)

  • 轨道坐标系

相关包