手を振るソラくんゆるふわ宇宙・航空
考え中のソラくん

ホーマン遷移軌道をPythonで計算する|衛星を別の軌道へ運ぶΔv

2026-09-11実践

#ホーマン遷移#軌道遷移#Δv#Python#実践

打ち上げた衛星を、低軌道から静止軌道など別の軌道へ運ぶ——そのいちばん燃料効率のよい方法がホーマン遷移軌道です。この記事ではPythonで、低軌道(LEO)から静止軌道(GEO)への遷移に必要な速度変化(Δv)を計算します。軌道速度の続きとして、軌道を"乗り換える"数字を掴みます。

しくみ: 2回の噴射で乗り換える

ホーマン遷移は、内側の円軌道と外側の円軌道に接する楕円軌道を経由します。

  1. 出発点で加速(1回目の噴射)→ 楕円軌道に乗る
  2. 楕円の遠い側(目標高度)で再び加速(2回目の噴射)→ 外側の円軌道に乗る

この2回のΔvの合計が、遷移に必要な"燃料の量"に直結します。

2回の噴射で軌道を上げる

🔥

噴射1

楕円軌道へ

🌙

惰性

楕円を半周

🔥

噴射2

外側の円へ

準備

pip install numpy

① ホーマン遷移のΔvを計算する

出発・到着それぞれの円軌道速度と、楕円軌道の速度の差からΔvを求めます。

import numpy as np

GM = 3.986e14
R_earth = 6.371e6

def hohmann(alt1_km, alt2_km):
    r1 = R_earth + alt1_km * 1000
    r2 = R_earth + alt2_km * 1000
    a = (r1 + r2) / 2                       # 遷移楕円の長半径

    v1 = np.sqrt(GM / r1)                   # 出発の円軌道速度
    v2 = np.sqrt(GM / r2)                   # 到着の円軌道速度
    v_peri = np.sqrt(GM * (2/r1 - 1/a))     # 楕円の近地点速度
    v_apo  = np.sqrt(GM * (2/r2 - 1/a))     # 楕円の遠地点速度

    dv1 = v_peri - v1                        # 1回目の噴射
    dv2 = v2 - v_apo                         # 2回目の噴射
    return dv1, dv2, dv1 + dv2

dv1, dv2, total = hohmann(400, 35786)       # LEO(400km) → GEO(静止軌道)
print(f"1回目Δv: {dv1:.0f} m/s")
print(f"2回目Δv: {dv2:.0f} m/s")
print(f"合計Δv : {total:.0f} m/s")

出力はおおよそ:

1回目Δv: 2399 m/s
2回目Δv: 1457 m/s
合計Δv : 3857 m/s

LEOからGEOへ運ぶのに合計 約3.9 km/s のΔvが必要、とわかりました。この値にロケット方程式を当てはめれば、必要な燃料が計算できます。

🌱

遷移にかかる時間も出せる

遷移楕円を半周する時間が到着までの飛行時間です。T_transfer = π * sqrt(a³/GM) で計算でき、LEO→GEOなら約5時間半。a から求めて確かめてみてください。軌道の乗り換えは"時間もコスト"です。

② なぜ「いちばん省エネ」なのか

ホーマン遷移は、2回の噴射で軌道を上げる方法の中でΔvが最小になることが知られています(同一平面・円→円の場合)。だから燃料が限られる宇宙機の定番です。

⚠️

速さと燃費はトレードオフ

もっと速く着きたいなら、より多くのΔv(燃料)を使う別の遷移もあります。ホーマンは「いちばん省エネだが、いちばん急ぎではない」。ミッションによって、燃料を取るか時間を取るかを選びます。

③ 目的地を変えて試す

for name, alt in [("ISS高度", 400), ("中軌道", 10000), ("静止軌道", 35786)]:
    _, _, total = hohmann(400, alt)
    print(f"400km → {name}({alt}km): 合計Δv {total:.0f} m/s")

行き先が遠いほど合計Δvが増えます。軌道を大きく変えるほど燃料が要る——衛星の軌道計画がなぜ綿密なのか、数字で腑に落ちます。

まとめ

  • ホーマン遷移=内外の円軌道に接する楕円を経由し、2回の噴射で乗り換える
  • LEO(400km)→GEO(静止軌道)は合計 約3.9 km/s のΔvが必要
  • 同一平面・円→円ではΔv最小。省エネだが時間はかかる
  • 行き先が遠いほどΔv(燃料)が増える

もう少し詳しく(背景と理論)

ホーマン遷移は Walter Hohmann が1925年に示した、2つの円軌道を結ぶ最小エネルギーの2インパルス遷移です1。低い軌道の一点で加速して遷移楕円に乗り、半周後の遠点で再加速して高い軌道へ円化します。各噴射量はビス・ビバ方程式から計算できます。2回の噴射で済む点が効率的ですが、時間がかかる(遷移楕円の半周ぶん)トレードオフがあります2。なお軌道半径比が約11.94倍を超える極端なケースでは、いったん遠くへ膨らませるバイエリプティック遷移の方が総Δvが小さくなることが知られています3。実際の惑星間航行では、これに打ち上げウィンドウの制約が加わります。

次の一歩 🌸

前提となる軌道速度は軌道速度をPythonで計算、Δvから燃料へはロケット方程式をPythonで解く、軌道の種類は軌道の種類へどうぞ。

Footnotes

  1. Hohmann, W. (1925). Die Erreichbarkeit der Himmelskörper. 同心円軌道間の最小エネルギー2インパルス遷移を提示した古典。

  2. ホーマン遷移は燃料最小だが所要時間は遷移楕円の半周ぶんと長い。急ぐ場合はΔvを増やして速い遷移を選ぶ。

  3. 半径比が約11.94を超えると、3回噴射のバイエリプティック遷移の方が総Δvで有利になる場合がある。

🔥 この分野の最新トレンドをチェック →

あわせて読みたい