
衛星の軌道速度と周期をPythonで計算する|なぜ落ちてこないのか
2026-09-10 ・ 実践
人工衛星が落ちてこない理由は「ちょうどいい速さで横に飛び続けているから」。ではその"ちょうどいい速さ"はいくつなのか。この記事ではPythonで軌道速度と周期を計算し、ISS・静止衛星の高度で実際の数値を出します。宇宙の距離感が数字で掴めます。
軌道速度の式
円軌道では、地球の引力が「円運動に必要な力」とちょうどつり合います。ここから軌道速度は次で決まります。
v = √(GM / r)
GM… 地球の重力定数(標準重力パラメータ)= 3.986 × 10¹⁴r… 地球中心からの距離(地球半径 + 高度)
高いほど(r が大きいほど)ゆっくり回る、というのがポイントです。
つり合いから速度が決まる
引力
GM / r²
円運動
v² / r
軌道速度
v = √(GM/r)
🛰️ 軌道スピードで遊ぼう
横向きの速さを変えると、落ちる・回り続ける・飛び去るが切り替わります
円軌道になる 🛰️
落ち続けるのに地面に届かない=軌道!
衛星は「落ち続けているのに、速く横に進むので地面に届かない」。これが軌道のふしぎです
準備
pip install numpy
① 軌道速度と周期を計算する
import numpy as np
GM = 3.986e14 # 地球の重力パラメータ [m^3/s^2]
R_earth = 6.371e6 # 地球半径 [m]
def orbit(altitude_km):
r = R_earth + altitude_km * 1000
v = np.sqrt(GM / r) # 軌道速度 [m/s]
T = 2 * np.pi * r / v # 周期 [s]
return v, T
for name, alt in [("ISS", 400), ("GPS", 20200), ("静止衛星", 35786)]:
v, T = orbit(alt)
print(f"{name:8} 高度{alt:>6}km: {v/1000:5.2f} km/s, 周期 {T/3600:5.2f} 時間")
出力はこうなります。
ISS 高度 400km: 7.67 km/s, 周期 1.54 時間
GPS 高度 20200km: 3.87 km/s, 周期 11.97 時間
静止衛星 高度 35786km: 3.07 km/s, 周期 23.93 時間
ISSは秒速7.7km(マッハ22超)で90分ちょっとで地球を一周。静止衛星の周期は約24時間——だから地上から見て止まって見えるわけです。数字が理屈と一致します。
静止軌道の高さは計算で決まる
「周期がちょうど24時間になる高度」を逆算すると約35,786kmになります。静止衛星の位置は誰かが決めた値ではなく、地球の自転周期から物理的に決まる高度なのです。orbit の周期が24時間に近い高度を探してみてください。
② 高いほど遅い理由
高度を上げながら速度を並べると、はっきり傾向が出ます。
for alt in [200, 400, 1000, 5000, 20200, 35786]:
v, _ = orbit(alt)
print(f"高度{alt:>6}km → {v/1000:.2f} km/s")
高度が上がるほど軌道速度は下がります。引力が弱まるぶん、ゆっくり回ればつり合うからです。低軌道ほど速く飛ばないと落ちてしまう、という直感どおり。
円軌道の近似
ここでは円軌道を仮定しています。実際の軌道は楕円で、速度は近地点で速く遠地点で遅くなります(ケプラーの第2法則)。まず円で基本を掴み、楕円へ進むのが順序です。
まとめ
- 円軌道速度は
v = √(GM/r)。引力と円運動のつり合いから決まる - ISSは秒速7.7km・周期約90分、静止衛星は周期約24時間
- 静止軌道の高度(約35,786km)は自転周期から物理的に決まる
- 高いほど軌道速度は遅い。低軌道ほど速く飛ぶ必要がある
もう少し詳しく(背景と理論)
円軌道の速度は v = √(GM/r) で、重力による向心加速度 GM/r² が円運動に必要な加速度 v²/r とちょうど釣り合う条件から導かれます1。ここから、半径が大きいほど軌道速度は遅くなることがわかります(ISS の高度400kmで約7.7km/s、静止軌道で約3.1km/s)。周期に直すと T = 2π√(r³/GM)、すなわち T² ∝ r³ となり、これはケプラーの第三法則そのものです2。この関係が、静止軌道(周期が地球の自転と一致する高度約35,786km)やGPSの軌道設計の根拠になっています3。
次の一歩 🌸
落ちない理由の直感はなぜ衛星は落ちないのか、軌道の種類は軌道の種類、衛星の中身は衛星の基礎へどうぞ。