プロジェクト

全般

プロフィール

衛星軌道をTLEから計算する

はじめに

次の記事で解説されている、軌道6要素から衛星軌道を計算することを習ってみます。

Pythonを使って人工衛星の軌道を表現する~軌道6要素、TLE~(宙畑)

この記事では最初に衛星軌道をニュートンの運動方程式を常微分方程式で表現し、数値で解く方法を紹介しています。
この記事に習って次のWikiページ衛星軌道の運動方程式を数値的に解く に微分方程式とPythonプログラミングを習って書いてみました。
そこでは、運動方程式は二階の微分方程式(運動方程式の加速度が位置の2階微分となる)なので、補助変数として速度を取り入れて連立一階微分方程式で記述しました。
3次元における位置と速度なので、変数は 位置(x, y, z)と速度(vx, vy, vz)の6項目で衛星軌道を表現しています。

軌道6要素は、位置と速度の6項目を別な表現で書き換えたものとなります。
位置と速度ではなく、軌道6要素で表現する理由は、軌道6要素のうち5つの要素が時間によって変化しないため、非常に扱いやすいためです。
位置と速度の6項目はすべて時刻によって変わる値です。

軌道6要素については、Wikiページ 衛星軌道 に書いていますので参照ください。

Pythonで起動6要素を扱う

軌道6要素から衛星軌道をプロットするには、軌道6要素から位置・速度に変換する必要があります。
この変換は、ESA(欧州宇宙機関)のACT(Advanced Concept Team)が公開する pykep ライブラリを利用します。
https://www.esa.int/gsp/ACT/open_source/pykep/

pykepライブラリのインストール

(venv)orbit_sorabatake$ pip install pykep


1日前に更新