Phasenwinkel für Hohmann-Startfenster berechnen
Dieser Rechner ermittelt, wo sich der Zielplanet beim Beginn eines Hohmann-Transfers relativ zum Ausgangsplaneten befinden muss.
Im Browser ausführen – kostenlos
Geben Sie die geplante Transferzeit und die Umlaufzeit des Ziels in derselben Zeiteinheit ein. Das Werkzeug berechnet die Bewegung des Ziels während des Flugs, zieht sie von der Ankunftsgeometrie mit 180 Grad ab und zeigt den normierten Winkel sowie alle verwendeten Zwischenwerte an.
Bedeutung des Phasenwinkels beim Start
Ein Hohmann-Transfer zielt nicht auf den Ort, an dem sich der Zielplanet beim Abflug befindet. Das Raumfahrzeug durchläuft eine Hälfte seiner elliptischen Transferbahn, während sich das Ziel weiter um den Zentralkörper bewegt. Deshalb ist beim Start ein bestimmter Winkelabstand nötig. Der Winkel ist hier als heliozentrische Länge des Ziels minus heliozentrische Länge des Ursprungs definiert, in Bewegungsrichtung gemessen und auf 0 bis unter 360 Grad normiert. Ein Ergebnis nahe 44 Grad bedeutet beispielsweise, dass das Ziel dem Ursprung ungefähr 44 Grad voraus sein muss. Ein Wert über 180 Grad ist die normierte Darstellung eines negativen Rohwinkels: 300 Grad entsprechen effektiv 60 Grad Rückstand. Das Modell setzt kreisförmige, koplanare Bahnen und die ideale Hohmann-Geometrie voraus, bei der das Fahrzeug 180 Grad um den Zentralkörper zurücklegt. Es liefert eine Planungsnäherung, keine vollständige operative Flugbahn.
So entsteht der berechnete Winkel
Verwenden Sie für beide Eingaben dieselbe Zeiteinheit: Tage mit Tagen, Jahre mit Jahren oder Sekunden mit Sekunden. Das Verhältnis von Transferzeit zu Zielumlaufzeit ist dimensionslos. Zunächst wird dieses Verhältnis mit 360 Grad multipliziert, um die Winkelbewegung des Ziels während des Fluges zu bestimmen. Danach wird diese Bewegung von 180 Grad abgezogen, dem Abstand zwischen Abflug- und Ankunftsende der Hohmann-Ellipse. Bei ungewöhnlichen hypothetischen Werten kann der Rohwinkel negativ sein oder außerhalb einer Umdrehung liegen. Für einen einfachen Vergleich mit Ephemeridenlängen gibt der Rechner zusätzlich einen Wert von 0 bis unter 360 Grad aus. Sichtbar bleiben außerdem die Zielbewegung, der Anteil eines Zielumlaufs und der nicht normierte Winkel. Damit können Sie die Rechnung nachvollziehen und versehentlich gemischte Zeiteinheiten erkennen.
Annahmen, Auswertung und weitere Planung
Die Formel eignet sich als erste Schätzung eines interplanetaren Startfensters. Sie nimmt kreisförmige und koplanare Bahnen, konstante Winkelgeschwindigkeiten und einen augenblicklichen Einschuss in die ideale Ellipse an. Reale Planetenbahnen sind exzentrisch und geneigt, die Geschwindigkeiten ändern sich, und Missionsentwürfe wählen häufig schnellere oder langsamere Transfers. Bevor ein Datum operativ verwendet wird, sind Planetenephemeriden und ein Lambert-Löser erforderlich. Das Ergebnis beschreibt nur die relative Geometrie: Es wandelt den Winkel nicht in ein Kalenderdatum um, leitet keine Flugzeit aus Bahnradii ab und berücksichtigt weder synodische Wiederholung noch Parkbahn. Vergleichen Sie Ziel- und Ursprungslänge im selben Bezugssystem und zur selben Epoche. Suchen Sie einen Zeitpunkt mit passender gerichteter Differenz und verfeinern Sie ihn anschließend anhand genauerer Flugbahn- und Startplatzbedingungen.
Anwendungsfälle
Interplanetare Startgeometrie abschätzen
Wandeln Sie eine Hohmann-Flugzeit und das Zieljahr in den erforderlichen Winkelabstand beim Abflug um.
Aufgaben zur Orbitalmechanik prüfen
Kontrollieren Sie Zielbewegung und Endwinkel mithilfe sämtlicher ausgegebener Zwischenschritte.
Mögliche Ephemeridendaten filtern
Nutzen Sie den idealen Winkel als Vorfilter vor Lambert-Berechnung und genaueren Missionsvorgaben.
Häufige Fragen
Welche Gleichung wird verwendet?
Berechnet werden 180 Grad minus 360 Grad mal transfer_time geteilt durch target_orbital_period; danach wird das Ergebnis auf 0 bis unter 360 Grad normiert.
Welche Zeiteinheit soll ich verwenden?
Jede Einheit ist geeignet, wenn beide Werte dieselbe verwenden. Eine Mischung aus Tagen und Jahren verfälscht Verhältnis und Winkel.
Warum werden Rohwinkel und normierter Winkel ausgegeben?
Der Rohwert zeigt die Formel direkt; der normierte Wert stellt dieselbe Richtung als positiven Winkel innerhalb einer Umdrehung dar.
Warum führt eine Umlaufzeit von null zu einem Fehler?
Die Umlaufzeit steht im Nenner der Winkelbewegung. Eine Division durch null ist undefiniert und physikalisch sinnlos.
Was kostet eine API-Anfrage?
Jede API-Anfrage kostet $0.002. Im Browser läuft dieselbe deterministische analytische Logik.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/astro/launch-window-phase-angle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"transfer_time":258.9,"target_orbital_period":686.98}'const res = await fetch("https://api.kit.forhosting.com/astro/launch-window-phase-angle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"transfer_time": 258.9,
"target_orbital_period": 686.98
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/astro/launch-window-phase-angle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"transfer_time": 258.9,
"target_orbital_period": 686.98
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/astro/launch-window-phase-angle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"transfer_time":258.9,"target_orbital_period":686.98}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"transfer_time":258.9,"target_orbital_period":686.98}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/astro/launch-window-phase-angle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"transfer_time": 258.9,
"target_orbital_period": 686.98
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "astro.launch_window_phase_angle",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |