Maschinelle Übersetzung, nicht von einem Muttersprachler geprüft. Englisch ist die maßgebliche Fassung.

SzenarienBeim Build aus den Szenariodateien und der Verifikationsmatrix des Repositorys erzeugt.

Szenarioreferenz

Jede mitgelieferte Szenariodatei (193), nach Art gruppiert. Die Beschreibung ist der eigene Kopfkommentar der Datei; die Schlüsselparameter sind ihre Einstellungen auf oberster Ebene. Der Status liest die Verifikationsmatrix für das Modul der Art. In Kshana Studio öffnen öffnet den aufgezeichneten Lauf.

Ein Satellit über einer Station: Schrägentfernung, Elevation und Es/N0 jedes Überflugs entlang des Überflugs, der bei jedem Schritt gewählte DVB-S2-MODCOD (Schwellen nach ETSI EN 302 307-1 Tabelle 13 plus eine Implementierungsmarge) und das Datenvolumen, das ACM gegenüber der Basislinie mit konstanter Kodierung bewegt, die an der Maske schließt. MODELLED.

aocs#

Lageregelung von Raumfahrzeugen: ein Schwenk zur inertialen Ausrichtung eines starren Körpers mit drei oder mehr ausgewuchteten Reaktionsrädern unter MRP-Rückführung (L = -K sigma - P omega), Radmomente mit minimaler Norm, begrenzt auf die Grenze jedes Motors, RK4 mit Halteglied nullter Ordnung; optional geschlossen auf einem multiplikativen EKF aus einem simulierten Gyro (Winkel- und Raten-Random-Walk) und Sternsensor. Es meldet Einschwingzeit, End- und Spitzenzeigefehler, Spitzenraddrehzahl und -moment, den Sättigungsanteil, die Drehimpulsdrift und, mit dem Schätzer, dessen Lagefehler und NEES. Die Schleife des wahren Zustands ist gegen Basilisk 2.9.1 VALIDATED; der Schätzer ist MODELLED.

aocs-slew.toml

Art aocsnicht per Name einem Registermodul zugeordnet

Lagewechsel mit Reaktionsrädern unter MRP-Rückführung, geschlossen auf dem wahren Zustand.

kind = "aocs"
duration_s = 600.0
dt_s = 0.1
sample_s = 1.0
k_nm = 3.5
p_nms = 30.0
pointing_threshold_deg = 0.1
axis = [0.5773502, 0.5773502, 0.5773504]

In Kshana Studio öffnen · Auf GitHub ansehen

aocs-slew-mekf.toml

Art aocsnicht per Name einem Registermodul zugeordnet

Lagewechsel mit Reaktionsrädern unter MRP-Rückführung, geschlossen auf einer MEKF-Schätzung.

kind = "aocs"
duration_s = 600.0
dt_s = 0.1
sample_s = 1.0
k_nm = 3.5
p_nms = 30.0
pointing_threshold_deg = 0.1
axis = [0.5773502, 0.5773502, 0.5773504]

In Kshana Studio öffnen · Auf GitHub ansehen

aperture-duty-cycle#

Aperture-Duty-Cycle: die Aufteilung der Zeit zwischen Navigation und Kommunikation, die ein Kontaktplan für einen Pool lenkbarer Aperturen impliziert. Nimmt einen Kontaktplan (eine Liste von Fenstern [[contacts]] aos_s/los_s, die jeweils Navigation oder Kommunikation anfordern — dasselbe aos_s/los_s-Vokabular, das der Prädiktor passes ausgibt), eine Aperturanzahl und eine ARBITRIERUNGSREGEL (standardmäßig Navigationspriorität, oder Kommunikationspriorität, oder nicht verdrängendes First-come-first-served) und meldet die Navigationsauslastung, die Kommunikationsauslastung, die Leerlaufauslastung und den Ausfall je Sitzung — die Kontaktzeit, die eine Sitzung angefordert hat und die keine Apertur bedient hat. Ein exakter Intervall-Sweep über die Fenstergrenzen, sodass sich berührende Fenster nie konkurrieren und keine Aperturssekunde doppelt gezählt wird; Navigations-, Kommunikations- und Leerlauf-Aperturssekunden werden unabhängig akkumuliert und schließen gegen apertures*horizon_s. Der Bericht nennt die aufgelöste Regel, ihre vollständige Definition und die Definitionen von Auslastung und Ausfall, weil eine Auslastungszahl ohne ihre Arbitrierungsregel nicht reproduzierbar ist. MODELLED Planungsarithmetik: Es wird keine Schwenk-, Umstimm- oder Wechselzeit berechnet, wenn eine Apertur Dienst oder Sitzung wechselt, und weder Datenvolumen, Pufferzustand, Energiebudget noch Linkschluss gehen in die Entscheidung ein, und die Kontaktfenster sind Eingaben — ihre Geometrie ist, was sie erzeugt hat. Kein Planungsprodukt für das Bodensegment.

aperture-duty-cycle.toml

Art aperture-duty-cyclenicht per Name einem Registermodul zugeordnet

Demonstrator für den Aperturnutzungsgrad (Bodensegment & Betrieb).

kind = "aperture-duty-cycle"
apertures = 2
arbitration = "navigation-priority"
name = "nav-1"
service = "navigation"
aos_s = 0.0
los_s = 600.0
name = "comms-1"

In Kshana Studio öffnen · Auf GitHub ansehen

araim-reference-check#

Veröffentlichte ARAIM-Zertifizierungs-Referenzvektoren: Die horizontalen und vertikalen ARAIM-Schutzniveaus der Engine laufen gegen die EIGENEN durchgerechneten numerischen Beispiele der WG-C-ARAIM-Technical-Subgroup, mit der Toleranz (TOL_PL = 5e-2 m), die diese Dokumente selbst nennen. Zwei Vektoren sind als Fixtures eingecheckt, jeder mit seiner Abruf-URL, seinem Abrufdatum, dem SHA-256 der Quelldatei und der Seite: dem Anhang D des Reference Airborne Algorithm Description Document v3.1 (2019) — in sich konsistent und der Abnahmevektor — und dem Milestone 3 Report (2016) Annex A Abschnitt A.IX, der Aussage, die die Forschungsbibliografien zitieren. Jede veröffentlichte Eingabe (die Geometriematrix mit 10 Satelliten und 2 Konstellationen, die Varianzdiagonalen C_int und C_acc, b_nom, P_sat, P_const und der konstante Satz für LPV-200) und jede veröffentlichte Ausgabe (VPL, HPL, EMT, sigma_v_acc, K_fa_3 und sigma_3, sigma_ss_3 und b_3 der beiden Konstellationsfehlermodi) wird neben der eigenen Zahl der Engine und ihrer absoluten Differenz gemeldet. Die Schutzniveaugleichung wird hier NICHT neu gelöst: Die Modusliste der Referenz wird den bestehenden raim::araim_protection_level / araim_integrity_risk der Engine übergeben, sodass die geprüfte Bisektion und Gauß-Schwanz-Algebra die eigenen der Engine sind; nur die Geometrie, die Teillösungen, die Detektionsschwellen und die veröffentlichte Budgetaufteilung werden dafür gebaut. EXTERNALLY CHECKED gegen den Vektor von 2019: VPL 18,2926 m gegenüber veröffentlichten 18,3 m, HPL 13,4063 m gegenüber 13,45 m, EMT 7,2997 m gegenüber 7,2998 m, sigma_v_acc 1,3694 m gegenüber 1,3694 m und alle sechs veröffentlichten Zwischenwerte auf eine halbe Einheit in ihrer letzten gedruckten Dezimalstelle. Der Vektor von 2016 trägt zwei interne Mängel, die der Bericht nennt, statt sie zu verbergen — einen Vorzeichenfehler in Zeile 3 von G und ein K_fa_3, das bei 57 Fehlermodi ausgewertet wurde, während das Dokument N_fault_max = 1 (12 Modi) nennt — sodass seine Geometrie-Zwischenwerte exakt reproduziert werden, während seine Schutzniveaus als gemessene Abweichungen gemeldet und aus der Abnahmezahl ausgeschlossen werden; die Toleranz wird nie geweitet, um sie aufzunehmen. Jedes ausgegebene numerische Feld trägt eine Einheit und eine Herkunftsklasse, und eine abgeschriebene Zahl ist mit published bezeichnet, sodass sie nie mit einer berechneten verwechselt werden kann. UMFANG: Nur N_fault_max = 1 (Fehlermodi einzelner Satelliten und einzelner Konstellationen) ist implementiert, und ein Fall, dessen Prioris gleichzeitige Fehlerteilmengen mit mehreren Ereignissen erfordern, wird REFUSED, statt stillschweigend gekürzt zu werden; Fehlererkennung, Ausschluss, die Chi-Quadrat-Konsistenzprüfung und der Umverteilungsschritt gegen Doppelzählung des Referenzalgorithmus liegen außerhalb des Umfangs. Dies reproduziert das durchgerechnete Beispiel eines veröffentlichten Referenzalgorithmus — es ist keine Zertifizierung, kein Lufttüchtigkeitsartefakt und keine Zulassung.

araim-reference-check.toml

Art araim-reference-checknicht per Name einem Registermodul zugeordnet

Die ARAIM-Schutzniveaus der Engine gegenüber den EIGENEN durchgerechneten Beispielen der Untergruppe WG-C.

kind = "araim-reference-check"

In Kshana Studio öffnen · Auf GitHub ansehen

ascent-losses#

Ebener Gravity-Turn-Aufstieg eines mehrstufigen Fahrzeugs über einer nicht rotierenden kugelförmigen Erde durch die US Standard Atmosphere 1976 (senkrechter Anstieg, Nickimpuls, Schub entlang der Geschwindigkeit), wobei die Gravitations-, Luftwiderstands-, Lenk- und Gegendruckverluste integriert werden und das ideale dv minus Verluste gegen die Brennschlussgeschwindigkeit geprüft wird; max-Q, Spitzenbeschleunigung und Brennschlusszustand. MODELLED.

ascent-losses.toml

Art ascent-lossesnicht per Name einem Registermodul zugeordnet

Aufstiegsverluste einer Schwerkraftkurve (Gravity Turn) eines ILLUSTRATIVE zweistufigen Kerosin/Sauerstoff-Trägers (kein reales Fahrzeug): senkrechter Anstieg bis 1 km, ein Nick-Kick von 3 Grad für 10 s, dann Schub entlang der Geschwindigkeit. Der Lauf integriert die Verluste durch Schwerkraft, Luftwiderstand, Lenkung und Gegendruck und prüft, dass das ideale dv minus die Verluste der Brennschlussgeschwindigkeit entspricht. MODELLED: ebene, nicht rotierende Erde, konstantes C_D, kein Schubabschnitt ohne Antrieb, keine Lenkung außer dem Kick.

kind = "ascent-losses"
payload_kg = 10000.0
drag_coefficient = 0.3
kick_altitude_m = 1000.0
kick_angle_deg = 3.0
kick_duration_s = 10.0
step_s = 0.1
dry_mass_kg = 25000.0

In Kshana Studio öffnen · Auf GitHub ansehen

attitude-budget#

3-DOF-Lage- und Zeigefehlerbudget: das Störmoment des Schwerkraftgradienten im ungünstigsten Fall ((3/2)(μ/R³)ΔI) und ein Wurzel-aus-Summe-der-Quadrate-Zeigefehlerbudget über benannte 1σ-Beiträge (Sensorrauschen, Reaktionsrad-Jitter, thermisch, Ausrichtung) mit dem dominanten Term, für eine Bahnhöhe und eine Streuung der Körperträgheit. MODELLED skalares AOCS-Budget — eine Ergänzung vor der Hardware zu Basilisk/42, keine Simulation von Regelkreis, 6 Freiheitsgraden oder flexiblen Moden.

attitude-budget.toml

Art attitude-budgetArt hat validierte Registerzeilen · 1 von 1 Zeilen validiert

Demonstrator für das 3-DOF-Fehlerbudget von Lage und Ausrichtung (AOCS/GNC vor der Hardware).

kind = "attitude-budget"
altitude_km = 600.0
name = "star_tracker_noise"
sigma_arcsec = 5.0
name = "reaction_wheel_jitter"
sigma_arcsec = 8.0
name = "thermal_distortion"
sigma_arcsec = 4.0

In Kshana Studio öffnen · Auf GitHub ansehen

body-pnt#

Positionierung um einen beliebigen Körper des Sonnensystems: ein Orbiter oder ein Lander auf der Oberfläche um einen namentlich gewählten Zentralkörper (Mars, der Mond, Europa, Ganymed, Titan und der Rest des Katalogs des Sonnensystems), der mit Einweg-Pseudoentfernungen von einer kleinen Walker-Navigationskonstellation um den Körper navigiert (Zweikörperbahnen mit der eigenen säkularen J2-Drift des Körpers, eine unbekannte Nutzeruhr) und optional mit einer uhrenfreien Zweiweg-Entfernungsmessung im Weltraum von der Erde, deren Richtung und Entfernung zu jeder Epoche aus der analytischen Ephemeride des Sonnensystems stammen. Sichtlinien werden von der mittleren Kugel des Körpers blockiert, und ein Nutzer auf der Oberfläche braucht außerdem die Elevationsmaske. Je Epoche: Relais in Sicht, ob die Erde über dem Limb steht, das GDOP und PDOP der reinen Konstellation (geometrische und Positions-Verdünnung der Genauigkeit), die formale Ein-Sigma-Positionsunsicherheit mit und ohne die Erdzeile und der Fehler einer mit Seed erzeugten Gauß-Newton-Kleinste-Quadrate-Lösung in beiden Fällen; über den Lauf: Verfügbarkeit, Erdsichtbarkeit, medianes PDOP, RMS-Fehler und medianes formales Sigma, dazu Lichtlaufzeit von der Erde zum Körper, Hin- und Rückweg, Shapiro-Verzögerung und Sonnenabstand zur Epoche. MODELLED: Die Relaisbahnen, die Rauschpegel und das momentane Messmodell sind Modellierungsentscheidungen, nicht gegen Navigationsdaten einer Mission validiert; die Körperkonstanten sind die in body.rs genannten veröffentlichten Werte, und die Erdgeometrie erbt die Bezeichnungen der Ephemeride des Sonnensystems.

europa-surface-pnt.toml

Art body-pntnicht per Name einem Registermodul zugeordnet

Positionierung eines Landers auf Europa: der Fall des Jupitermondes.

kind = "body-pnt"
body = "Europa"
epoch = "2027-02-19T00:00:00"
duration_s = 306822.0
step_s = 1800.0
seed = 11
kind = "surface"
lat_deg = 20.0

In Kshana Studio öffnen · Auf GitHub ansehen

mars-orbit-pnt.toml

Art body-pntnicht per Name einem Registermodul zugeordnet

Positionierung eines Orbiters im niedrigen Marsorbit mit einer Mars-Navigationskonstellation und einer Deep-Space-Verbindung.

kind = "body-pnt"
body = "Mars"
epoch = "2027-02-19T00:00:00"
duration_s = 88775.0
step_s = 300.0
seed = 7
kind = "orbiter"
altitude_km = 300.0

In Kshana Studio öffnen · Auf GitHub ansehen

campaign#

Kampagne: bestehende Szenarioarten, zu einem Lauf zusammengesetzt, wobei jede Zahl aus einem echten Lauf der genannten Art gelesen wird. Vier Abschnitte, in beliebiger Kombination. PHASES: eine verkettete Mission auf einer gemeinsamen Zeitachse -- jede Phase führt ein oder mehrere Szenarien aus (zum Beispiel Jamming, dann Spoofing, dann eine Uhr im Holdover mit einem daneben auslaufenden Inertialnavigationssystem, dann ein Integritätsalarm, dann Erholung), ihre Ausgaben werden durch eine Voreinstellung je Art oder durch ausdrückliche Ergebnispfade in benannte Kanäle gelesen (Uhrenzeitfehler gegen seine Schutzgrenze, Träger-Rausch-Dichte-Verhältnis gegen die Tracking-Untergrenze, Schutzniveau gegen die Alarmgrenze, Positionsfehler, trackende Satelliten, Alarmflags) und durch Halteglied nullter Ordnung auf ein gemeinsames Raster umgetastet, mit Phasengrenzen und Ereignissen; der Zustand wird durch carry (ein Kanal setzt sich vom Endwert der vorigen Phase fort), handoff (eine Zahl der vorigen Phase, in das Szenario dieser Phase geschrieben) und end_at (eine Phase endet zu einer Zeit, die ein Lauf berechnet hat, etwa der Erkennungszeit eines Spoofing-Monitors) weitergereicht. SWEEP: ein Gitter über ein bis drei gepunktete Szenarioschlüssel einer beliebigen Art (ein ganzzahliges Segment indiziert ein Array von Tabellen, wie in system.2.sisre_m), mit Metriken, die über den Ergebnispfad gelesen werden, und, bei mehr als einem Lauf, einem Monte-Carlo-Ensemble mit Seed an jedem Knoten. MONTE_CARLO: Realisierung k läuft bei base_seed + k; jede Metrik meldet Mittelwert, Standardabweichung, Perzentile 5./50./95. nach dem Nearest-Rank-Verfahren und ein Bootstrap-Konfidenzintervall von 95 % mit festem Seed für den Mittelwert. COMPOSE: mehrere Szenarien unter gemeinsamen Werten (Leistung und Position eines Jammers, in einen maritimen und einen Straßenempfänger geschrieben), mit einer kombinierten Zusammenfassung von bestem und schlechtestem Fall. Das Ergebnis trägt einen Kampagnen-Hash, einen Digest über jedes Mitgliedsergebnis und einen Einheiteneintrag für jede ausgegebene Zahl; die Interoperabilitätsexporte schreiben jedes Mitgliedsszenario mit Geometrie als eigenen Dateisatz. Kompositionsidentitäten werden getestet: Eine Ein-Phasen-Kampagne reproduziert den eigenständigen Lauf bitgenau, ein Ensemble mit festem Seed ist byte-stabil, und bei einer Uhr mit weißem Frequenzrauschen fällt der Ensemblemittelwert in das gemeldete Intervall, wobei die Streuung zu sqrt(q_wf * tau) passt. MODELLED: der additive Übertrag und das Halteglied nullter Ordnung sind Modellierungsentscheidungen, und jede Phase trägt die Bezeichnung der Art, die sie ausgeführt hat.

campaign-jam-spoof-holdover-integrity.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Eine verkettete Mission: nominal, Jamming, Spoofing, GNSS-Verlust mit Uhren-Holdover und Inertial-Überbrückung, ein Integritätsalarm und Wiederherstellung, auf einer gemeinsamen Zeitleiste.

kind = "campaign"
title = "Jamming, spoofing, holdover and integrity: a chained mission"
seed = 20260928
step_s = 10.0
name = "nominal"
duration_s = 600.0
seed = 42
threshold_ns = 50.0

In Kshana Studio öffnen · Auf GitHub ansehen

campaign-monte-carlo-clock-holdover.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Ein Monte-Carlo-Ensemble mit festem Seed durch eine Kampagne, an einem Fall mit geschlossener Form.

kind = "campaign"
title = "Monte Carlo: free-running clock error against its closed form"
seed = 20260928
runs = 200
seed_key = "seed"
metrics = [
seed = 42
threshold_ns = 20.0

In Kshana Studio öffnen · Auf GitHub ansehen

campaign-shared-jammer-sea-road.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Domänenübergreifende Komposition: ein Jammer, zwei Plattformen. Ein Schiff im Finnischen Meerbusen (59,80 N, 24,90 E, der Empfänger des Beispiels maritime-strait-jamming) und ein Auto auf einer Küstenstraße in Helsinki (60,17 N, 24,94 E) befinden sich unter demselben Breitbandjammer, platziert bei 59,80 N, 25,44 E, 30 m hoch (etwa 30 km vom Schiff und 50 km vom Auto entfernt).

kind = "campaign"
title = "One jammer, a ship and a car"
seed = 20260928
name = "jammer_power"
unit = "dBW"
value = 8.0
name = "jammer_position"
unit = "m"

In Kshana Studio öffnen · Auf GitHub ansehen

campaign-spectrum-holdover-integrity.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Eine verkettete Mission, getrieben vom L-Band-Spektrum: Ein Chirp-Jammer nimmt GPS L1 C/A und Galileo E1, die Uhr überbrückt im Holdover, und ein auf dem L1-Träger belassener Dauerstrichton (CW) hält C/A unten, während sich E1 erholt, sodass der Empfänger auf Galileo zurückfällt und sein Integritätsmonitor auf einem reinen Galileo-Himmel läuft.

kind = "campaign"
title = "L-band jamming from the spectrum, clock holdover and a Galileo-only fallback"
seed = 20260928
step_s = 1.0
name = "onset"
duration_s = 60.0
end_at = "timeline.bands[0].first_loss_t_s"
end_at_run = 1

In Kshana Studio öffnen · Auf GitHub ansehen

campaign-sweep-jammer-power.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Ein Parameterdurchlauf über eine Kampagne: der Empfänger des Beispiels jamming (52 N, 4 E, GPS-ähnliche Walker-Schale mit 24 Satelliten) unter einem Breitbandjammer in 1 km Entfernung, wobei die Sendeleistung des Jammers von -50 dBW (10 nW) bis +10 dBW (10 W) in 5-dB-Schritten durchlaufen wird. Jeder Knoten ist ein gewöhnlicher Lauf jamming; die Kampagne hält je Knoten den Anteil der Epochen mit mindestens vier weiterhin verfolgten Satelliten, das mittlere Störer-zu-Signal-Verhältnis (J/S) und die geringste Zahl verfolgter Satelliten fest.

kind = "campaign"
title = "Jammer power sweep: availability and J/S against transmit power"
seed = 20260928
metrics = [
name = "jammer_power"
key = "jammer.power_dbw"
unit = "dBW"
start = -50.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-data-services.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: zusätzliche PNT-Datendienste in der Navigationsnachricht.

kind = "campaign"
title = "Navigation-message service data against frame length"
seed = 20260929
name = "fit_interval"
unit = "s"
value = 300.0
label = "ephemeris-clock"
bind = { fit_interval = "message.fit_interval_s" }

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-fused-pnt-sisre.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: fusioniertes MEO- + LEO-PNT.

kind = "campaign"
title = "Fused MEO + LEO positioning against the LEO SISRE"
seed = 20260929
metrics = [
name = "leo_sisre"
key = "system.2.sisre_m"
unit = "m"
start = 0.05

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-indoor-uhf.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: Navigation in Innenräumen mit UHF.

kind = "campaign"
title = "Indoor LEO-PNT by band and building class"
seed = 20260929
label = "traditional-building"
metrics = [
kind = "leo-pass"
epoch = "2026-09-28T12:00:00"
duration_s = 900.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-iot-eirp.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: energiearme Positionierung für das Internet der Dinge (IoT) und mobile Geräte.

kind = "campaign"
title = "IoT energy per fix against LEO UHF transmit power"
seed = 20260929
metrics = [
name = "uhf_eirp"
key = "satellite.0.band.0.eirp_dbw"
unit = "dBW"
start = -35.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-ntn-bandwidth.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: Kompatibilität mit nichtterrestrischen 5G/6G-Netzen (NTN).

kind = "campaign"
title = "NTN positioning against reference-signal bandwidth"
seed = 20260929
metrics = [
name = "bandwidth"
key = "signal.0.bandwidth_hz"
unit = "Hz"
start = 180000.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-focus-ppp-altitude.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: hochgenaue Positionierung (präzise Punktpositionierung, PPP).

kind = "campaign"
title = "PPP convergence against the altitude of a 192-satellite LEO layer"
seed = 20260929
metrics = [
name = "leo_altitude"
key = "case.0.system.0.shell.0.altitude_km"
unit = "km"
start = 500.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-resilience-gnss-jammed-leo-carries.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Resilienz-Mission LEO-PNT: GNSS gestört, LEO-PNT trägt den Nutzer, Integrität gewahrt.

kind = "campaign"
title = "GNSS jammed, LEO-PNT carries the user, integrity maintained"
seed = 20260929
step_s = 30.0
name = "nominal"
duration_s = 600.0
series = [
kind = "spectrum"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-resilience-multiband-diversity.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Resilienz von LEO-PNT durch Banddiversität: ein Jammer, ein Vierband-Empfänger.

kind = "campaign"
title = "LEO-PNT band diversity against an L-band barrage jammer"
seed = 20260929
metrics = [
name = "jammer_power"
key = "jammers.0.received_power_dbw"
unit = "dBW"
start = -140.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-resilience-spoof-monitors.toml

Art campaignnicht per Name einem Registermodul zugeordnet

Resilienz von LEO-PNT gegen Spoofing: welcher Monitor welchen Spoofer sieht.

kind = "campaign"
title = "Spoofing monitors against four spoofers"
seed = 20260929
name = "jump"
unit = "m"
value = 30.0
label = "l-band-only"
bind = { jump = "spoofer.offset_m" }

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-5g-network-timing.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: Drahtlosnetze, Zeitgebung von 5G/6G-Basisstationen.

kind = "campaign"
title = "5G base-station timing: holdover and LEO time"
seed = 20260929
step_s = 300.0
name = "gnss-lost"
duration_s = 86400.0
events = [
kind = "telecom-timing"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-asset-tracking-iot.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: Asset-Tracking und das Internet der Dinge (IoT), Energie pro Fix.

kind = "campaign"
title = "Container tracking with LEO UHF: energy per fix along a journey"
seed = 20260929
step_s = 10.0
name = "port-hamburg"
duration_s = 480.0
series = [
kind = "leo-pass"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-autonomous-vehicle.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: autonome Fahrzeuge, eine Straßenschlucht mit einer LEO-Schicht.

kind = "campaign"
title = "Autonomous vehicle in an urban canyon with a LEO layer"
seed = 20260929
step_s = 10.0
name = "open-road"
duration_s = 600.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 1.5 }]

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-autonomous-vehicle-skyline.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: die Straßenschlucht für autonome Fahrzeuge, als flacher Grenzwinkel und als Straße.

kind = "campaign"
title = "Autonomous vehicle in an urban canyon: a flat cut-off and a city-street skyline"
seed = 20260929
step_s = 10.0
name = "urban-canyon"
duration_s = 900.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 1.5 }]

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-critical-infrastructure-timing.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: Zeitgebung kritischer Infrastruktur, Holdover mit LEO-Zeit.

kind = "campaign"
title = "Critical infrastructure timing: holdover with LEO time"
seed = 20260929
step_s = 300.0
name = "gnss-locked"
duration_s = 600.0
alarms = []
seed = 42

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-polar-arctic.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: Nutzer in Polar- und Arktisregionen.

kind = "campaign"
title = "Polar and Arctic users with a polar LEO layer"
seed = 20260929
step_s = 60.0
name = "tromso"
duration_s = 3600.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 3.0 }]

In Kshana Studio öffnen · Auf GitHub ansehen

leo-vertical-rail-maritime.toml

Art campaignnicht per Name einem Registermodul zugeordnet

LEO-PNT-Vertikale: Schiene und Seeverkehr, die mitgelieferten See- und Schienenszenarien plus LEO.

kind = "campaign"
title = "Railway and maritime with a LEO layer"
seed = 20260929
step_s = 10.0
name = "strait-jammed"
duration_s = 1800.0
kind = "jamming"
seed = 1

In Kshana Studio öffnen · Auf GitHub ansehen

cislunar-arc-recovery#

MODELLED Test mit unabhängigem Schätzer für die Beobachtbarkeitsschwelle der cislunaren Bogenlänge. Diese Schwelle ist ein RANG, gelesen an der Beobachtbarkeitsmatrix, die aus den ANALYTISCHEN Entfernungs-Jacobi-Zeilen und der ANALYTISCHEN variationalen Zustandsübergangsmatrix zusammengesetzt wird, und ihre Gegenprüfung mit dem Square-Root-Information-Filter faltet dieselben Zeilen — eine Konsistenzprüfung zwischen zwei numerischen Maschinen, keine Bestätigung. Diese Art liefert den fehlenden Schiedsrichter: einen Batch-Kleinste-Quadrate-Schätzer, der den Anfangszustand des Chiefs aus simulierten Messungen tatsächlich WIEDERHERSTELLT, wobei die Messpartialableitungen als ZENTRALE FINITE DIFFERENZEN des zusammengesetzten Vorwärtsmodells genommen werden. Er ruft keine analytische Jacobi-Zeile, keine variationale STM, keine Singulärwert- oder Eigenwertzerlegung, keine Rangtoleranz und keinen Square-Root-Information-Filter auf — eine Quelltext-Wache in tests/cislunar_arc_recovery_reference.rs macht das durchsetzbar —, während die Dynamik (derselbe RK4-CR3BP-Fluss), die Anfangsbedingungen (dieselbe differenzialkorrigierte Konstellation), die skalare Observable und das Epochenraster bewusst geteilt und im ausgegebenen Block independence benannt werden, weil zwei Analysen desselben physikalischen Problems sich über die Physik einig sein müssen, um vergleichbar zu sein. Zwei Kriterien, jedes über fünf Dekaden seiner eigenen Grenze durchfahren: RAUSCHFREIE WIEDERHERSTELLUNG (der Endzustandsfehler jedes Versuchs mit Seed höchstens recovery_factor mal seine A-priori-Auslenkung — das Rang-Analogon, ohne Singulärwerttoleranz darin) und MONTE-CARLO-SCHÄTZBARKEIT (der gemessene RMS-Positionsfehler über ein Rauschensemble mit Seed unterhalb einer genannten Grenze — das Schätzbarkeits-Analogon, gemessen statt vorhergesagt). Unterstützt den ebenen Vierzustand und den räumlichen Sechszustand, die Familien DRO / L2-Halo / L2-NRHO, Entfernungs- und Entfernungsraten-Observablen und eine mondzentrierte Polarparametrisierung, in der die Transformation auf den ZUSTAND angewendet und das Vorwärtsmodell dort neu differenziert wird. MEASURED am veröffentlichten ebenen DRO-Gitter: Der Schätzer stellt den Vierzustand ab 0,782609 h wieder her, gegenüber 2,086957 h beim Rangkriterium bei rel_tol 1e-6 (Verhältnis 0,375) — die Rangschwelle ist als Wiederherstellbarkeitsgrenze NICHT bestätigt —, während die gemessene Schätzbarkeitsgrenze in derselben Gitterzelle landet wie die formale, 5,739130 h, und die gemessene Fehlerkurve das formale 1-Sigma über 21 Bogenlängen mit einem geometrischen Mittel des Verhältnisses von 0,98 reproduziert. MODELLED: der Konstellationsentwurf, das Epochenraster, die eine verfolgte Verbindung, die Größe der Auslenkung, das Messsigma und die zwei genannten Grenzen. Kein zertifiziertes Navigationsleistungsprodukt.

cislunar-arc-recovery.toml

Art cislunar-arc-recoverynicht per Name einem Registermodul zugeordnet

Test der Beobachtbarkeitsschwelle der cislunaren Bogenlänge mit unabhängigem Schätzer (R6, Paper B).

kind = "cislunar-arc-recovery"

In Kshana Studio öffnen · Auf GitHub ansehen

cislunar-observability#

MODELLED Beobachtbarkeit einer ebenen cislunaren Konstellation (P6): verfolgt eine differenzialkorrigierte ebene DRO-Konstellation aus vier Raumfahrzeugen mit Entfernungsmessung zwischen den Satelliten und meldet, wie viel vom Vierzustand [x,y,ẋ,ẏ] eines Raumfahrzeugs der Bogen beobachtbar macht. Gibt aus (1) die Tabelle Rang gegen Bogenlänge für eine einzelne reine Entfernungsverbindung — momentan Rang 1, wachsend zum vollen Vierzustand, wenn sich der Bogen verlängert (P6 Tabelle 1); (2) das Eigenspektrum der Beobachtbarkeits-Gram-Matrix + Konditionszahl über den Bogen; (3) den Vergleich des momentanen Rangs von reiner Entfernung gegenüber Entfernung + Entfernungsrate (der Doppler-Entwurfshebel) plus die Meldung von GDOP bei reiner Entfernung singulär / bei Entfernung + Rate definiert; und (4) eine unabhängige SRIF-Gegenprüfung, deren Posteriori-Kovarianz genau an dem Bogen endlich bzw. gut konditioniert wird, an dem der beobachtbare Rang vier erreicht. VALIDATED Kern: Der beobachtbare Rang ist eine rangaufdeckende Singulärwertschwelle, gegengeprüft mit dem Eigenrang der Gram-Matrix; das Eigenspektrum gehorcht den spektralen Invarianten (Spur=Σλ, Det=Πλ, Frobenius²=Σλ²); die variationale STM ist die durch finite Differenzen validierte CR3BP-STM; die Jacobi-Zeilen für Entfernung/Entfernungsrate sind durch finite Differenzen validierte analytische Partialableitungen (gegengeprüft mit der 3-D-Entfernungsraten-Observablen des Crates); die vier Anfangsbedingungen sind differenzialkorrigierte ebene DROs, die sich bis auf ein enges Periodizitätsresiduum schließen und retrograd sind; der Rangübergang ist gegen den Square-Root-Information-Filter des Crates gegengeprüft (Posteriori-Kovarianz genau bei vollem Rang endlich, cond(P)=cond(OᵀO)); ein rangdefizienter Schnappschuss wird als GDOP-undefiniert markiert (fim condition=inf), nie als ein falscher endlicher Wert — derselbe Schutz vor singulärer Geometrie, den pvt::solve_spp anwendet. MODELLED: der Konstellationsentwurf (Perilunamplituden und -phasen der DRO) und die konkrete Rangfolge, die er erzeugt. Kein zertifiziertes Navigationsleistungsprodukt.

cislunar-observability.toml

Art cislunar-observabilitynicht per Name einem Registermodul zugeordnet

Beobachtbarkeit einer ebenen cislunaren Konstellation über einen Tracking-Bogen (P6).

kind = "cislunar-observability"

In Kshana Studio öffnen · Auf GitHub ansehen

clock#

Uhren-Holdover gegen Spezifikation; optionales Monte-Carlo-Ensemble (runs > 1).

clock-ensemble.toml

Art clocknicht per Name einem Registermodul zugeordnet

Monte-Carlo-Ensemble des Szenarios zum Uhren-Holdover.

seed = 42
threshold_ns = 20.0
runs = 200
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker floor modeled at sigma_y=1e-16"

In Kshana Studio öffnen · Auf GitHub ansehen

clock-fitted-log.toml

Art clocknicht per Name einem Registermodul zugeordnet

Ein Uhrenszenario, dessen klassische Uhr das Rauschen eines gemessenen Logs übernimmt ([clock_fit]).

seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30

Noch nicht auf GitHub

clock-holdover.toml

Art clocknicht per Name einem Registermodul zugeordnet

Referenzszenario von Kshana: Lauf über 2 h, 10 min GNSS-Synchronisation, dann ~1,8 h verwehrt. Weißes FM-Rauschen der Uhr kalibriert auf veröffentlichtes sigma_y(1 s): q_wf = sigma_y(1s)^2. Gegen simulierte Allan-Abweichung validiert in tests/calibration.rs (~2%).

seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30

In Kshana Studio öffnen · Auf GitHub ansehen

clock-holdover-labsr.toml

Art clocknicht per Name einem Registermodul zugeordnet

Variante: Strontium-Uhr (optisch) in Laborgüte gegenüber CSAC. Labor-Sr-Uhren erreichen sigma_y(1 s) = 4.8e-17 (Oelker et al. 2019, Nature Photonics).

seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-lab-sr"
provenance = "Laboratory Sr optical lattice clock, sigma_y(1s)=4.8e-17 (Oelker et al. 2019, Nature Photonics); q_wf=sigma_y(1s)^2; laboratory maturity, not flown; flicker/aging not modeled"
q_wf = 2.304e-33

In Kshana Studio öffnen · Auf GitHub ansehen

clock-measured-log.toml

Art clocknicht per Name einem Registermodul zugeordnet

Ein Uhrenszenario mit einem gemessenen Log neben dem simulierten holdover ([clock_log]).

seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30

Noch nicht auf GitHub

combined-altpnt#

GPS-gesperrter kombinierter Schwere-, Magnet- und Gelände-Navigator: drei skalare Feldkanäle, je Wegpunkt fusioniert, für eine schärfere Driftkorrektur (niedrigere CRLB) als mit jedem einzelnen Feld.

combined-altpnt.toml

Art combined-altpntnicht per Name einem Registermodul zugeordnet

Kombinierter Schwere-, Magnetfeld- und Gelände-Navigator ohne GPS: fusioniertes Alt-PNT.

kind = "combined-altpnt"
start_lat_deg = 12.05
start_lon_deg = 20.05
step_lat_deg = 0.004
step_lon_deg = 0.003
waypoints = 60
drift_lat_deg = 0.5
drift_lon_deg = -0.4

In Kshana Studio öffnen · Auf GitHub ansehen

conflict-resilience#

Konfliktresilienz geschichteter PNT (P7), MODELLED: Ein Nutzer in umkämpfter Umgebung setzt mehrere PNT-Schichten ein (Open-Service-GNSS, Breitband-GNSS, eine authentifizierte Konstellation, ein Augmentations-Relais), jede mit einer Basisverfügbarkeit, einer 1σ-Genauigkeit und einer Verwundbarkeit je Vektor gegenüber der gemeinsamen Jamming-/Spoofing-Bedrohung. Ein nach Intensität variiertes Monte-Carlo mit festem Seed sperrt jede Schicht mit der Wahrscheinlichkeit clamp(Verwundbarkeit·Intensität·Vektorgewicht,0.1), fusioniert die überlebenden Schichten nach der geschlossenen Inverse-Varianz-Regel σ_fused=(Σ 1/σ_i²)^(−1/2) und berichtet die Gesamtverlustwahrscheinlichkeit (alle Schichten gesperrt), den medianen fusionierten Fehler und Statistiken zu Nutzbarkeit und Sperrung je Schicht über der Intensität. Das zentrale Resilienzverhältnis (Gesamtverlustwahrscheinlichkeit einer einzelnen Schicht gegenüber der geschichteten) liegt unter der Annahme der UNABHÄNGIGKEIT bei ~7x; ein Sweep mit korrelierter Sperrung über eine Ein-Faktor-Gauß-Kopula zeigt dann, dass dieses ~7x gegen 1 zusammenbricht, wenn die Korrelation der Sperrung steigt (Korrelation hebelt die Schichtung aus). Ein Block zur Priorsensitivität variiert die Kennzahl über die BELEGTEN Verwundbarkeits-Priors mittels mcda-Tornado, einer Dirichlet-Neuverteilung des Bedrohungsaufwands und Perzentil-Konfidenzintervallen. Der VALIDATED Kern: Der Gesamtverlust des Monte-Carlo konvergiert gegen das geschlossene unabhängige Produkt Π_i p_deny_i (innerhalb des Monte-Carlo-Standardfehlers bei festem Seed und großem N); die Inverse-Varianz-Fusion ist eine Identität in geschlossener Form; bei ρ=0 geht die Kopula in das unabhängige Modell über, und jedes ρ erhält die marginale Sperrrate jeder Schicht. MODELLED: Die Größenordnungen von Verwundbarkeit, Verfügbarkeit und Genauigkeit je Schicht sind belegte, aber modellierte Eingaben (JammerTest 2024, TEXBAT, EASA SIB, RTCA DO-229, LunaNet/IOAG — siehe conflict_threat_params), und die konkrete Größenordnung von ~7x sowie die Kurvenform von Verhältnis über Korrelation folgen aus dieser Parametrisierung. Eine Aufschlüsselung des Überlebens je Vektor nach §4,2 löst die gemeinsame HF-Bedrohung dann in die vier benannten Vektoren (Jamming/Spoofing/kinetisch/Cyber) auf und berichtet für jeden Vektor die Kurve der graceful degradation des nutzbaren PNT S_v(x)=1-Prod_i(1-a_i(1-clamp(susceptibility_i,v·x,0.1))) — VALIDATED: Das Monte-Carlo je Schicht mit festem Seed konvergiert gegen diese geschlossene Form; Jamming ist der schärfste Vektor für die korrelierte HF-Basislinie, und die HF-immune Inertialschicht ist der entscheidende Überlebende. Kein zertifiziertes Produkt zur Navigationsverfügbarkeit.

conflict-resilience.toml

Art conflict-resiliencenicht per Name einem Registermodul zugeordnet

Konfliktresilienz bei mehrschichtigem PNT (Paper P7).

kind = "conflict-resilience"
trials = 4000
seed = 20260709
primary_layer = 0
min = 0.0
max = 1.0
steps = 11
values = [0.0, 0.2, 0.4, 0.6, 0.8, 0.95]

In Kshana Studio öffnen · Auf GitHub ansehen

constellation-design#

Konstellationsentwurf im großen Maßstab: Walker-DELTA- und Walker-STAR-Muster in der Konvention i: T/P/F (Knoten verteilt über 360 oder 180 Grad, Abstand in der Ebene 360*P/T, Phasenversatz zwischen den Ebenen 360*F/T), explizite Elementlisten und Mehrschalen-Entwürfe, mehrere Konstellationen in einem Lauf, um die Erde, den Mond, den Mars oder einen anderen Planeten, Pluto oder einen großen Mond mit den Konstanten im Modul body (denselben, die die Arten solar-system und body-pnt verwenden). VOREINSTELLUNGEN aus veröffentlichten nominalen Elementen: gps-baseline und gps-expandable (die 24 Slots und die sechs vorderen/hinteren erweiterbaren Paare des GPS Standard Positioning Service Performance Standard, 5. Ausgabe 2020, Tabellen 3.2-1 bis 3.2-3), galileo (Walker 24/3/1 bei 29.599,801 km und 56 Grad, Galileo Open Service Service Definition Document Ausgabe 1,1 Tabellen 1 und 23), beidou und beidou-meo (Walker 24/3/1 bei 21.528 km und 55 Grad plus drei geostationäre Satelliten bei 80, 110,5 und 140 Grad Ost und drei geneigte geosynchrone Satelliten bei 55 Grad, BeiDou Open Service Performance Standard 3,0 Abschnitt 4,1; die MEO-Phase und die Kreuzung der geneigten geosynchronen Bahn bei 118 Grad Ost werden modelliert, weil die Norm sie nicht angibt) und glonass (24/3/1 bei 19.100 km und 64,8 Grad aus der Slot-Formel des GLONASS Interface Control Document Ausgabe 5,1 Abschnitt 5,2). ABDECKUNG UND DILUTION OF PRECISION: über einem Breiten-/Längengitter und einem abgetasteten Fenster mit Elevationsmaske die Zahl der sichtbaren Satelliten, GDOP, PDOP, HDOP und VDOP je Zelle, die Verfügbarkeit (eine Lösung mit PDOP höchstens an einer Schwelle, standardmäßig 6) je Zelle, global (flächengewichtet) und am schlechtesten Standort, mit einer Empfängeruhr je Konstellation, sofern nicht clock = "common". Es skaliert auf Tausende von Satelliten: Sichtbarkeit ist ein Skalarprodukt gegen den Abdeckungs-Halbwinkel jedes Satelliten, und Satelliten werden in jeder Epoche nach der Breite des Subsatellitenpunkts in Bänder eingeteilt, sodass eine Gitterzeile nur die prüft, die in Sicht sein können; der Bericht zählt die eingesparten Paartests. Das JSON enthält die Gitterkarten und heruntergetaktete Bodenspuren je Satellit. VALIDATED: der Walker-Generator gegen Tabelle 23 des Galileo OS SDD und die Slot-Formel des GLONASS-ICD, die GPS-Voreinstellung gegen die veröffentlichte Spalte der Äquatorüberquerung in Tabelle 3.2-1 des SPS PS, und die globale HDOP-Verteilung der GPS-Basislinie gegen Anhang B des SPS PS (Median 0,94, 95% 1,25, Mittel 0,96, Toleranz 0,03). MODELLED: Zweikörperbahnen mit optionalem säkularem J2, ein kugelförmiger Körper, nur geometrische Sichtbarkeit (keine Signalleistung, Gesundheit oder Gelände), und die Relativphase zwischen verschiedenen Systemen, die keine Momentaufnahme eines realen Datums ist.

constellation-multi-gnss-coverage.toml

Art constellation-designnicht per Name einem Registermodul zugeordnet

Multi-Konstellations-Abdeckung: die vier globalen Satellitennavigationssysteme (GNSS) zusammen, als Karte der sichtbaren Satelliten, der Dilution of Precision (DOP) und der Verfügbarkeit über die ganze Erde für einen Tag.

kind = "constellation-design"
body = "earth"
duration_s = 86164.0
step_s = 900.0
mask_deg = 10.0
pdop_threshold = 6.0
grid_step_deg = 10.0
clock = "per-constellation"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pnt-mega-shell.toml

Art constellation-designnicht per Name einem Registermodul zugeordnet

Eine Mega-Konstellation für Positionierung, Navigation und Zeitgebung (PNT) in niedriger Erdumlaufbahn: 5.000 Satelliten in vier Walker-Schalen, bewertet als Karte der Abdeckung und der Dilution of Precision (DOP).

kind = "constellation-design"
body = "earth"
duration_s = 7200.0
step_s = 600.0
mask_deg = 20.0
pdop_threshold = 3.0
grid_step_deg = 10.0
clock = "common"

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-relay-constellation.toml

Art constellation-designnicht per Name einem Registermodul zugeordnet

Eine Mond-Relais- und Navigationskonstellation: Satelliten in elliptischen eingefrorenen Mondumlaufbahnen (ELFO) plus eine kreisförmige Schale in niedriger Mondumlaufbahn, bewertet als Karte der Abdeckung und der Dilution of Precision (DOP) über den ganzen Mond für einen Tag.

kind = "constellation-design"
body = "moon"
duration_s = 86400.0
step_s = 1800.0
mask_deg = 10.0
pdop_threshold = 6.0
grid_step_deg = 10.0
clock = "common"

In Kshana Studio öffnen · Auf GitHub ansehen

contact-schedule#

Bodenkontaktplanung für mehrere Satelliten über mehreren Stationen: scheinbare Zugriffsfenster (SGP4, erdfestes Bezugssystem IAU 2006/2000A, Refraktion nach ITU-R P.834, Lichtlaufzeit), das DVB-S2-ACM-Datenvolumen jedes Überflugs (Schwellen nach ETSI EN 302 307-1 Tabelle 13) und ein konfliktfreier Zeitplan (ein Satellit je Antenne mit einer Wendezeit, eine Station je Satellit, prioritätsgewichtete Lieferung, begrenzt auf jeden Rückstand) durch einen Greedy-Algorithmus nach Grenznutzen, eine Basislinie nach dem Prinzip „wer zuerst kommt“ und ein exaktes Branch-and-Bound bei kleinen Mengen, mit der Optimalitätslücke des Greedy-Algorithmus. MODELLED.

contact-schedule.toml

Art contact-schedulenicht per Name einem Registermodul zugeordnet

Planung von Bodenkontakten: drei illustrative Satelliten über drei illustrativen Stationen für 12 Stunden. Der Lauf gibt jedem Überflug Satellit–Station sein Zugriffsfenster und das Datenvolumen an, das adaptive Codierung und Modulation (ACM) nach DVB-S2 darin bewegen kann (Schwellen nach ETSI EN 302 307-1 Tabelle 13 plus eine Implementierungsmarge). Dann baut er einen konfliktfreien Kontaktplan, in dem jede Antenne jeweils einen Satelliten bedient, mit einer Umrüstzeit zwischen Kontakten, und jeder Satellit jeweils zu einer Station sendet. Die Lieferung wird nach Priorität gewichtet und auf den Rückstand jedes Satelliten begrenzt. Drei Pläne werden nebeneinander berichtet: ein Greedy-Verfahren nach Grenznutzen, eine First-come-Basislinie und, wenn die Kandidatenmenge klein ist, das exakte Optimum, mit der Optimalitätslücke des Greedy-Verfahrens.

kind = "contact-schedule"
epoch = [2024.0, 1.0, 1.0, 0.0, 0.0, 0.0]
duration_hours = 12.0
step_s = 30.0
refraction = true
light_time = true
frequency_ghz = 8.2
eirp_dbw = 7.0

In Kshana Studio öffnen · Auf GitHub ansehen

earth-gnss-lunar#

Erd-GNSS-Empfang in Monddistanz, die Schwachsignalschicht, die das Papier zur Konfliktresilienz nennt und für die die Engine kein Modell hatte. Ein GNSS-Satellit richtet seine Antenne auf die Erde; ein Empfänger nahe dem Mond sitzt etwa das Fünfzehnfache des Bahnradius entfernt, sodass drei Dinge zugleich zuschlagen. Die Erde VERDECKT DIE HAUPTSTRAHLRICHTUNG: Aus 26.560 km spannt sie einen Halbwinkel von 13,9 deg auf, sodass jeder zum Mond gerichtete Strahl den Sender mindestens so weit vom Nadir entfernt verlassen muss, was die Spitze der Keule beseitigt, bevor irgendeine Leistung berechnet wird. Was bleibt, sind der HAUPTKEULENRAND UND DIE NEBENKEULEN, das Regime, in dem die LuGRE-Nutzlast 2025 tatsächlich arbeitete. Und die Freiraumdämpfung beträgt etwa 208 dB bei L1, grob 25 dB mehr, als ein terrestrischer Nutzer zahlt. Der Bericht gibt eine Zeile je Satellit aus (Winkel zur Hauptstrahlrichtung, Erdverdeckung, Entfernung, Pfaddämpfung, Sendegewinn bei diesem Winkel, empfangene Leistung, Träger-Rausch-Dichte) und aggregiert nur die Verbindungen, die die Tracking-Schwelle erfüllen. ER MELDET AUCH DIE KONDITIONIERUNG, denn sie definiert diese Schicht: Jeder sichtbare Satellit liegt vom Mond aus gesehen in einem Kegel von wenigen Grad Breite, sodass die Sichtlinien nahezu parallel sind, die Verdünnung der Genauigkeit enorm ist und eine Erd-GNSS-Lösung in Monddistanz weit eher eine Beobachtung auf ZEITGEBUNGS-Niveau als auf Positionsniveau ist. MODELLED, und das Sendediagramm ist der Grund: Der Gewinn über den Winkel ist eine gleichförmige Kreisapertur (Airy), während eine reale GPS-L1-Antenne ein Wendelantennen-Array aus zwölf Elementen mit geformter Hauptkeule und Nicht-Airy-Nebenkeulen ist. Gemessene Diagramme existieren und werden hier nicht mitgeliefert, sodass Reihenfolgen und Größenordnungen aussagekräftig sind, das dB eines einzelnen Satelliten aber nicht. Bewusst NICHT ENTHALTEN, jeweils mit der Folge, dass das Budget optimistisch ist: keine ionosphärische oder troposphärische Dämpfung auf den den Limb streifenden Strahlen, keine Polarisations-, Zeige- oder Implementierungsverluste und eine kugelförmige Erde ohne refraktive Erweiterung. Die Mondposition ist eine EINGABE (Entfernung plus inertiale Richtung) statt eines Ephemeriden-Nachschlagens, weil die geprüfte Größe die Verbindung und die Strahlgeometrie ist. Diese Zeile auf validiert hochzustufen, braucht ein gemessenes Sendediagramm und LuGRE-Normalpunkte; keines von beiden ist im Repository, und keines wird hier erfunden.

earth-gnss-lunar.toml

Art earth-gnss-lunardie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Empfang von Erd-GNSS in Mondentfernung.

kind = "earth-gnss-lunar"
altitude_km = 20180.0
inclination_deg = 55.0
planes = 6
sats_per_plane = 4
phasing_f = 2.0
epoch_s = 0.0
receiver_range_m = 384400000.0

In Kshana Studio öffnen · Auf GitHub ansehen

entry-heating#

Atmosphärischer Eintritt einer Punktmasse mit 3 Freiheitsgraden über einer rotierenden kugelförmigen Erde oder einem Mars (ballistisch oder auftriebserzeugend bei konstanter Querneigung), RK4, durch US76, eine exponentielle oder die Mars-Atmosphäre, mit konvektiver Staupunktaufheizung nach Sutton-Graves (NASA TR R-376): Spitzenverzögerung, Wärmestrom und dynamischer Druck, Wärmelast, Reichweite, eine Energieprüfung im rotierenden Bezugssystem und die geschlossene Form nach Allen-Eggers daneben. Die Spitzenverzögerung wird gegen das veröffentlichte Stardust-Nominal geprüft; die Aufheizung ist MODELLED.

entry-heating-stardust.toml

Art entry-heatingnicht per Name einem Registermodul zugeordnet

Eintritt der Stardust-Probenrückführkapsel: der veröffentlichte Fall, gegen den die Art entry-heating geprüft wird (xval/entry-stardust/PREREGISTRATION.md; tests/entry_stardust_published.rs).

kind = "entry-heating"
body = "earth"
atmosphere = "us76"
entry_interface_altitude_m = 125003.0
velocity_frame = "inertial"
entry_speed_m_s = 12900.0
flight_path_angle_deg = 8.2
latitude_deg = 41.0

In Kshana Studio öffnen · Auf GitHub ansehen

eo-coverage#

Fußabdruck der Erdbeobachtungsnutzlast und Abdeckungsgeometrie (SMAD-Raumdreieck): Erdwinkelradius, Streifenbreite, Bodenauflösung im Nadir, maximaler Off-Nadir-Zugriff, Kreisbahnperiode, J2-Knotenperiode und Bodenspurabstand am Äquator mit einem Flag für lückenlose Abdeckung, für eine Bahnhöhe, Inklination (standardmäßig sonnensynchron) und Sensor-FOV/IFOV. MODELLED Geometrie der kugelförmigen Erde (keine Radiometrie/MTF/Atmosphäre/Jitter/Glint); Knotenabstand R_e·(ω − Ω̇)·T_nodal mit säkularen J2-Raten erster Ordnung.

eo-coverage.toml

Art eo-coveragenicht per Name einem Registermodul zugeordnet

Demonstrator für Fußabdruck und Abdeckung einer Erdbeobachtungsnutzlast (SMAD-Raumdreieck).

kind = "eo-coverage"
altitude_km = 700.0
half_fov_deg = 7.5
ifov_microrad = 14.0
max_off_nadir_deg = 45.0

In Kshana Studio öffnen · Auf GitHub ansehen

eo-radiometry#

Radiometrie und Bildqualität eines Nadir-Imagers: Strahldichte einer Lambert-Szene an der Apertur, die Kameragleichung, Signal und Schrot-/Dunkel-/Auslese-/Quantisierungsrauschen und SNR; die System-MTF bei Nyquist (Beugung x Detektor x Verschmierung x Jitter), die daraus folgende relative Kantenantwort, Q = lambda F/p und die NIIRS nach GIQE Version 4 ohne MTF-Kompensation. MODELLED.

eo-radiometry.toml

Art eo-radiometrynicht per Name einem Registermodul zugeordnet

Radiometrie und Bildqualität eines Nadir-Bildgebers für eine ILLUSTRATIVE kleine Erdbeobachtungskamera (Entwurf keines Betreibers): 0,40 m Apertur, 3,6 m Brennweite (F/9), 5,5 um Pixel, aus 500 km. Der Lauf gibt das Signal-Rausch-Budget einer Szene mit 15 % Reflexion, die System-MTF bei Nyquist, die relative Kantenantwort und die NIIRS nach GIQE Version 4 an. MODELLED: Die NIIRS ist eine empirische Regression, ausgewertet an modellierten Eingaben, kein bewertetes Bild.

kind = "eo-radiometry"
altitude_m = 500000.0
focal_length_m = 3.6
aperture_m = 0.40
pixel_pitch_um = 5.5
wavelength_um = 0.65
bandwidth_um = 0.2
fill_factor = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

ephemeris#

Ephemeride und Bodenspur: einen Satelliten propagieren (TLE→SGP4 oder analytische Bahn) und seinen TEME-/GCRS-Zustand (Position + Geschwindigkeit), die ITRF-/ECEF-Position, Breite/Länge/Höhe des WGS-84-Subsatellitenpunkts und je Schritt Azimut/Elevation/Entfernung + Entfernungsrate (Doppler) der Station ausgeben. Der Satellit stammt aus einem tle oder aus einer analytischen orbit mit ihrer epoch (ein tle hat Vorrang, wenn beide angegeben sind); bei einem tle überschreibt eine epoch die eigene Epoche des TLE als t = 0.

ephemeris.toml

Art ephemerisnicht per Name einem Registermodul zugeordnet

Ephemeride & Bodenspur — „wo ist der Satellit gerade".

kind = "ephemeris"
tle = """
step_s = 30.0
duration_s = 16740.0
xp_arcsec = 0.0
yp_arcsec = 0.0
lat_deg = 49.8707
lon_deg = 8.6217

In Kshana Studio öffnen · Auf GitHub ansehen

fusion#

Gemeinsame Kalman-Sensorfusion für PNT über dieselben Hybrid-Eingaben.

fusion-pnt.toml

Art fusionnicht per Name einem Registermodul zugeordnet

Gemeinsame Sensorfusions-PNT: Ein einzelnes Kalman-Filter ist der Navigator, fusioniert die Uhren- und Inertialzustände und wird durch optische ISL-Zeitübertragung gestützt, statt unabhängige Prädiktoren zusammenzusetzen. GNSS 1,8 h verwehrt.

kind = "fusion"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = true

In Kshana Studio öffnen · Auf GitHub ansehen

fusion-pnt-coupled.toml

Art fusionnicht per Name einem Registermodul zugeordnet

Gekoppelte gemeinsame Sensorfusions-PNT: dieselben Suiten und derselbe GNSS-Ausfall wie in fusion-pnt.toml, aber der Navigator ist EIN gestapeltes Kalman-Filter über Position, Geschwindigkeit, Uhrenphase, Uhrenfrequenz und den Beschleunigungsmesser-Bias (die Tabelle [coupled]). Solange GNSS nominal ist, nimmt es Pseudoentfernungen auf, je rho = g * position + c * clock phase + noise entlang eines Sichtlinienfaktors g, sodass eine einzelne Messung Position und Uhr gemeinsam einschränkt und das Filter ihre Kreuzkovarianz führt; die erneuten Synchronisierungen durch optische Zeitübertragung während des Ausfalls sind reine Uhren-Pseudoentfernungen. Die Beschleunigungsmesser tragen hier einen konstanten Bias, den der Bias-Zustand vor dem Ausfall lernt (fusion-pnt.toml setzt die Biases auf null, weil seine Filter keinen Bias-Zustand haben). Herstellerneutral; Uhren- und Rauschparameter wie in fusion-pnt.toml, die Biases sind illustrativ. MODELLED.

kind = "fusion"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = true

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ins#

Lose und eng gekoppeltes GNSS/INS-Fehlerzustands-EKF.

automotive-urban-canyon.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Straßenfahrzeug durch eine Straßenschlucht: GNSS/INS-Koppelnavigation durch eine Unterführung und an einem Störsender am Straßenrand vorbei, gegen ein Budget auf Fahrstreifenebene.

kind = "gnss-ins"
seed = 7
threshold_m = 1.5
fix_interval_s = 1.0
sigma_pos_m = 1.0
sigma_vel_mps = 0.05
lat_deg = 48.137
lon_deg = 11.575

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ins.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Lose gekoppeltes GNSS/INS: der dreiachsige Strapdown-Navigator, geführt von einem EKF mit 15 Fehlerzuständen, der dann durch einen GNSS-Ausfall von 60 s überbrückt. Anders als das Paket inertial (ein 1-DOF-Skalar-Koppelnavigator mit einem Zurücksetzen auf die Wahrheit bei jeder Lösung) läuft hier das echte geschlossene Filter: Es lernt aus verrauschten Lösungen, solange GNSS verfügbar ist, und überbrückt die Lücke auf dem korrigierten Zustand. Der gemeldete Fehler ist das reale horizontale Residuum gegenüber der Wahrheit; jeder Sensor trägt außerdem seinen freien INS-RMS im offenen Regelkreis, sodass der Wert des Filters ausdrücklich ist.

kind = "gnss-ins"
seed = 7
threshold_m = 50.0
fix_interval_s = 1.0
sigma_pos_m = 1.0
sigma_vel_mps = 0.05
lat_deg = 45.0
lon_deg = -57.3

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ins-aviation.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Luftfahrt-GNSS/INS mit enger Kopplung: Ein Leichtflugzeug startet, steigt mit 6 Grad, geht in den Horizontalflug und fliegt eine koordinierte Kurve mit 25 Grad Querneigung (Trajektorienprofil aircraft); GNSS ist für zwei Minuten verwehrt, die die Kurve abdecken, den schwierigsten Teil einer Überbrückung, weil sich die Kurs- und Lagefehler dann in die Horizontale projizieren. Eng gekoppelt ([tight]) auf einer GPS-ähnlichen SGP4-Walker-Konstellation.

kind = "gnss-ins"
seed = 13
threshold_m = 100.0
fix_interval_s = 1.0
sigma_pos_m = 3.0
sigma_vel_mps = 0.1
lat_deg = 52.0
lon_deg = 5.0

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ins-maritime.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Maritimes GNSS/INS: ein Schiff mit 8 m/s (etwa 15,5 Knoten), das in vollen Kreisen mit 1 Grad/s kurvt, dann ein GNSS-Ausfall von fünf Minuten, auf demselben geschlossenen 15-Zustands-GNSS/INS-Filter wie gnss-ins.toml. Die Bewegung stammt aus der Trajektorienbibliothek ([trajectory], Profil figure8): langsames, gleichmäßiges Drehen, das Regime eines Schiffs statt eines Autos.

kind = "gnss-ins"
seed = 11
threshold_m = 50.0
fix_interval_s = 1.0
sigma_pos_m = 2.0
sigma_vel_mps = 0.1
lat_deg = 54.0
lon_deg = 10.0

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ins-rail.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Bahn-GNSS/INS mit enger Kopplung: Ein Zug fährt zwischen Halten mit 30 m/s durch sanfte Kurven von 20 Grad (Trajektorienprofil stop_go), passiert einen tiefen Einschnitt, in dem nur zwei Satelliten in Sicht bleiben, dann einen Tunnel von zwei Minuten. Der Empfänger ist eng gekoppelt ([tight]): Er fusioniert weiter die Pseudoentfernungen der zwei Satelliten, die er im Einschnitt noch verfolgt, wo ein lose gekoppelter Empfänger gar keine Lösung hat. Die Satelliten stammen aus einer GPS-ähnlichen SGP4-Walker-Konstellation.

kind = "gnss-ins"
seed = 12
threshold_m = 30.0
fix_interval_s = 1.0
sigma_pos_m = 2.0
sigma_vel_mps = 0.1
lat_deg = 48.0
lon_deg = 11.0

In Kshana Studio öffnen · Auf GitHub ansehen

small-uas-jammed-nav.toml

Art gnss-insnicht per Name einem Registermodul zugeordnet

Kleines unbemanntes Luftfahrzeug unter GNSS-Jamming: wie weit eine MEMS-Inertialeinheit der Klasse eines Flugcontrollers driftet, sobald der Empfänger den Lock verliert, gegenüber einer Einheit in taktischer Güte, auf demselben geschlossenen GNSS/INS-Filter wie gnss-ins.toml.

kind = "gnss-ins"
seed = 7
threshold_m = 50.0
fix_interval_s = 1.0
sigma_pos_m = 1.0
sigma_vel_mps = 0.05
lat_deg = 59.437
lon_deg = 24.745

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-sim#

Pseudoentfernungssimulation im Messraum (Klobuchar-Ionosphäre, Saastamoinen/Niell-Troposphäre) + RAIM.

gnss-sim-container-terminal-skyline.toml

Art gnss-simnicht per Name einem Registermodul zugeordnet

Pseudoentfernungen und RAIM für einen Portalhubwagen an einem Containerkai, mit Containerbrücken zur Seeseite und Containerstapeln zur Landseite: das Szenario gnss-sim unter der Horizontprofil-Voreinstellung container-terminal.

kind = "gnss-sim"
seed = 7
mask_deg = 5.0
noise_sigma_m = 1.5
multipath_m = 0.5
sat_clock_rms_m = 30.0
uere_m = 3.0
p_fa = 1.0e-5

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-sim-raim.toml

Art gnss-simnicht per Name einem Registermodul zugeordnet

GNSS-Simulation im Messbereich: Pseudoentfernungen mit ionosphärischen und troposphärischen Verzögerungen, zugeführt an Snapshot-RAIM für Schutzniveaus.

kind = "gnss-sim"
seed = 7
mask_deg = 5.0
noise_sigma_m = 1.5
multipath_m = 0.5
sat_clock_rms_m = 30.0
uere_m = 3.0
p_fa = 1.0e-5

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ssv#

MODELLED GNSS-Verfügbarkeit und Linkstärke im Space Service Volume und darüber hinaus: Für einen Nutzer auf einer Kugel (die globale Schale des ICG-Booklets) oder auf einer Kepler-Trajektorie (LEO bis Mondtransfer) zählt sie je Konstellation (GPS, GLONASS, Galileo, BDS, QZSS, NavIC) und für alle zusammen die Signale, die über einer C/N0-Schwelle nutzbar sind - Verfügbarkeit von mindestens einem und von vier Signalen, maximale Ausfalldauer, empfangenes C/N0, Verdünnung der Genauigkeit, Hauptkeulen- gegenüber Nebenkeulenverbindungen - mit einem Sendediagramm aus dem Booklet, parametrisch oder vom Nutzer geliefert, optionalen Effekten von Limb-Strahl-Ionosphäre, Plasmasphäre und Atmosphäre und einem optionalen Empfängerentwurf für schwache Signale; außerdem ein GNSS-Extended-Kalman-Filter an Bord für HEO- und Mondtransferfahrzeuge (Bahndynamik, Sonnenstrahlungsdruck, Drittkörper, Uhr) und die Relativnavigation einer Formation aus mehreren Fahrzeugen durch einfach differenzierte Pseudoentfernungen. Gegen die Tabellen des ICG-SSV-Booklets unter einer Vorregistrierung geprüft (xval/gnss-ssv)

gnss-ssv-formation-heo.toml

Art gnss-ssvnicht per Name einem Registermodul zugeordnet

Relativnavigation einer Formation aus drei Raumfahrzeugen auf der hochelliptischen Bahn der Broschüre.

kind = "gnss-ssv"
name = "HEO formation relative navigation (reduced length)"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
preset = "heo"
duration_min = 400.0
step_s = 60.0
antennas = ["booklet-high-gain-nadir", "booklet-patch-zenith"]

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ssv-heo.toml

Art gnss-ssvnicht per Name einem Registermodul zugeordnet

Eine hochelliptische Bahn durch die GNSS-Bahnen: was ein Nutzer vom Perigäum bis zum Apogäum sieht.

kind = "gnss-ssv"
name = "HEO, high-gain nadir and patch zenith antennas, parametric sidelobes, limb medium"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
pattern = "parametric"
preset = "heo"
duration_periods = 1.0
step_min = 10.0

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ssv-lunar-weak.toml

Art gnss-ssvnicht per Name einem Registermodul zugeordnet

GNSS auf einem Mondtransfer, mit einem Schwachsignal-Empfänger, der sich seine Empfindlichkeit verdient.

kind = "gnss-ssv"
name = "Lunar transfer, weak-signal receiver, parametric sidelobes"
include = ["gps", "galileo", "glonass", "bds"]
bands = ["l1", "l5"]
pattern = "parametric"
apply = "acquisition"
t_coh_s = 0.1
n_noncoherent = 100.0

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ssv-nav-lunar.toml

Art gnss-ssvnicht per Name einem Registermodul zugeordnet

GNSS-Bordnavigation auf dem Weg zum Mond: ein erweiterter Kalman-Filter allein auf Pseudoentfernungen.

kind = "gnss-ssv"
name = "Lunar transfer, onboard GNSS EKF (reduced length)"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
preset = "lunar-transfer"
duration_min = 1440.0
step_s = 300.0
antennas = ["booklet-high-gain-nadir", "booklet-patch-zenith"]

In Kshana Studio öffnen · Auf GitHub ansehen

gnss-ssv-shell.toml

Art gnss-ssvnicht per Name einem Registermodul zugeordnet

GNSS-Signalverfügbarkeit auf der oberen SSV-Schale: die globale Metrik der Broschüre, in einer Größe, die in einer Sekunde läuft.

kind = "gnss-ssv"
name = "Upper SSV shell, 20 dB-Hz (reduced size)"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
altitude_km = 36000.0
antenna = "hemisphere"
grid_levels = 2
duration_min = 4320.0

In Kshana Studio öffnen · Auf GitHub ansehen

gravity-map#

GPS-verweigerte Navigation mit Schwerefeld-Kartenabgleich: Ein Kaltatom-Gravimeter ermittelt aus der Folge von Schwereanomalien, die es durchfliegt, eine konstante INS-Drift.

gps-denied-gravity-nav.toml

Art gravity-mapnicht per Name einem Registermodul zugeordnet

60-Minuten-Benchmark zur Schwerekarten-Zuordnung ohne GPS (Quanten-Alt-PNT).

kind = "gravity-map"
nmax = 3
start_lat_deg = 10.0
start_lon_deg = 20.0
step_lat_deg = 0.06
step_lon_deg = 0.045
waypoints = 90
drift_lat_deg = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

gps-denied-gravity-nav-egm2008.toml

Art gravity-mapnicht per Name einem Registermodul zugeordnet

60-Minuten-Benchmark zur Schwerekarten-Zuordnung ohne GPS auf dem ECHTEN Schwerefeld (WP-10, RM-17).

kind = "gravity-map"
nmax = 3
start_lat_deg = 10.0
start_lon_deg = 20.0
step_lat_deg = 0.06
step_lon_deg = 0.045
waypoints = 90
drift_lat_deg = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

gravity-map-error-mc.toml

Art gravity-mapnicht per Name einem Registermodul zugeordnet

Monte-Carlo des Kartenfehlers im 60-Minuten-Benchmark zur Schwerekarte ohne GPS (WP-10, RM-15).

kind = "gravity-map"
nmax = 3
start_lat_deg = 10.0
start_lon_deg = 20.0
step_lat_deg = 0.06
step_lon_deg = 0.045
waypoints = 90
drift_lat_deg = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

gravity-map-nav.toml

Art gravity-mapnicht per Name einem Registermodul zugeordnet

Szenario zur Quanten-Navigation mit Schwerekarten-Zuordnung (Alt-PNT ohne GPS).

kind = "gravity-map"
nmax = 3
start_lat_deg = 12.0
start_lon_deg = 24.0
step_lat_deg = 0.18
step_lon_deg = 0.13
waypoints = 12
drift_lat_deg = 0.55

In Kshana Studio öffnen · Auf GitHub ansehen

holdover-test#

MODELLED Holdover-Test eines Zeitgebungssystems, bewertet anhand eines Zeitfehlerprotokolls, das der BETREIBER liefert (ein linuxptp-Protokoll von ptp4l, phc2sys oder ts2phc, ein chrony-Tracking- oder Statistikprotokoll, ein TICC-, TimeLab- oder RINEX-Uhrenprotokoll oder Paare aus time_s,time_error_ns). Der Test hat vier Schritte, und Kshana führt keinen davon aus: eine eingerastete BASISLINIE, GNSS ENTFERNT durch den Betreiber (das Antennenkabel oder der Simulatorausgang; Kshana sendet nichts und steuert nichts an) zu einem angegebenen Zeitpunkt, HOLDOVER auf dem eigenen Oszillator des Systems und WIEDERHERSTELLUNG, nachdem der Betreiber GNSS zu einem zweiten angegebenen Zeitpunkt wiederherstellt. Das Protokoll wird an diesen beiden Zeitpunkten geteilt. Basislinie: Zeitfehlerstatistik und die für eine eingerastete Uhr geschriebenen ITU-T-Masken. Holdover: Statistik, der Bruchteil des Frequenzversatzes, den das System gehalten hat (eine Ausgleichsgerade nach kleinsten Quadraten), die für Holdover oder eine autonome Uhr geschriebenen Masken, die ePRTC-A-Holdover-Hüllkurve aus der angegebenen Dauer im eingerasteten Zustand und die Zeit bis zur Überschreitung jedes Zeitfehlerbudgets. Wiederherstellung: ob und wann |TE| in ein angegebenes Band gelangte und dort blieb, der Spitzenwert und der größte Sprung. Jeder Grenzwert ist aus einer öffentlichen ITU-T-Tabelle übertragen (die Masken für Telekom-Zeitgebung); die Formulierung lautet 'gegen die Maske gemessen', und die beiden Zeitpunkte sind die Angabe des Betreibers, nicht verifiziert. Ein für eine Maske zu kurzes Protokoll ist INCOMPLETE, nie extrapoliert. Siehe docs/TIMING-HIL.md.

holdover-test-example.toml

Art holdover-testnicht per Name einem Registermodul zugeordnet

Holdover-Test, Beispiel zur Einspeisung: eine Zeitfehleraufzeichnung, bewertet von der Art holdover-test („Antenne abziehen, Holdover bewerten“). Die Aufzeichnung wird an den zwei Zeitpunkten geteilt, die der BETREIBER angibt, hier GNSS entfernt bei 600 s und wiederhergestellt bei 2.400 s, und jeder Schritt wird an den dafür geschriebenen Masken nach ITU-T gemessen.

kind = "holdover-test"
masks = ["prtc-a", "eprtc-a-holdover"]
gnss_removed_s = 600.0
gnss_restored_s = 2400.0
locked_duration_days = 5.0
recovery_band_ns = 100.0
recovery_dwell_s = 60.0
samples = [

In Kshana Studio öffnen · Auf GitHub ansehen

holdover-test-ptp4l.toml

Art holdover-testnicht per Name einem Registermodul zugeordnet

Holdover-Test eines linuxptp-Logs: dieselben vier Schritte wie in holdover-test-example.toml, mit der Aufzeichnung, gelesen aus einem ptp4l-Servo-Log über [series.clock_log] (Format "ptp4l", Versätze in ns, die eigenen Zeitstempel des Daemons, hier 5 s auseinander).

kind = "holdover-test"
masks = ["prtc-a", "eprtc-a-holdover"]
gnss_removed_s = 600.0
gnss_restored_s = 2400.0
locked_duration_days = 5.0
recovery_band_ns = 100.0
recovery_dwell_s = 60.0
format = "ptp4l"

In Kshana Studio öffnen · Auf GitHub ansehen

hybrid#

Hybrid-PNT-Abschlussszenario: Uhr + IMU + Zeitübertragungsstützung.

hybrid-pnt.toml

Art hybridnicht per Name einem Registermodul zugeordnet

Hybrid-PNT-Abschlussszenario: reine Quanten-Suite (optische Uhr + Kaltatom-IMU + Stützung durch optische ISL-Zeitübertragung) gegenüber rein klassischer Suite (CSAC + IMU in Navigationsgüte + HF). GNSS 1,8 h verwehrt.

kind = "hybrid"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = true

In Kshana Studio öffnen · Auf GitHub ansehen

hybrid-optical-rf#

MODELLED heterogene optische + HF-PNT-Gesamtgütezahl (P5): setzt zusammen das optische Zweiwege-Link-Budget bei 1550 nm (photonenbegrenzte Zweiwege-Entfernungsmessung mit CRLB σ_τ/√N und Beugungs-Footprint λ/D·Entfernung), ein modalitätsübergreifendes RAIM-Schutzniveau nach Lösungstrennung (Position UND Zeit), das die lockere HF- und die straffe optische Lösung mit unterschiedlichen Kovarianzen fusioniert, die optische Klarhimmel-Verfügbarkeit von N Stationen (unabhängige Vereinigung 1−Π(1−a_i) und eine räumlich korrelierte Variante), eine optisch↔HF-Zustands-/Kovarianzübergabe mit einem BEWIESEN bitkontinuierlichen (sprungfreien) Mittelwert und einem NEES-χ²-Konsistenztor sowie einen gemeinsamen Score P(verfügbar UND präzisionstauglich UND integritätsgesichert) mit Behandlung von Korrelationen. VALIDATED geschlossene Form: die Entfernungs-CRLB, der Beugungs-Footprint, das χ²-Schutzniveau-Quantil, die Vereinigungskombinatorik, die Mittelwertstetigkeit der Übergabe + das NEES-Tor und das gemeinsame unabhängige Produkt. MODELLED: die optischen Verlustzuweisungen, die σ-Größen von HF und Optik, die Eingaben der Wolkenklimatologie, die Korrelationen und das P_HMI-Budget. Kein zertifiziertes Verfügbarkeits-/Integritätsprodukt.

hybrid-optical-rf.toml

Art hybrid-optical-rfnicht per Name einem Registermodul zugeordnet

Heterogene optische + HF-PNT: gemeinsame Verfügbarkeit / Präzision / Integrität (P5).

kind = "hybrid-optical-rf"
wavelength_nm      = 1550.0
tx_power_w         = 1.0e-3
tx_aperture_m      = 0.85
rx_aperture_m      = 0.85
range_km           = 384000.0
pulse_rms_ps       = 50.0
integration_s      = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

hybrid-ukf#

Hybrider eng gekoppelter 17-Zustands-GNSS/INS-UKF aus Quanten- und klassischer Technik (MODELLED): 15 INS-Fehlerzustände + eine aus CAI abgeleitete Beschleunigungs-Bias-Korrektur + eine 2-Zustands-Uhr (Phase + Frequenz) aus der Uhren-Engine mit q-Parametern, angetrieben vom eingegrenzten CAI-Fehlermodell. Die Gütezahl ist die Selbstkonsistenz des Filters (NEES + Innovationsweißheit gegen χ²-Grenzen) — eine Aussage zur Selbstkonsistenz, KEINE Genauigkeitsgarantie für die reale Welt. Nur Simulation; kein TRL>3, kein Flugerbe, keine externe Validierung.

hybrid-ukf.toml

Art hybrid-ukfnicht per Name einem Registermodul zugeordnet

Eng gekoppelter GNSS/INS-UKF mit 17 Zuständen, hybrid aus Quanten- und klassischen Sensoren (MODELLED).

kind = "hybrid-ukf"
seed = 1771
speed_m_s = 100.0
sigma_pr_m = 1.0
sigma_rr_mps = 0.05
consistency_seeds = 24
q_factor = 1.0
r_factor = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

impairment-eval#

Testumgebung zur Bewertung maschinellen Lernens bei der Erkennung von HF-Beeinträchtigungen (13494): Erzeugen eines beschrifteten, parametergestützten SYNTHETISCHEN Korpus (nominal/jamming/spoof-time/spoof-position/multipath), Bewerten eines Detektors (energy|agc|sqm|parity|fused) mit dem detektorunabhängigen Harness und Ausgeben von AUC/ROC/Konfusion + Pd je Klasse bei einer Ziel-Pfa sowie der Optimismuslücke zwischen In- und Out-of-Distribution. Nur MODELLED Betriebskennlinien — nie Feld-/IQ-Daten, kein Urteil gut/schlecht.

impairment-eval.toml

Art impairment-evaldie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Testumgebung zur Evaluierung der Erkennung von HF-Beeinträchtigungen durch maschinelles Lernen (Demonstrator ESA AO/1-13494).

kind = "impairment-eval"
seed = 42
n_per_class = 200
meas_noise = 0.6
detector = "fused"
target_pfa = 0.05
shift_severity_scale = 0.5
optimism_tol = 0.05

In Kshana Studio öffnen · Auf GitHub ansehen

inertial#

Inertiale 1-DOF-Koppelnavigation während eines GNSS-Ausfalls.

imu-deadreckoning.toml

Art inertialnicht per Name einem Registermodul zugeordnet

Koppelnavigation während eines GNSS-Ausfalls: Kaltatom-Quantenbeschleunigungsmesser gegenüber Navigationsgüte. Bias = Residuum nach der GNSS-Kalibrierung = veröffentlichte Bias-Stabilität; q_va = (Rausch-Wurzel-PSD)^2.

kind = "inertial"
seed = 42
threshold_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "cold-atom-quat"
provenance = "Exail hybrid quantum accelerometer triad: bias stability 6e-8 g = 5.88e-7 m/s^2 after 24 h (Templier et al., Science Advances 2022, arXiv:2209.13209); noise 22 ug/sqrtHz = 2.16e-4 (m/s^2)/sqrtHz; laboratory maturity, not deployed"

In Kshana Studio öffnen · Auf GitHub ansehen

quantum-cai-coast.toml

Art inertialnicht per Name einem Registermodul zugeordnet

Quanten-Voreinstellung: ein Beschleunigungsmesser mit Kaltatom-Interferometer (CAI), aus seiner Interferometerphysik aufgebaut, gegenüber einem Quarz-Beschleunigungsmesser in Navigationsgüte während eines GNSS-Ausfalls. Eine eindimensionale Koppelnavigations-Überbrückung: 10 Minuten GNSS, dann 110 Minuten verwehrt.

kind = "inertial"
seed = 20261013
threshold_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "cold-atom-interferometer"
provenance = "Cold-atom (Rb-87 D2) interferometric accelerometer: q_va derived from the [accel_quantum.cai] parameters, a bracket in the GAIN/MAIUS literature range (Freier et al. arXiv:1512.05660; Becker et al. Nature 2018); residual bias 5.88e-7 m/s^2 = the 6e-8 g bias stability of a laboratory hybrid quantum accelerometer (Templier et al., Science Advances 2022, arXiv:2209.13209). Laboratory maturity, not deployed."

In Kshana Studio öffnen · Auf GitHub ansehen

ins-trn-coast#

INS/TRN-Auslauffehlermodell: Positionsfehler gegen Auslaufdauer, aufgebaut aus IMU-Koeffizienten statt als angenommene Driftrate durchgefahren. Fünf Wachstumsbeiträge — Beschleunigungsmesser-Bias, Kreisel-Bias-Neigung über die Schwerkraft, Geschwindigkeits-Random-Walk, Winkel-Random-Walk und Skalenfaktor gegen die zurückgelegte Strecke — jeweils fortgeschrieben durch ein inertiales Fehlermodell mit neun Zuständen in lokaler Horizontebene mit Schuler-Rückkopplung bei einer angegebenen Breite und Höhe (die führenden Gesetze für kurzes Auslaufen t², t³, t^1,5, t^2,5 und t¹/t² werden daneben ausgegeben) und kombiniert nach einer ANGEGEBENEN Regel (standardmäßig Wurzel aus der Quadratsumme, oder lineare Summe, oder deterministische Summe mit stochastischer Quadratsummenwurzel; alle drei werden bei jedem Lauf berechnet, sodass die Wahl sichtbar ist statt vergraben). Die Auslaufdauern, die vom Aufrufer vorgegebene Positionsschwellen erreichen (standardmäßig 10 m und 50 m), werden durch die vorhandene Bisektion der Engine gefunden, jeweils mit einer Aufschlüsselung je Beitrag, die die dominante Quelle nennt, und das Überschreiten jedes einzelnen Beitrags wird zusätzlich algebraisch invertiert, sodass beide übereinstimmen. Ein Modus der geländebezogenen Navigation begrenzt das Auslaufen mit periodischen Positionsfixes und gibt das größte Fixintervall aus, das jede Schwelle hält; ein reiner Positionsfix lässt Geschwindigkeitsfehler und Neigung über den Fix hinweg bestehen, sodass er das Auslaufen nicht bei jeder Fixrate begrenzt, und der Bericht sagt das, statt eine Null auszugeben. MODELLED: Die Koeffizienten der IMU-Klasse sind repräsentative Bandwerte, kein Datenblatt, und das Residuum des Geländefixes ist eine Eingabe. Eine nicht erreichte Schwelle wird als null mit einem Status ausgegeben, nie als Null. Kein zertifiziertes Leistungsprodukt für Trägheitsnavigation.

ins-trn-coast.toml

Art ins-trn-coastnicht per Name einem Registermodul zugeordnet

INS/TRN-Fehlermodell der Überbrückung — Positionsfehler über der Überbrückungsdauer und die Überbrückungsdauern, bei denen er 10 m und 50 m überschreitet.

kind = "ins-trn-coast"
imu_grade = "navigation"
speed_m_s = 250.0
combination = "rss"
crossing_thresholds_m = [10.0, 50.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "position-only"

In Kshana Studio öffnen · Auf GitHub ansehen

maritime-port-approach-coast.toml

Art ins-trn-coastnicht per Name einem Registermodul zugeordnet

Maritime Hafenanfahrt mit gestörtem GNSS: wie lange ein Inertialnavigationssystem (INS) ein Schiff innerhalb des Genauigkeitsbudgets der Hafenanfahrt hält, sobald das globale Satellitennavigationssystem (GNSS) verloren ist.

kind = "ins-trn-coast"
imu_grade = "navigation"
speed_m_s = 6.17
combination = "rss"
crossing_thresholds_m = [10.0, 100.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "none"

In Kshana Studio öffnen · Auf GitHub ansehen

rail-tunnel-coast.toml

Art ins-trn-coastnicht per Name einem Registermodul zugeordnet

Überbrückung im Bahntunnel: wie lange das Inertialnavigationssystem (INS) eines Zugs ihn in einem Budget zur Gleisunterscheidung hält, ohne globales Satellitennavigationssystem (GNSS) im Tunnel.

kind = "ins-trn-coast"
imu_grade = "tactical"
speed_m_s = 44.4
combination = "rss"
crossing_thresholds_m = [2.0, 20.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "none"

In Kshana Studio öffnen · Auf GitHub ansehen

integrity#

Snapshot-/Lösungstrennungs-/ARAIM-RAIM mit HPL/VPL und einem Stanford-Diagramm.

araim-gps-galileo.toml

Art integritynicht per Name einem Registermodul zugeordnet

Verfügbarkeit von ARAIM mit zwei Konstellationen: GPS + Galileo, ausgewertet mit der erweiterten ARAIM-Engine, einschließlich der konstellationsweiten Fehlerhypothese (araim_dual).

kind = "integrity"
mask_deg = 5.0
sigma_uere_m = 0.75
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0
araim_dual = true

In Kshana Studio öffnen · Auf GitHub ansehen

integrity-harbour-approach.toml

Art integritynicht per Name einem Registermodul zugeordnet

ARAIM-Verfügbarkeit für ein Schiff bei der Hafeneinfahrt: die Art integrity mit einem Nutzer an einem Bodenstandort (user_site) unter der Horizontprofil-Voreinstellung harbour-approach.

kind = "integrity"
seed = 7
mask_deg = 5.0
sigma_uere_m = 1.0
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0

In Kshana Studio öffnen · Auf GitHub ansehen

integrity-raim.toml

Art integritynicht per Name einem Registermodul zugeordnet

GNSS-Integrität (RAIM): Verfügbarkeit über einer GPS-ähnlichen Konstellation.

kind = "integrity"
seed = 7
mask_deg = 5.0
sigma_uere_m = 1.0
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0

In Kshana Studio öffnen · Auf GitHub ansehen

jamming#

Jamming per Link-Budget: J/S → effektives C/N₀ → Verlust der Aufschaltung.

jamming-demo.toml

Art jammingdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

HF-Jamming: ein bodengestützter Breitband-Jammer, der einem nahen Empfänger GNSS verwehrt.

kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 30.0
duration_s = 1800.0
lat_deg = 52.0
lon_deg = 4.0

In Kshana Studio öffnen · Auf GitHub ansehen

jamming-harbour-approach-skyline.toml

Art jammingdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Ein Schiff bei der Hafeneinfahrt unter einem Jammer an Land, mit den Kaigebäuden voraus, die die tiefen Satelliten in dieser Richtung wegnehmen: das Szenario jamming unter der Horizontprofil-Voreinstellung harbour-approach.

kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 60.0
duration_s = 21600.0
lat_deg = 59.80
lon_deg = 24.90

In Kshana Studio öffnen · Auf GitHub ansehen

maritime-strait-jamming.toml

Art jammingdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Maritimes GNSS-Jamming: ein landgestützter oder schiffsgestützter Breitbandjammer, der einem Schiff bei der Fahrt über offenes Wasser das globale Satellitennavigationssystem (GNSS) verwehrt.

kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 30.0
duration_s = 1800.0
lat_deg = 59.80
lon_deg = 24.90

In Kshana Studio öffnen · Auf GitHub ansehen

launch-window#

Zweikörper-Start- und Aufstiegsgeometrie: Startazimut(e) (sin Az = cos i / cos lat), minimal erreichbare Inklination, Kreisbahngeschwindigkeit, der ostwärtige Bonus der Erdrotation, Dogleg-Ebenenwechsel-Δv, wenn die Zielinklination unter der Breite des Startplatzes liegt, und die Zahl der täglichen Startgelegenheiten. MODELLED Geometrie der kugelförmigen Erde (keine Korrektur durch das Geschwindigkeitsdreieck der rotierenden Erde, kein Modell der Aufstiegs-/Widerstandsverluste).

launch-window.toml

Art launch-windownicht per Name einem Registermodul zugeordnet

Demonstrator für Startfenster & Aufstiegsgeometrie (Missionsanalyse, Stufe Trade-off-Studie).

kind = "launch-window"
site_lat_deg = 28.5
target_inclination_deg = 51.6
altitude_km = 400.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-navmsg#

LEO-Navigationsnachricht: die ausgesendete Ephemeride und Uhr eines Satelliten für Positionierung, Navigation und Zeitgebung im niedrigen Erdorbit (LEO), für jede Bahn, jeden Träger und jedes Modell, mit optionalen benannten Voreinstellungen (Xona Pulsar, Iridium, Starlink, CentiSpace, ein repräsentatives C-Band-System, das ATOMIC-Nulluhr-Modell, Celeste IOD). INHALT: Hilfsdaten (SVID, Datenausgabestand, Band, Signalzustand), Synchronisation (Woche, Wochensekunde, ein Uhrenpolynom zweiter Ordnung af0-af2 um toc), Ephemeride in einem von vier Modellen -- dem 16-Parameter-Kepler-Satz des Galileo OS SIS ICD; diesem Satz plus Korrekturpolynomen in Flugrichtung, quer zur Flugrichtung und radial; dem 22-Parameter-Modell nach Liu et al. 2025; einem ECEF-Polynom ohne Uhrenterme (ATOMIC-Nulluhr) -- und weitere Dienste (ein ausgesendeter Klobuchar-Satz, NeQuick-G ai0-ai2 mit dem effektiven Ionisationsniveau und Parameter von Systemzeit zu UTC mit der Schaltsekundenlogik des ICD). FITTER: eine Wahrheitsbahn, integriert mit zonaler J2-J6- oder EGM2008-Schwere bis zum gewählten Grad und mit Luftwiderstand, und eine mit Seed erzeugte freie oder gesteuerte Uhr; Levenberg-Marquardt-Anpassung des Kepler-Satzes auf nichtsingulären Elementen, dann lineare Korrekturpolynome nach kleinsten Quadraten; Uhr angepasst abzüglich des relativistischen Terms, den der Nutzer hinzufügt. ANALYSEN: fit-interval-trade (Signal-in-Space-Entfernungsfehler, SISRE, mit global gemittelten Gewichten für die Bahnhöhe, gegen Anpassungsintervall und Aktualisierungsperiode, nur Bahn und mit Uhr), model-comparison (vier Modelle, Parameterzahl, codierte Bits und die Anpassung von Kshana bei den Höhen von Liu et al. neben den veröffentlichten Werten), midpass-update (der höchste Überflug über einem Nutzer, der Sprung von Position, Uhr und Nutzerentfernung bei jedem Nachrichtenwechsel, der Sprung bei schlechtester Geometrie, PASS/FAIL gegen eine Kontinuitätsschwelle), encode-decode (das eigene dokumentierte Binärframe von Kshana mit CRC-24Q, ein Quantisierungsbudget von je einem halben Schritt pro Feld, eine Prüfung eines beschädigten Frames, ein Export und Import von Datensätzen im RINEX-4-Stil, bezeichnet als Kshana-Erweiterung, und eine CSV-Tabelle). VALIDATED: die SISRE-Gewichte gegen die veröffentlichte MEO/GEO-Tabelle (Montenbruck et al. 2018); der Galileo-Nutzeralgorithmus gegen RTKLIB auf realen Galileo-Broadcast-Ephemeriden; CRC-24Q gegen seinen Katalog-Prüfwert und den RTCM-1005-Beispielframe. MODELLED: Jede Anpassungs- und SISRE-Zahl ist ein Darstellungsfehler gegen eine von Kshana integrierte Wahrheit (kein Bahnbestimmungs- oder Vorhersagefehler); der Vergleich mit Liu et al. verwendet andere Bahnen; die Codierungs- und Textformate sind die eigenen von Kshana.

leo-navmsg-celeste-iod.toml

Art leo-navmsgnicht per Name einem Registermodul zugeordnet

Voreinstellung ESA Celeste In-Orbit-Demonstration (IOD): das eine Szenario, das Material verwendet, das beim LEO-PNT-Workshop des ESA Navigation Innovation and Support Programme (NAVISP) 2026 vorgestellt wurde. Halten Sie es aus einem Release zurück, indem Sie diese Datei und src/leo_navmsg/presets/celeste_iod.rs löschen (siehe den Kopf dieser Datei).

kind = "leo-navmsg"
name = "Celeste IOD message (workshop preset)"
seed = 15
preset = "celeste-iod"
analysis = ["encode-decode", "fit-interval-trade"]
csv_schema = "celeste-iod"
span_s = 1800
fit_intervals_s = [60, 120, 300, 600, 900]

In Kshana Studio öffnen · Auf GitHub ansehen

leo-navmsg-encode-decode.toml

Art leo-navmsgnicht per Name einem Registermodul zugeordnet

LEO-Navigationsnachricht: die binäre Kodierung von Kshana, ihr Quantisierungsbudget und die Exporte im RINEX-Stil und als CSV.

kind = "leo-navmsg"
name = "LEO message encode and decode"
seed = 14
analysis = ["encode-decode"]
altitude_km = 550.0
inclination_deg = 97.6
gravity_degree = 20
model = "kepler-rac"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-navmsg-fit-interval-trade.toml

Art leo-navmsgnicht per Name einem Registermodul zugeordnet

LEO-Navigationsnachricht: Signal-in-Space-Entfernungsfehler (SISRE) gegenüber dem Anpassungsintervall.

kind = "leo-navmsg"
name = "LEO message fit-interval trade"
seed = 11
analysis = ["fit-interval-trade"]
altitude_km = 550.0
inclination_deg = 97.6
gravity_degree = 20
cd_area_over_mass = 0.005

In Kshana Studio öffnen · Auf GitHub ansehen

leo-navmsg-midpass-update.toml

Art leo-navmsgnicht per Name einem Registermodul zugeordnet

LEO-Navigationsnachricht: eine Nachrichtenaktualisierung mitten in einem Überflug, und ob der Nutzer einen Sprung sieht.

kind = "leo-navmsg"
name = "LEO message mid-pass update"
seed = 13
analysis = ["midpass-update"]
altitude_km = 550.0
inclination_deg = 97.6
gravity_degree = 20
model = "kepler-rac"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-navmsg-model-comparison.toml

Art leo-navmsgnicht per Name einem Registermodul zugeordnet

LEO-Navigationsnachricht: vier Ephemeridenmodelle auf einer Bahn und die Tabelle SISRE gegenüber Höhe von Liu et al. 2025.

kind = "leo-navmsg"
name = "LEO message model comparison"
seed = 12
analysis = ["model-comparison"]
altitude_km = 550.0
inclination_deg = 97.6
gravity_degree = 20
model = "kepler-rac"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pass#

LEO-Überflug und Link-Budget, Band für Band, für LEO-PNT (Positionierung, Navigation und Zeitgebung aus dem niedrigen Erdorbit), systemunabhängig: ein Nutzer (am Boden, auf See, in der Luft oder in Gebäuden, ruhend oder bewegt) und ein oder mehrere LEO-Satelliten aus einem DESIGNED PASS (eine Kreisbahn, so gelegt, dass der Nutzer zu einer gewählten Zeit einen Überflug mit einer gewählten maximalen Elevation sieht, auf Wunsch sonnensynchron), expliziten ELEMENTS, einem TLE (Zwei-Zeilen-Elementsatz) über das SGP4 der Engine oder einer WALKER-Konstellation, aufgebaut vom Code für den Konstellationsentwurf (die höchsten Überflüge werden berichtet). Bänder stammen aus einer benannten Voreinstellung (generisches Multiband UHF/L/S/C, generisches C-Band, Xona Pulsar X1/X5, Iridium STL, Starlink als reines Doppler-Gelegenheitssignal, CentiSpace und eine optionale Celeste-IOD-Voreinstellung mit der Kennzeichnung WORKSHOP) oder werden im Szenario selbst angegeben; jede Voreinstellung gibt an, ob ihre Zahlen PUBLIC (mit URL), REPRESENTATIVE oder WORKSHOP sind. Je Satellit, Band und Epoche: Elevation, Azimut, Entfernung, Entfernungsrate und Entfernungsbeschleunigung; Freiraumdämpfung; EIRP und der Antennengewinn des Satelliten (isoflux, Gauß-Keule oder flach); Antennengewinn des Nutzers über der Elevation (Patch, halbkugelförmig oder isotrop); Gasdämpfung (ITU-R P.676-10 Anhang 2), Regendämpfung (Koeffizienten nach ITU-R P.838-3 und das Verfahren nach P.618-14, aus Regenrate und Regenhöhe), troposphärische Szintillation (ITU-R P.618-14 Abschnitt 2.4.1), Gebäudeeindringdämpfung für einen Nutzer in Gebäuden (ITU-R P.2109-2), Polarisationsfehlanpassung, Systemrauschtemperatur und C/N0 (Träger-Rauschleistungsdichte-Verhältnis); Doppler und Dopplerrate in geschlossener Form aus Entfernungsrate und Entfernungsbeschleunigung, jeweils gegen zentrale Differenzen geprüft; die Ionosphärenverzögerung erster Ordnung 40,3 STEC/f^2 aus einem Klobuchar- oder Vertical-TEC-Schräg-TEC, skaliert auf den Teil der Ionosphäre unterhalb des Satelliten. Bandpaare erhalten die ionosphärenfreien Koeffizienten, die Rauschverstärkung und das Coderauschen am Maximum des Überflugs. MEO-GNSS-Satelliten (Galileo- oder GPS-Voreinstellungen) werden mit demselben Antennen- und Rauschmodell aus den Empfangsleistungen ihrer Schnittstellendokumente ausgewertet, sodass der glockenförmige LEO-Überflug und die flachen GNSS-Träger in einem Diagramm liegen. Ein optionaler Abschnitt [iot] liefert Zeit bis zur ersten Positionslösung, Energie je Lösung und Batterielebensdauer über dem Tastverhältnis für ein angegebenes Leistungsbudget des Empfängers (MODELLED). Jedes Bandpaar liefert außerdem das Schräg-TEC, das seine geometriefreie Kombination am Maximum zurückgewinnt, und das Code-Rausch-Sigma dieser Schätzung (Ionosphärensondierung). Ein optionaler Abschnitt [spoofer] fälscht die Signale einer behaupteten Position, die nach einem Einsatzzeitpunkt von der wahren Position springt oder weggeschoben wird, und führt zwei Monitore mit angegebenen Wahrscheinlichkeiten für Fehlalarm und Nichterkennung aus: Doppler- und Überflug-Geometrie-Konsistenz (gemessene Entfernungsraten gegen die aus den Bahnen und einer unabhängigen Vorabposition und -geschwindigkeit vorhergesagten, ein verallgemeinerter Kleinste-Quadrate-Chi-Quadrat-Test über ein Fenster, auf den GNSS-, LEO- und allen Kanälen) und Konsistenz zwischen den Bändern (der Schritt von Epoche zu Epoche der modellkorrigierten geometriefreien Kombination jedes LEO-Bandpaars), mit Statistiken je Epoche und dem Zeitpunkt, zu dem jeder Monitor erkennt (MODELLED). Komponenten, die VALIDATED sind: Freiraumdämpfung, die Koeffizienten von P.838-3 gegen ihre Tabelle 5, die Verfahren P.618-14 für Regen und Szintillation und die Gebäudeeindringdämpfung nach P.2109 gegen die Validierungsbeispiele der ITU-R Study Group 3, das Gruppenlaufzeitverhältnis L1/L2 aus IS-GPS-200 und das maximale Doppler eines ruhenden Nutzers auf einer Kreisbahn gegen arXiv 2509,19551 Tabelle 1. MODELLED: EIRPs, Antennendiagramme, der Chapman-Anteil des TEC unterhalb des Satelliten und der gesamte Überflug.

leo-focus-science-iono-sounding.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Schwerpunkt LEO-PNT: LEO-PNT-Wissenschaft, Ionosphärensondierung aus der Zweiband-Verzögerung.

kind = "leo-pass"
name = "LEO ionosphere sounding from multi-band delays"
epoch = "2026-09-28T11:00:00"
duration_s = 900.0
step_s = 5.0
environment = "ground"
lat_deg = 69.66
lon_deg = 18.94

In Kshana Studio öffnen · Auf GitHub ansehen

leo-indoor-uhf.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

LEO-PNT in Innenräumen: warum ein UHF-Träger in ein Gebäude hineinreicht, wenn L-, S- und C-Band Mühe haben.

kind = "leo-pass"
name = "Indoor UHF LEO-PNT"
epoch = "2026-09-28T12:00:00"
duration_s = 900.0
step_s = 5.0
environment = "indoor"
lat_deg = 41.9
lon_deg = 12.49

In Kshana Studio öffnen · Auf GitHub ansehen

leo-iot-energy.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Energiearmes LEO-PNT für einen IoT-Tracker (Internet der Dinge): Energie pro Fix gegenüber dem Tastgrad.

kind = "leo-pass"
name = "IoT energy per fix"
epoch = "2026-09-28T06:00:00"
duration_s = 900.0
step_s = 5.0
environment = "ground"
lat_deg = 53.55
lon_deg = 9.99

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pass-celeste-iod-multiband.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

ESA Celeste IOD, Signalkonfiguration #1, alle Bänder über einen Überflug. WORKSHOP PRESET.

kind = "leo-pass"
name = "Celeste IOD multi-band pass"
epoch = "2026-09-28T08:00:00"
duration_s = 600.0
step_s = 2.0
iono_free_pairs = [["E5", "C"], ["UHF", "C"], ["E5", "SR"]]
environment = "ground"
lat_deg = 52.218

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pass-iridium.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Iridium-STL-Bursts (Satellitenzeit und -ort), von einem Flugzeug aus gesehen.

kind = "leo-pass"
name = "Iridium STL from an aircraft"
epoch = "2026-09-28T14:00:00"
duration_s = 900.0
step_s = 5.0
environment = "air"
lat_deg = 50.0
lon_deg = -30.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pass-vs-gnss-cn0.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Ein LEO-PNT-Überflug gegenüber den sichtbaren Galileo-Satelliten: C/N0 über einen Überflug.

kind = "leo-pass"
name = "LEO pass versus MEO GNSS C/N0"
epoch = "2026-09-28T08:00:00"
duration_s = 900.0
step_s = 2.0
environment = "ground"
lat_deg = 48.137
lon_deg = 11.575

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pass-xona-pulsar.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Xona Pulsar X1 und X5 über einen Überflug, mit den höchsten Überflügen der Pulsar-Konstellation.

kind = "leo-pass"
name = "Xona Pulsar pass"
epoch = "2026-09-28T10:00:00"
duration_s = 1200.0
step_s = 5.0
environment = "maritime"
lat_deg = 45.5
lon_deg = -5.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-resilience-spoof-doppler.toml

Art leo-passnicht per Name einem Registermodul zugeordnet

Resilienz von LEO-PNT gegen Spoofing: Konsistenz von Doppler und Überfluggeometrie.

kind = "leo-pass"
name = "Spoofing detection by LEO Doppler consistency"
epoch = "2026-09-28T08:00:00"
duration_s = 1800.0
step_s = 5.0
environment = "ground"
lat_deg = 50.11
lon_deg = 8.68

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pnt-chain#

Ein LEO-PNT-System (Positionierung, Navigation und Zeitgebung aus dem niedrigen Erdorbit) von Anfang bis Ende, für jede Konstellation und jedes Signal: Das mit signal_design benannte leo-signal-Design (eine öffentliche Voreinstellung oder ein Inline-Design [signal]) legt Mitte, Bandbreite, Chiprate und EIRP-Aufteilung eines Bandes [pass] fest, das Link-Budget von leo-pass liefert das verfolgte C/N0 und den bandbegrenzten Codejitter über den Überflug, eine C/N0-Gerade in sin(Elevation) und das ausgesendete SISRE der Nachricht [navmsg] (angepasst in der Höhe des Überflugsatelliten) speisen jedes LEO-System des gemeinsamen Fixes leo-pvt unter [fusion] und optional die Fälle leo-ppp unter [ppp]; jede Übergabe wird mit Wert und Einheit aufgelistet. MODELLED.

celeste-iod-end-to-end.toml

Art leo-pnt-chainnicht per Name einem Registermodul zugeordnet

Celeste IOD durchgängig (optionale Voreinstellung): das Signal E5 Konfiguration #1 -> ein Überflug von Celeste IOD -> die Navigationsnachricht im Celeste-Stil -> fusionierte Lösung aus GPS + Galileo + Celeste IOD.

kind = "leo-pnt-chain"
name = "Celeste IOD end to end"
seed = 4
signal_design = "celeste-iod-e5-1-pfa"
od_sisre_m = 0.25
name = "celeste-iod-e5-1-pfa"
system = "Celeste IOD"
source = "WORKSHOP"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pnt-end-to-end.toml

Art leo-pnt-chainnicht per Name einem Registermodul zugeordnet

LEO-PNT durchgängig auf einer generischen Konstellation: Signalentwurf -> Streckenbudget des Überflugs -> Navigationsnachricht -> fusionierte MEO- + LEO-Lösung und Konvergenz der präzisen Punktpositionierung.

kind = "leo-pnt-chain"
name = "LEO-PNT end to end, generic 1080 km constellation"
seed = 5
signal_design = "generic-l"
od_sisre_m = 0.25
presets = ["generic-bands"]
epoch = "2026-09-28T08:00:00"
duration_s = 1200.0

In Kshana Studio öffnen · Auf GitHub ansehen

xona-pulsar-end-to-end.toml

Art leo-pnt-chainnicht per Name einem Registermodul zugeordnet

Xona Pulsar durchgängig: das öffentliche Signal X5 -> ein Pulsar-Überflug -> eine LEO-Navigationsnachricht -> fusionierte Lösung aus GPS + Galileo + Pulsar und Konvergenz der präzisen Punktpositionierung.

kind = "leo-pnt-chain"
name = "Xona Pulsar end to end"
seed = 9
signal_design = "xona-x5"
od_sisre_m = 0.25
presets = ["xona-pulsar"]
epoch = "2026-09-28T10:00:00"
duration_s = 1200.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-ppp#

Konvergenz der präzisen Punktpositionierung (PPP) nur mit GNSS und mit LEO-Stützung: ein erweitertes Kalman-Filter mit Float-Lösung auf ionosphärenfreiem Code und ionosphärenfreier Trägerphase mit den statischen Stationskoordinaten, einer weißen Empfängeruhr, einem Inter-System-Bias je zusätzlichem System, einer als Random Walk modellierten zenitalen feuchten Verzögerung, abgebildet mit 1/sin(Elevation), und einer Float-Mehrdeutigkeit je Satellitenbogen; der präzise Bahn-und-Uhr-Fehler ist weiß und für Code und Phase eines Satelliten gemeinsam, sodass jeder Satellit eine korrelierte Zweizeilen-Aktualisierung in Joseph-stabilisierter Form ist. Die Messungen werden aus demselben Modell mit Seed-Rauschen über mehrere Standorte und Seeds simuliert, und jeder Fall (zuerst nur GNSS, dann jedes [[case]] von LEO-Systemen, beliebige Konstellation oder Voreinstellung) gibt die mediane Konvergenzzeit an (die erste Epoche, nach der die horizontalen und vertikalen Fehler unter den Schwellen bleiben, standardmäßig 10 cm), den konvergierten Anteil, die medianen Fehlerkurven und die Konsistenz des Filters (das über die Läufe gemittelte Positions-NEES gegen das zweiseitige 95-%-Chi-Quadrat-Band). Optional neben den veröffentlichten Zahlen für mittlere Breiten von Li et al. (2019, J. Geod. 93:749, doi 10.1007/s00190-018-1195-2): 9,6 min für Multi-GNSS, verkürzt auf 7,0, 3,2, 2,1 und 1,3 min mit 60, 96, 192 und 288 LEO-Satelliten. MODELLED: ein Konsistenzvergleich des Trends, keine Reproduktion der Konstellationen, des Rauschens oder der Stationen jener Studie; keine Auflösung der Mehrdeutigkeit, keine Cycle Slips, kein Phase-Wind-up, keine Gezeiten und keine zeitkorrelierten Produktfehler.

leo-ppp-convergence.toml

Art leo-pppnicht per Name einem Registermodul zugeordnet

Konvergenz der präzisen Punktpositionierung (PPP) mit LEO-Ergänzung.

kind = "leo-ppp"
seed = 20
duration_s = 1800.0
step_s = 10.0
runs = 4
lat_deg = 30.5
lon_deg = 114.4
lat_deg = 48.1

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pvt#

Fusionierte Positionierung, Navigation und Zeitgebung (PNT) aus dem mittleren Erdorbit (MEO) und dem niedrigen Erdorbit (LEO) über BELIEBIGE Konstellationen: Jedes [[system]] ist eine GNSS-Voreinstellung der Szenarioart constellation-design, eine LEO-Voreinstellung (xona-pulsar, iridium-stl, starlink-sop, centispace, generic-c-band, das Ephemeridenmodell atomic-zero-clock oder eine andere Voreinstellungsdatei, jeweils in einer eigenen Datei mit ihren als PUBLIC, WORKSHOP oder DERIVED markierten Quellen), Walker-Schalen oder explizite Elementsätze, mit einem Träger, einer Chiprate, einer Hüllkurve der Träger-Rausch-Dichte (C/N0) von der Elevationsmaske bis zum Zenit, einem Signal-in-Space-Entfernungsfehler (SISRE), einem Doppler-Sigma und einem Uhrenmodell (die eigene Empfängeruhr, sodass der Inter-System-Bias geschätzt wird, oder ein bekannter ausgesendeter Versatz). Vier Modi. DOPPLER: Batch-Gauss-Newton-Positionierung aus der Entfernungsrate mit analytischen Partiellen, Uhrendrift und optionalen Geschwindigkeitszuständen und einer optionalen Höhenbedingung, mit einem oder mehreren Satelliten, der Fehler gegen die Fensterlänge, die Hüllkurve von Doppler, Dopplerrate und Ruck jedes LEO-Systems und die Genauigkeit in und quer zur Flugrichtung bei einem einzelnen Überflug gegen den Querversatz (der Querfehler wächst unbegrenzt, wenn der Überflug über den Zenit geht; ein einzelner Überflug hat außerdem eine Spiegellösung über der Bodenspur). Ein reines Doppler-Gelegenheitssignal (starlink-sop) läuft hier. GEMEINSAM: Pseudorange-Fixes je Epoche nach gewichteten kleinsten Quadraten aus GNSS allein, LEO allein und beiden, Sigmas je Messung aus einem Thermalrauschmodell der Delay-Lock-Loop bei C/N0 plus dem SISRE (oder einem festen Sigma, sodass ein Signalmodell sie speisen kann), die geschätzten Inter-System-Biases und PDOP/HDOP/VDOP gegen die Zahl der hinzugefügten LEO-Satelliten. POLAR: sichtbare Satelliten und DOP gegen die Breite für GNSS, LEO und beide. ZEITGEBUNG: Zeitübertragung auf die koordinierte Weltzeit (UTC) von LEO-Satelliten an bekannter Position mit einem Uhrenfilter mit zwei Zuständen, dessen Prozessrauschen aus den Oszillatorklassen der Engine stammt, gegen C/N0 und den Oszillator, und der Ausdruck von IS-GPS-200 für Systemzeit zu UTC; mit [timing] trace = true gibt jede Zeile außerdem ihren Zeitfehler und ihr vorhergesagtes Sigma in jeder Epoche an. VALIDATED: der größte Doppler eines Überflugs vom Zenit bis zum Horizont gegen die veröffentlichten Zahlen von Iridium (bis zu 36 kHz) und Xona Pulsar X1 (32 bis 34 kHz). MODELLED: alles andere; der DOP wird gegen einen von Hand abgeleiteten Fall geprüft, die Fixes gegen ihre Kovarianz und das Dopplermodell gegen die Identität der Entfernungsbeschleunigung.

celeste-iod-fused-pvt.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

GNSS-Positionierung, ergänzt um die beiden ESA-Satelliten Celeste für die Demonstration im Orbit.

kind = "leo-pvt"
mode = "joint"
seed = 4
duration_s = 5700.0
step_s = 30.0
lat_deg = 52.22
lon_deg = 4.42
height_m = 5.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-doppler-positioning.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

Positionierung allein aus dem LEO-Doppler, über einer generischen LEO-Navigationskonstellation.

kind = "leo-pvt"
mode = "doppler"
seed = 7
duration_s = 600.0
step_s = 10.0
lat_deg = 48.14
lon_deg = 11.58
height_m = 520.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-pvt-fjord-skyline.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

Fusionierte MEO- und LEO-Positionierung für ein Schiff tief in einem Fjord, wo die Talwände alles Tiefe über den Kanal hinweg verdecken: der gemeinsame Modus leo-pvt unter der Horizontprofil-Voreinstellung fjord.

kind = "leo-pvt"
mode = "joint"
seed = 3
duration_s = 1800.0
step_s = 30.0
lat_deg = 61.1
lon_deg = 6.6
height_m = 20.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-timing-utc.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

Zeitübertragung von LEO-Satelliten auf UTC, gegenüber C/N0 und dem Empfängeroszillator.

kind = "leo-pvt"
mode = "timing"
seed = 9
duration_s = 21600.0
step_s = 10.0
lat_deg = 39.99
lon_deg = -105.26
height_m = 1655.0

In Kshana Studio öffnen · Auf GitHub ansehen

meo-leo-fused-pvt.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

Fusionierte MEO- und LEO-Pseudoentfernungs-Positionierung: GPS und Galileo mit einer LEO-Navigationsschicht.

kind = "leo-pvt"
mode = "joint"
seed = 3
duration_s = 1800.0
step_s = 30.0
lat_deg = 40.42
lon_deg = -3.70
height_m = 650.0

In Kshana Studio öffnen · Auf GitHub ansehen

polar-arctic-leo-coverage.toml

Art leo-pvtnicht per Name einem Registermodul zugeordnet

Sichtbare Satelliten und Dilution of Precision vom Äquator bis zum Pol: MEO-GNSS allein, eine fast polare LEO-Konstellation allein und beide.

kind = "leo-pvt"
mode = "polar"
duration_s = 7200.0
step_s = 600.0
lat_step_deg = 10.0
lon_step_deg = 45.0
pdop_threshold = 6.0
name = "GPS"

In Kshana Studio öffnen · Auf GitHub ansehen

leo-signal#

LEO-PNT-Signalentwürfe: parametrisierte Positions-, Navigations- und Zeitgebungssignale (PNT) auf niedrigen Erdumlaufbahnen (LEO) für beliebige Systeme, Bänder und Strukturen. Ein SIGNAL besteht aus einem Band (Mittenfrequenz, Sendebandbreite, ITU-Zuweisung RNSS/RDSS/MSS/EESS/non-RNSS/other) und Komponenten (Akquisition, Daten, Pilot; jede Teilmenge), jeweils mit einer Modulation (BPSK(n) mit gebrochenem n, BOC(m,n), MBOC(6.1,p) oder ein flaches OFDM-artiges Band), einem Leistungsanteil, optionalen FDMA-Unterträgerversätzen, einer Codelänge und einer Datenrate. Signale stammen aus einkompilierten öffentlichen Voreinstellungsdateien (xona-pulsar, iridium-stl, starlink-soo, centispace, generic-c-band, generic-bands; jeweils mit ihrer Quell-URL und jedem unveröffentlichten Wert als REPRESENTATIVE gekennzeichnet) oder werden inline geschrieben. PRO SIGNAL: die bandbegrenzte spektrale Leistungsdichte und der Anteil der Leistung jeder Komponente, den das Sendeband durchlässt (geschlossene Form für BPSK neben dem numerischen Wert), die effektive Bandbreite (RMS, Gabor), der thermische Rauschjitter der Code-Nachführung der Delay-Lock-Loop gegen C/N0 und den Early-Late-Abstand nach der bandbegrenzten kohärenten (oder nichtkohärenten) Early-Late-Formel von Betz & Kolodziejski 2009 mit ihrer Lehrbuchform für unbegrenztes Band und ihrer Gabor-Schranke für verschwindenden Abstand, die Entfernungsmessgenauigkeit in Metern, der Akquisitionssuchraum (Doppler-Bins aus dem maximalen Doppler der Bahn plus Oszillator- und Nutzerterme, mal Code-Bins), die Detektionswahrscheinlichkeit des quadratischen Detektors sowie die mittlere serielle und codeparallele Akquisitionszeit, der spektrale Trennungskoeffizient des Signals zu GPS L1 C/A, Galileo E1, GPS L5, Galileo E5a, E5b und E5 AltBOC und jedes dieser Signale zum Signal mit der C/N0-Verschlechterung sowie das CW-, Breitband- und angepasste J/S, das die nachgeführte Komponente verträgt, aus der eigenen SSC-Maschinerie der Spektrumart. Ein BANDVERGLEICH: Ionosphärenverzögerung erster Ordnung (40,3 TEC/f^2), Freiraumdämpfung, Entfernungsmessgenauigkeit bei gleichem C/N0 und bei gleicher EIRP sowie Störertoleranz. Optionale FORMPRÜFUNGEN halten das Spektrum eines Entwurfs gegen eine beschriebene Messung (Konsistenz MODELLED). VALIDATED: die geschlossenen Formen für Leistung im Band bei BPSK (90,3 % im Hauptkeulenbereich) und für die Gabor-Bandbreite, der bandbegrenzte Jitter, der auf die kohärente Early-Late-Lehrbuchform und auf seine Gabor-Schranke zurückgeht, der spektrale Trennungskoeffizient bei versetztem BPSK gegen seine geschlossene Form nach Parseval, die Einheitsfläche des AltBOC-Spektrums und der maximale LEO-Doppler gegen die veröffentlichten Werte von Xona Pulsar (32-34 kHz) und Iridium (36 kHz). MODELLED: jeder Entwurf, jede Leistungsaufteilung, jedes C/N0 und jeder Störpegel; die Spektren von EFQPSK, CSK und OFDM sind angenähert.

celeste-iod-classical-pilot-signals.toml

Art leo-signalnicht per Name einem Registermodul zugeordnet

Signalentwürfe von Celeste IOD: die Frequenzbänder und die Signalkonfiguration „Classical Pilot“ #1 der Mission Celeste In-Orbit Demonstration (IOD) der ESA für Positionierung, Navigation und Zeitgebung (PNT) in niedriger Erdumlaufbahn (LEO), als parametrisierte Signalentwürfe.

kind = "leo-signal"
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5
tracking_threshold_dbhz = 25.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-band-trade.toml

Art leo-signalnicht per Name einem Registermodul zugeordnet

Bandabwägung für LEO-PNT, von UHF bis breites C-Band: was ein Signal für Positionierung, Navigation und Zeitgebung (PNT) in niedriger Erdumlaufbahn (LEO) in jedem Band gewinnt und verliert, unabhängig von einem bestimmten System.

kind = "leo-signal"
presets = ["generic-bands"]
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

xona-pulsar-signals.toml

Art leo-signalnicht per Name einem Registermodul zugeordnet

Signale von Xona Pulsar: die Signale X1 (L1-Band) und X5 (L5-Band) einer kommerziellen Konstellation für Positionierung, Navigation und Zeitgebung (PNT) in niedriger Erdumlaufbahn (LEO), aus ihrer veröffentlichten Signaltabelle (Leclère, Marathe und Reid, ION GNSS+ 2025, https://arxiv.org/abs/2509.19551), als einkompilierte Voreinstellung xona-pulsar.

kind = "leo-signal"
presets = ["xona-pulsar"]
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

Einwegstreckenbilanz nach der CCSDS-401- bzw. DSN-810-005-Streckengleichung: Freiraumdämpfung, C/N₀, Eb/N₀, Marge und Schließung für eine Sende-EIRP, ein Empfangs-G/T, eine Entfernung, eine Datenrate und ein Band (s|x|ka) gegen ein gefordertes Eb/N₀. Eine deterministische technische Berechnung aus den gelieferten Eingaben (kein kalibriertes Datenblatt eines Terminals).

lunar-ascent#

MODELLED angetriebener Aufstieg von einem Oberflächenstandort am Südpol in die Rendezvous-Umlaufbahn und die Positions-Geschwindigkeits-Kovarianz, die er zurück in die Umlaufbahn trägt (Artemis-Klasse). Das inertiale Fehlermodell mit fünf Zuständen je Achse aus lunar-descent (Position, Geschwindigkeit, Beschleunigungsmesser-Bias, Lagekippung, Kreisel-Bias, angetrieben durch die spezifische Kraft) läuft auf allen drei Standortachsen ab dem Oberflächenzustand, mit dem die Phase beginnt; eine AFS-Positionslösung aus den sichtbaren Relais einer ILLUSTRATIVE Konstellation der LCNS-Klasse (eigenständig oder differenziell mit dem Residuum der Korrekturverbindung aus lunar-differential-pnt, mit gestützter Uhr, wenn nur drei Relais sichtbar sind) wird in einem genannten Intervall genommen, wobei die Mondzeit über die Fahrzeuguhr und ein Zeitmarkenfehler entlang der Bahn eingehen. Sie gibt die geschlossenen inertialen Quellen an, den Beitrag der Stützung, die Ablation, die Navigations-1-Sigma über den Aufstieg, die Streuung beim Triebwerksabschalten neben dem Navigationswissen und die volle 6x6-MCI-Kovarianz beim Einschwenken, wobei die Positions-Geschwindigkeits-Korrelation erhalten bleibt. MODELLED: illustrative IMU-Klasse, spezifische Kraft, Relaisgruppe und Streuung beim Abschalten; Fehler in den Achsen des Startstandorts gehalten; der nominale Endzustand ist ein Platzhalter. Nicht von einer Agentur gebilligt; beratende Software, keine zertifizierte Navigationsausrüstung.

lunar-ascent.toml

Art lunar-ascentnicht per Name einem Registermodul zugeordnet

Mondaufstieg: der angetriebene Aufstieg von einem Oberflächenstandort am Südpol (Artemis-Klasse) in die Rendezvous-Umlaufbahn in 100 km und die Positions-Geschwindigkeits-Kovarianz, die er zurück in die Umlaufbahn trägt.

kind = "lunar-ascent"
site_lat_deg = -89.5
site_lon_deg = 0.0
ascent_s = 450.0
insertion_altitude_km = 100.0
accel_bias_ug = 100.0
align_arcmin = 3.0
gyro_bias_deg_per_hr = 0.01

Noch nicht auf GitHub

lunar-attack-surface#

Angriffsfläche der Signalsicherheit für die Oberflächennavigation auf dem Mond (P1): fasst die offenen Signalsicherheitsanalysen zu einem über die Binärdatei erreichbaren Lauf zusammen. Berichtet (1) die empfangene AFS-Leistung und ihren Leistungs-ÜBERSCHUSS gegenüber einer terrestrischen GPS-Referenz, dazu das Empfindlichkeitsband von 12-18 dB als echten mehrachsigen Sweep über die Streckeneingaben (Referenzpegel x EIRP x Schrägentfernung) mit dem Abgleich der linearen Faktoren 25x gerundet / 28x ungerundet. ÜBERARBEITET (Regel R4): Dieser Bericht wies ein Leistungs-DEFIZIT von 15,6 dB und einen Faktor von 32x/36x aus, bis die GPS-Referenz von -125 / -128.5 (das sind die dBm-Werte) auf -155 / -158.5 dBW korrigiert wurde, die Werte aus ICD-GPS-200, die das Jamming-Modul schon immer geführt hat. Das Vorzeichen kehrt sich um: Das modellierte AFS-Signal des Mondes ist 14,4 dB STÄRKER als terrestrisches GPS L1 C/A, nicht schwächer. Die empfangene Leistung selbst hat sich um kein Bit bewegt, und der lineare Faktor ist der alte, geteilt durch genau 1000, und das ist genau der Versatz von 30 dB zwischen dBm und dBW; (2) die erforderliche Sendeleistung des Angreifers zum Spoofen (J/S = 3 dB) und zum Verweigern (J/S = 30 dB) bei jedem Abstand, die Umkehrung der J/S-Strecke; (3) der orbitale Erfassungsfußabdruck unter einem realen Antennendiagramm einer gleichförmigen Apertur (Airy [2 J1(x)/x]^2), eine höhenbegrenzte, subhemisphärische Kappe, deren Rand NICHT erfasst wird; (4) ein berechnetes Ergebnis des Spoof-Capture-Pull-in der Tracking-Schleife (zieht ein Spoofer mit passendem Code bei gegebenem Leistungsvorteil und Codeversatz die DLL/PLL tatsächlich mit) statt der behaupteten Schwelle von 3 dB; (5) die geometrische Horizontreichweite eines erhöhten Oberflächensenders auf einem Körper ohne Atmosphäre; und (6) das Authentifizierungsbudget von OSNMA/TESLA (20 bit/s Overhead = ~40 % einer AFS-Navigationsnachricht mit 50 bit/s, Latenz der Schlüsselfreigabe, 2^-40 Fälschung). Ein leerer Rumpf reproduziert die P1-Basislinie; jede Eingabe hat einen Standardwert und ist überschreibbar. Teilergebnisse der Stufe VALIDATED tragen die unabhängige Referenz ihres Quellmoduls (geschlossene dB-Radiometrie; J/S-Umkehr im Rundlauf; Airy-Diagramm gegen A&S-Bessel und Kugelkappengeometrie; DLL/PLL-Pull-in gegen Kaplan & Hegarty; Identität des sphärischen Tangentenhorizonts gegen eo_payload; Feldgrößen nach OSNMA SIS-ICD). MODELLED: die repräsentativen Geometrie- und Leistungsgrößen und die konkreten Werte der Zellen der Capture-Map. Kein zertifiziertes Sicherheitsprodukt.

lunar-attack-surface.toml

Art lunar-attack-surfacenicht per Name einem Registermodul zugeordnet

Angriffsfläche für die Signalsicherheit der Navigation auf der Mondoberfläche (Paper P1).

kind = "lunar-attack-surface"
afs_eirp_dbw = 26.0
user_gain_dbi = 3.0
slant_range_m = 3.0e6
carrier_hz = 2.4e9
gps_reference_dbw = -155.0
gps_reference_min_dbw = -158.5
transmitter_altitude_m = 100_000.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-beacon#

Oberflächenbaken-Ergänzung eines lunaren orbitalen Navigationsdienstes als lauffähige Vorher-Nachher-Tabelle. Ein Nutzer am Südpol sieht eine spärliche Orbitalmenge in einem schmalen Himmelsausschnitt, daher ist die Entfernungsmessgeometrie schlecht konditioniert; einige VERMESSENE OBERFLÄCHENBAKEN liefern die Sichtlinienzeilen mit niedriger Elevation und großem Azimutbereich, die einer rein im Zenit stehenden Menge fehlen, und der horizontale Dilution-of-Precision-Wert bricht ein. Das Szenario berichtet drei Konfigurationen zu einer Epoche — nur Satelliten, Satelliten plus die sichtbaren Baken und eine größere Konstellation als alternativer Weg zur selben Geometrie — jeweils mit ihren Zahlen sichtbarer Quellen, ihrem vollständigen DOP und der erzielten 1-Sigma-Genauigkeit in METERN, gewonnen durch Multiplikation mit einem Nutzer-äquivalenten Entfernungsfehler je Bake, der als Wurzel aus der Quadratsumme von Uhrensynchronisations-, Mehrwege- und Vermessungstermen zusammengesetzt ist. Die Sichtbarkeit der Baken ist der geometrische Horizont für zwei Höhen auf dem Mond ohne Atmosphäre (keine Atmosphäre, daher ist die Grenze exakt), und die DOP-Zusammensetzung ist derselbe Kern, der in tests/dop_reference.rs gegen gnss_lib_py gegengeprüft wird. WARUM ES DIESE ART GIBT: Das Modul dahinter ist seit L08/L09 in der Engine und wird gegen einen unabhängigen DOP-Pfad geprüft, war aber aus einem Lauf nicht erreichbar — keine Art, kein Dispatch-Zweig, keine mitgelieferte Datei. Die README warb mit der Fähigkeit, und die Verifikationsmatrix führte KEINE Zeile dafür, sodass sie zugleich in der Prosa behauptet und im Register nicht beansprucht wurde, während sie in der Engine unerreichbar war. Die Standardwerte sind die Geometrie, die bereits ein eingechecktes Golden trägt (ein Nutzer bei -80 deg mit einer Antenne von 2 m, drei Baken bei -80/0, -79/+60 und -79/-60 auf 2 km, ein illustrativer LCNS-Schnappschuss mit sechs Satelliten bei t=0, eine Maske von 5 deg), sodass ein bloßer Lauf eine Tabelle reproduziert, die eine Referenz bereits abdeckt, statt neue Zahlen zu erfinden. MODELLED: der Konstellationsentwurf, die Bakenplatzierung und jede Größe des Fehlerbudgets sind illustrative Eingaben, keine im Feld erfolgte Vermessung und keine gemessene Strecke; nur die DOP-Arithmetik, die geschlossene Form des Horizonts und die Beziehung Sigma = DOP x sigma_URE sind extern verankert. Keine Zusage einer Dienstleistung.

lunar-beacon.toml

Art lunar-beacondie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Ergänzung eines lunaren orbitalen Navigationsdienstes durch Oberflächen-Beacons.

kind = "lunar-beacon"
n_satellites = 6
comparison_n_satellites = 24
epoch_s = 0.0
elevation_mask_deg = 5.0
clock_sync_m = 1.0
multipath_m = 0.5
survey_m = 0.3

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-descent#

MODELLED Landestreuungsbudget für einen angetriebenen Abstieg zu einem Standort am Südpol (Artemis-Klasse). Je horizontaler Achse wird ein inertiales Fehlermodell mit fünf Zuständen (Position, Geschwindigkeit, Beschleunigungsmesser-Bias, Lagekippung, Kreisel-Bias) von der spezifischen Kraft des Abstiegs angetrieben; ein sequentieller Filter nimmt Positionslösungen aus den aktivierten Stützungen: eine AFS-Lösung aus den sichtbaren Relais einer ILLUSTRATIVE Konstellation der LCNS-Klasse (eigenständig oder differenziell mit dem Residuum der Korrekturverbindung aus lunar-differential-pnt, mit gestützter Uhr, wenn nur drei Relais sichtbar sind) und eine geländerelative Lösung (der TERCOM/SITAN-Abgleicher des Crates auf einem synthetischen Relief oder die Cramer-Rao-Schranke des Abgleichs eines Höhenfensters des echten LOLA-DEM des Südpols). Die Mondzeit geht bei den Lösungen über die Fahrzeuguhr ein (der LTC-TT-Versatz aus lunar-time-offset oder die Unsicherheit seines veröffentlichten Bandes) und als Zeitmarkenfehler entlang der Bahn. Sie gibt die 3-Sigma-Landeellipse an, R95, die geschlossenen inertialen Quellen, den Beitrag jeder Stützung, die Ablation jeder Kombination von Stützungen, eine Monte-Carlo-Kalibrierung der Ellipse und die weitergegebene Kovarianz. MODELLED: illustrative IMU-Klasse, Relaisgruppe, Abstiegsprofil und Lenkterm; terrain-nav verwendet ein synthetisches Relief auf einer irdischen Meterskala; die AFS-Verfügbarkeit ist eine Epoche bei einer flachen Maske. Nicht von einer Agentur gebilligt; beratende Software, keine zertifizierte Navigationsausrüstung.

lunar-descent.toml

Art lunar-descentnicht per Name einem Registermodul zugeordnet

Landestreuung auf dem Mond: das Budget für einen angetriebenen Abstieg zu einem Standort am Südpol (Artemis-Klasse), aus der inertialen Drift des Abstiegsstapels und dem, was geländerelative Navigation, LunaNet-Signale und Mondzeit jeweils davon abziehen.

kind = "lunar-descent"
site_lat_deg = -89.5
site_lon_deg = 0.0
more_site_lats_deg = [-89.9, -88.5, -85.0]
descent_s = 600.0
horizontal_speed_m_s = 150.0
accel_bias_ug = 100.0
align_arcmin = 3.0

Noch nicht auf GitHub

lunar-descent-lola.toml

Art lunar-descentnicht per Name einem Registermodul zugeordnet

Landestreuung auf dem Mond mit dem echten LOLA-DEM des Südpols: das Budget für einen angetriebenen Abstieg zu einem Standort am Südpol (Artemis-Klasse), aus der inertialen Drift des Abstiegsstapels und dem, was geländerelative Navigation, LunaNet-Signale und Mondzeit jeweils davon abziehen.

kind = "lunar-descent"
site_lat_deg = -89.5
site_lon_deg = 0.0
more_site_lats_deg = [-89.9, -88.5, -85.0]
descent_s = 600.0
horizontal_speed_m_s = 150.0
accel_bias_ug = 100.0
align_arcmin = 3.0

Noch nicht auf GitHub

lunar-differential-pnt#

Modelliertes lunares DIFFERENTIELLES PNT (ein lunares Analogon zu DGNSS/SBAS): Eine Referenzstation der Klasse NovaMoon an einem BEKANNTEN selenographischen Ort berechnet differentielle Korrekturen je Satellit aus einer ILLUSTRATIVE Konstellation der Klasse Moonlight/LCNS aus öffentlichen Quellen (NovaMoon nur als Systemklasse genannt, ohne Verbindung zur ESA), und ein um baseline_km versetzter Nutzer wendet sie an, sodass sich die gleichtaktigen Bahn- + Uhrenfehler aufheben. Der Uhrenterm hebt sich EXAKT auf (eine algebraische Identität); der Bahnterm hinterlässt nur die Projektion der Sichtliniendifferenz, die für Basislinie → 0 gegen 0 geht (die Untergrenze der räumlichen Dekorrelation) und etwa linear mit der Basislinie wächst. Es werden der 3D-Positionsfehler des Nutzers MIT gegenüber OHNE Korrekturen, der Reduktionsfaktor, die Kurve Fehler gegen Basislinie und ein Schutzniveau des Nutzers ausgegeben, das die SBAS-Maschinerie nach DO-229E (crate::sbas) MIT dem differentiellen Restfehler σ WIEDERVERWENDET. MODELLED — exakte Aufhebungsidentität + Dekorrelationsmodell erster Ordnung; nicht mit realen Daten validiert; kein TRL/Flugerbe/keine Billigung durch eine Agentur. Deterministisch, wenn mit Seed erzeugt.

lunar-differential-pnt.toml

Art lunar-differential-pntnicht per Name einem Registermodul zugeordnet

Lunares DIFFERENTIELLES PNT — ein lunares Analogon zu DGNSS / SBAS.

kind = "lunar-differential-pnt"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
ref_lat_deg = -89.0
ref_lon_deg = 0.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-frame-campaign#

Helmert-Bezugssystemdatum (Ähnlichkeit) mit sieben Parametern, angetrieben von einer SIMULIERTEN BEOBACHTUNGSKAMPAGNE statt von einer eingespeisten Transformation. Ein Netz von Erdstationen beobachtet einen Katalog von Baken auf der Mondoberfläche nach einem expliziten Zeitplan; die Partiellen der lunaren VLBI-Verzögerung werden über diesen Zeitplan zu einer Fisher-Informationsmatrix der Bakenkoordinaten akkumuliert, genau wie es lunar-vlbi-fim tut; und diese Information wird über den Helmert-Entwurf A = [I3 | [p]_x | p] an den Katalogpunkten in die Datumskovarianz H = A^T M_b A fortgepflanzt, diagnostiziert durch crate::fim::crlb. KEINE Transformation wird eingespeist, und nichts wird aus einer untergeschobenen Antwort wiedergewonnen, sodass die ausgegebene Datumsgenauigkeit aus dem Beobachtungsprogramm folgt: Eine Halbierung des Verzögerungs-Sigmas halbiert sie exakt, und eine Verlängerung des Bogens verbessert sie, weil die Libration, die der Bericht MISST (sub_earth_direction_sweep_deg), das ist, was die Bakenkoordinate in Sichtlinienrichtung von denen in der Himmelsebene trennt. Rang, Datumsdefekt, Konditionszahl, das gesamte Spektrum, die nicht beobachtbaren Richtungen IN DER SIEBENPARAMETER-BASIS, die schwächste Richtung auch bei vollem Rang und der Anteil jedes Parameters daran werden bei jedem Lauf ausgegeben; ein Parameter, den die Kampagne nicht beschränkt, wird als NULL mit einem Status veröffentlicht, nie aus einer fast singulären Inversen abgelesen. Die Korrelation der Bakenfehler wird gemessen, nicht angenommen: Bei festgehaltenen Stationen berührt keine Beobachtung zwei Baken, sodass die Informationsmatrix exakt blockdiagonal ist (offblock_fraction 0), und bei geschätzten Stationen ist der Schur-marginalisierte Block gekoppelt, wobei die induzierte Korrelation ausgegeben und die gesamte Fortpflanzung ohne sie erneut ausgeführt wird, sodass der Preis einer Unabhängigkeitsannahme eine Zahl ist. Dieselbe Fortpflanzung unter einem isotropen Sigma je Koordinate und der Wiedergewinnungsfehler, den das Szenario lunar-frame-realisation ausgibt, werden beide hier ausgeführt und mit ihren Verhältnissen neben dem Kampagnenwert ausgegeben. MODELLED: Der Bakenkatalog hat Quellen, aber die KAMPAGNE ist simuliert — das Stationsnetz und das Verzögerungs-Sigma sind illustrative Eingaben, einzelne Verzögerungsbeobachtungen werden als unabhängig behandelt, und die Ephemeride des Mondzentrums, die Stationsuhren, die Troposphäre und die Erdorientierungsparameter werden FEST gehalten, sodass die Datumskovarianz eine Cramér-Rao-Schranke für einen reduzierten Parametersatz ist. Kein geodätisches Produkt.

lunar-frame-campaign.toml

Art lunar-frame-campaignnicht per Name einem Registermodul zugeordnet

Lunares Bezugssystem-Datum als Helmert-Transformation mit sieben Parametern, gespeist von einer SIMULIERTEN BEOBACHTUNGSKAMPAGNE (G9).

kind = "lunar-frame-campaign"

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-frame-realisation#

Modellierte Realisierung des lunaren Bezugssystems: eine Anpassung eines Helmert-Datums (Ähnlichkeit) mit 7 Parametern — 3 Translationen, 3 Kleinwinkel-Rotationen, 1 Maßstab —, die einen geschätzten Satz von aus der Selenographie abgeleiteten MCMF-Punktkoordinaten durch gewichtete kleinste Quadrate (crate::batch_ls::gauss_newton) an ein Datum bindet, plus eine einfache Orientierungsanbindung, die die realisierte kleine Rotation um die ICRF-Achsen relativ zur Körperorientierung IAU 2015 WGCCRE ausdrückt. Das Szenario speist eine bekannte kleine Transformation (Translation ~einige zehn m, Rotation ~µrad, Maßstab ~1e-7) in ein gut verteiltes synthetisches Punktnetz ein, fügt Gaußsches Rauschen mit Seed hinzu, gewinnt das Datum zurück und gibt die zurückgewonnene Transformation, den Wiedergewinnungsfehler je Parameter gegen die eingespeiste Wahrheit und das RMS-Residuum nach der Anpassung aus. MODELLED Selbstkonsistenz — gewinnt eine eingespeiste Ähnlichkeitstransformation zurück (rauschfrei bis auf ~Maschinengenauigkeit), KEINE Realisierung gegen echte Verfolgungs-/VLBI-Daten; deterministisch (mit Seed); kein TRL/Flugerbe/keine Billigung durch eine Agentur.

lunar-frame-realisation.toml

Art lunar-frame-realisationnicht per Name einem Registermodul zugeordnet

Realisierung des lunaren Bezugssystems — eine Anpassung des Datums als Helmert-Transformation (Ähnlichkeitstransformation) mit 7 Parametern.

kind = "lunar-frame-realisation"
n_points = 8
tx_m = 25.0
ty_m = -40.0
tz_m = 15.0
rot_x_urad = 3.0
rot_y_urad = -2.0
rot_z_urad = 5.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure#

MODELLED Studien zu Umlaufbahn und Oberfläche des Mondes als Navigations- und Geodäsie-Infrastruktur, fünf Studien hinter einer Szenarioart, ausgewählt durch study: od-consistency (Bahnbestimmung an Bord mit Erd-GNSS in einer NRHO oder ELFO gegen eine unabhängige radiometrische Bahnbestimmung vom Boden, beurteilt an ihren eigenen Kovarianzen über eine Monte-Carlo-Simulation mit Seed), carrier-phase (gemeinsame doppeltdifferenzierte Trägerphase von Oberfläche und Orbiter und Auflösung der ganzzahligen Mehrdeutigkeit mit LAMBDA), frame-coestimation (eine Oberflächenstation und Orbiter, die der Entfernungsmessung von Erdstationen für das Helmert-Bezugssystemdatum des Mondes mit sieben Parametern hinzugefügt werden), space-tie (GNSS, VLBI und Laserentfernungsmessung auf einem Raumfahrzeug, Präzision der Bezugssystemanbindung gegen den Fehler der lokalen Anbindung) und geodesy-sensitivity (Fisher-Information der Love-Zahlen h2, k2, l2 des Mondes und der physikalischen Libration aus Laserentfernungsmessung, Orbiter-Verfolgung, einem Oberflächengravimeter und einer Oberflächenuhr). Ein eingeschränktes Dreikörpermodell mit angegebenen Vereinfachungen; die Numerik wird gegen unabhängige Programme geprüft, und nichts wird mit einer Messung einer lunaren Größe verglichen.

lunar-infrastructure-carrier-phase.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: carrier-phase, das Beispiel SCHNELL (zwei kurze Bögen, 10 Ziehungen, Sekunden; die bewertete Konfiguration, drei Bögen und 400 Ziehungen, ist xval/lunar-infra/scenarios/carrier-phase-scored.toml). MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "carrier-phase"
seed = 20261019
family = "nrho"
sample_s = 600.0
arcs_days = [0.25, 0.5]
lat_deg = 0.0
lon_deg = 0.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure-frame-coestimation.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: frame-coestimation. MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "frame-coestimation"
seed = 20261019
family = "nrho"
arc_days = 6.56
sample_s = 900.0
sigma_m = 0.05
epochs = 200

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure-geodesy-sensitivity.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: geodesy-sensitivity. MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "geodesy-sensitivity"
seed = 20261019
sigma_m = 0.05
epochs = 400
sigma_mm_s = 0.05
arc_days = 27.3
sample_s = 3600.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure-od-consistency.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: od-consistency. MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "od-consistency"
seed = 20261019
family = "nrho"
arc_days = 3.0
sample_s = 600.0
altitude_km = 20180.0
inclination_deg = 55.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure-od-consistency-model-error.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: od-consistency mit einer nicht modellierten Beschleunigung. MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "od-consistency"
seed = 20261019
family = "nrho"
arc_days = 3.0
sample_s = 600.0
altitude_km = 20180.0
inclination_deg = 55.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-infrastructure-space-tie.toml

Art lunar-infrastructurenicht per Name einem Registermodul zugeordnet

Szenario lunar-infrastructure von Kshana: space-tie. MODELLED; der Entwurf, die Eingaben und die Zielwerte sind in xval/lunar-infra/PREREGISTRATION.md festgelegt (vor jedem Lauf eingecheckt). ILLUSTRATIVE Eingaben sind dort mit ihren öffentlichen Quellen gekennzeichnet.

kind = "lunar-infrastructure"
study = "space-tie"
seed = 20261019
family = "nrho"
arc_days = 6.56
sample_s = 900.0
gnss_sigma_m = 10.0
vlbi_sigma_m = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-integrity#

ARAIM-Schutzniveau-Überflug am lunaren Südpol gegen einen repräsentativen Satz von LunaNet-Relais. sigma_ure_m legt die Genauigkeit der Signal-in-Space-Entfernungsmessung offen (Schutzniveaus skalieren linear damit, sodass ein Durchfahren die Frage beantwortet, welche Entfernungsmessgenauigkeit ein Alarmgrenzwert verlangt). Standardmäßig der historische Südpolfall der Klasse LNIS.

lunanet-araim.toml

Art lunar-integritynicht per Name einem Registermodul zugeordnet

Integrität am Mond-Südpol: ein gelandeter Empfänger in der Artemis-Region gegenüber einem repräsentativen LunaNet-Relaissatz, ARAIM-Schutzniveaus über einen Überflug von 24 h.

kind = "lunar-integrity"
step_s = 3600.0
duration_s = 86400.0
alert_limit_m = 50.0
p_hmi = 1.0e-4

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-interop-export#

Modellierter lunarer Interoperabilitätsexport: gibt das lunare Bezugssystem, die lunare Zeitskala und die lunare Ephemeride in an LunaNet/IOAG angelehnten, auf CCSDS basierenden Austauschformen mit Rundlauf-/Feldkonformität aus. WIEDERVERWENDET den CCSDS-OEM-2,0-Emitter und -Parser des Crates (crate::oem), für den lunaren Kontext neu etikettiert — REF_FRAME trägt das lunare Körperbezugssystem IAU 2015 WGCCRE (MOON_ME / MOON_PA), TIME_SYSTEM die lunare Zeitskala (LTC / TCL / UTC), CENTER_NAME = MOON — über eine beispielhafte illustrative Ephemeride der Klasse LCNS (Positionen aus crate::lunar_service, Geschwindigkeit per finiter Differenz). Gibt außerdem einen an LunaNet/IOAG angelehnten Deskriptor der Mondzeit aus (Skalen-ID, säkulare Rate µs/Tag aus crate::lunar_time, veröffentlichtes Band, Bezugsfläche), der über serde_json einen Rundlauf besteht, und verpackt die Artefakte in den bestehenden KIF-Umschlag (crate::interchange) mit der Ehrlichkeitsbezeichnung MODELLED. Meldet ausgegebene Artefakte, OEM-Zeilenzahl, Feldkonformitätsprüfung (bestanden) samt Liste vorhandener/fehlender Felder, OEM-Rundlauf in Ordnung, Zeitmetadaten-Rundlauf in Ordnung und KIF-Bytegröße. MODELLED — deterministischer Rundlauf und Feldnamenkonformität gegenüber dem veröffentlichten CCSDS-OEM und der Feldsemantik von LunaNet/IOAG sind die unabhängige Referenz; KEIN zertifizierter Test der Interoperabilitätskonformität; illustrative Ephemeride aus öffentlichen Quellen, nicht mit der ESA verbunden; keine TRL-/Heritage-/Behördenbestätigung.

lunar-interop-export.toml

Art lunar-interop-exportnicht per Name einem Registermodul zugeordnet

Lunarer Interoperabilitätsexport — an LunaNet / IOAG ausgerichteter, auf CCSDS beruhender Austausch.

kind = "lunar-interop-export"
frame = "MOON_ME"
time_system = "LTC"
n_states = 9
step_min = 30.0
epoch = "2030-01-01T00:00:00"
object = "LCNS-ILLUSTRATIVE-1"

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-jamming#

Mondeigenes HF-Jamming: Störer-zu-Signal-Verhältnis je Satellit, effektives C/N₀ und Verlust der Aufschaltung für einen selenographischen Oberflächennutzer unter einem Störer an der Mondoberfläche (oder erhöht), über der illustrativen Konstellation im Mondorbit der Klasse Moonlight/LCNS aus öffentlichen Quellen. Setzt die vorhandene offene Jamming-Physik zusammen (jamming::j_over_s_db, effective_cn0_dbhz, rx_antenna_gain_db, lock_status, q_factor) mit der vorhandenen lunaren Himmelsgeometrie (lunar_service::LunarConstellation + topocentric, lunar::selenographic_to_mcmf); weder Geometrie noch Radiometrie werden neu abgeleitet. Anders als bei der Erd-Szenarioart jamming ist der Signalzweig NICHT eine feste Empfangsleistung: Die isotrope Empfangsleistung jedes Satelliten ist sein eigenes Link-Budget EIRP − FSPL(Schrägentfernung), sodass das J/S von Satellit zu Satellit mit lunarer Entfernung und Elevation variiert. Gibt EINE ZEILE JE SICHTBAREM (Epoche, Satellit) LINK aus — Azimut, Elevation, Schrägentfernung, beide Empfangsleistungen, deren Differenz das J/S ist, das J/S, das nominelle und das effektive C/N₀ und den Aufschaltstatus — sowie aggregierte Gütezahlen neben (nie anstelle von) dieser Tabelle und dieselbe Tabelle als CSV-Artefakt. Jedes ausgegebene numerische Feld trägt eine Einheit und eine Herkunftsklasse. VALIDATED Teilergebnisse tragen die Referenz ihres Quellmoduls (die Anti-Jam-Gleichung und das J/S-Link von Kaplan & Hegarty §9,4, extern referenziert in tests/gnss_denied_jamming_resilience_reference.rs; die lunare Geometrie von lunar_service). Die Zusammensetzung selbst wird gegen einen unabhängigen Pfad mit zwei Link-Budgets (linkbudget::received_signal_power_dbw, ein anderer Ausdruck für die Freiraumdämpfung) bis auf 1e-9 dB gegengeprüft. MODELLED: die illustrative Konstellation, die repräsentative EIRP / Störerleistung / Antennengewinne / Rauschtemperatur und das Fehlen von Geländeabschattung, Mehrwegeausbreitung, AGC-Dynamik und adaptiver Nullung. Kein zertifiziertes Produkt zur Dienstverweigerung. Ist ein Störer konfiguriert, enthält der Bericht außerdem eine VERWEIGERUNGSKONTUR MIT EINEM UNSICHERHEITSBAND statt einer von einem einzigen Skalar abgelesenen Kontur: die vollständige gemessene Verteilung des C/N₀ des Nutzsignals über die Tabelle je Satellit (n, min, p05, p25, Median, p75, p95, max, Mittelwert, Stichproben-Standardabweichung und die eigene Asymmetrie der Stichprobe) und die Kontur, ausgewertet an jeder dieser Ordnungsstatistiken unter BEIDEN Verweigerungskriterien, die die Engine kennt — dem bisherigen Leistungsverhältnis (J/S = 30 dB, wie in attack-surface und tracking-loop) und dem Verlust der Aufschaltung (effektives C/N₀ fällt auf tracking_threshold_dbhz, das Kriterium, das die eigene Statusspalte dieses Berichts verwendet) — auf beiden Achsen der Verweigerungsebene (erforderliche Störer-EIRP beim Abstand des Szenarios, Verweigerungsabstand bei der EIRP des Szenarios). Die Bandgrenzen SIND contour(p05) und contour(p95), dieselbe Abbildung in geschlossener Form, angewandt auf die eigenen Quantile der Stichprobe: kein an die Stichprobe angepasstes Sigma und nicht Median ± k·Standardabweichung, wobei die Standardabweichung der Kontinuität halber ausgegeben und von nichts verwendet wird. Ein Quantil, das bereits an oder unter der Tracking-Schwelle liegt, hat kein endliches verweigerndes J/S, und seine Spalten zum Verlust der Aufschaltung sind null mit einem gezählten Grund, nie ein auf einen Wert begrenzter Radius.

lunar-jamming.toml

Art lunar-jammingnicht per Name einem Registermodul zugeordnet

Lunar-natives HF-Jamming: J/S je Satellit für einen Nutzer auf der Mondoberfläche.

kind = "lunar-jamming"
n_sats = 4
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
site_lat_deg = -89.67
site_lon_deg = 129.78

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-joint-od-clock#

Modellierter gemeinsamer Batch-Schätzer für lunare Bahnbestimmung (OD) + Uhren mit mehreren Techniken auf einem SIMULIERTEN Netz: eine Gauss-Newton-Momentaufnahmeanpassung, die geodätische VLBI-Verzögerungen auf Erdbasislinien, lunar-lokale Entfernungen zwischen Station und Satellit und Entfernungen zwischen Satelliten fusioniert, um gemeinsam die 3D-Position einer lunaren Oberflächenstation, die Positionen einer kleinen Konstellation und den Uhrenversatz jedes Assets aus einer eingespeisten Wahrheit zurückzugewinnen. Das ehrliche Hauptergebnis — VLBI macht die volle 3D-Position der Station beobachtbar, wo die lunar-lokale Entfernungsmessung allein eine schwach beobachtete Richtung lässt — wird als Kontrast des Stationsfehlers mit gegenüber ohne VLBI ausgegeben. MODELLED simulierte Wiedergewinnung im geschlossenen Regelkreis (die Wahrheit teilt das Beobachtungsmodell), deterministisch (mit Seed), NICHT mit realen Daten validiert; keine Kraftmodell-Propagation im Löser; kein TRL/Flugerbe/keine Billigung durch eine Agentur.

lunar-joint-od-clock.toml

Art lunar-joint-od-clocknicht per Name einem Registermodul zugeordnet

Lunare gemeinsame Bahnbestimmung (OD) und Uhrenbestimmung mit mehreren Techniken (ein SIMULIERTES Netz).

kind = "lunar-joint-od-clock"
n_sat = 3
n_earth = 6
seed = 42
sigma_vlbi_s = 1.0e-11
sigma_range_m = 0.1
sigma_isl_m = 0.1
station_lat_deg = -88.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-llr-datum#

Helmert-Bezugssystemdatum des Mondes mit sieben Parametern, angetrieben von einer ECHTEN, ARCHIVIERTEN Beobachtungskampagne statt von einer simulierten. Wo lunar-frame-campaign die eingespeiste Transformation entfernte, aber sein Stationsnetz, seinen Zeitplan und sein Sigma je Beobachtung weiterhin als ILLUSTRATIVE Eingaben angab, entnimmt diese Szenarioart alle drei der Messung: Die Epochen sind die Sendezeiten vom Boden archivierter Normalpunkte der ILRS Consolidated Laser Ranging Data, die Beobachtungen sind die tatsächlich auf die fünf Retroreflektor-Arrays auf dem Mond abgefeuerten Laserentfernungen, und jedes Beobachtungsgewicht ist die eigene archivierte Präzision bin_rms/sqrt(n_raw) dieses Normalpunkts, aus der Datei ausgelesen. Die Stationskoordinaten stammen aus der SLR-Lösung IERS ITRF2020 (mit ihren veröffentlichten Geschwindigkeiten auf die Epoche fortgeschrieben) und die Reflektorkoordinaten aus JPL DE430 Tabelle 7 in dem Mean-Earth/Mean-Rotation-Bezugssystem, das das Modell IAU 2015 WGCCRE realisiert. Entfernungspartielle werden zur gemeinsamen Fisher-Informationsmatrix der Reflektorkoordinaten akkumuliert und über denselben Helmert-Entwurf in die Datumskovarianz fortgepflanzt, diagnostiziert durch crate::fim::crlb. Rang, Defekt, Kondition, Spektrum, nicht beobachtbare Richtungen in der Basis mit sieben Parametern, die schwächste Richtung bei vollem Rang und der Anteil jedes Parameters daran werden bei jedem Lauf ausgegeben, und ein nicht beschränkter Parameter wird als NULL mit einem Status veröffentlicht. Die Korrelation zwischen den Arrays wird bei genau null MEASURED statt angenommen, weil eine Laserentfernung ein Array berührt. Ein Datensatz, den die Kataloge nicht platzieren können — eine Station ohne veröffentlichte ITRF-Position — wird ÜBERSPRUNGEN UND GEZÄHLT, nie mit einer ersatzweisen Koordinate versehen. WELCHE VERBINDUNGEN MEASURED UND WELCHE MODELLED SIND, IST DER BERICHT, KEINE FUSSNOTE: Die Ephemeride des Mondzentrums und die Orientierung des IAU-Körpers bleiben modelliert, und ihre gemeinsame Größe wird als Residuum der Einwegentfernung beobachtet minus berechnet über jeden verwendeten Punkt ausgegeben; Troposphäre, Festkörpergezeiten, Stationsexzentrizität, Polbewegung, UT1-UTC, relativistische Verzögerung und Stationsuhren fehlen und stecken in diesem Residuum. Weil ein Ephemeridenfehler eine Kovarianz nur über die Richtung jeder Sichtlinie erreicht, löst jeder Lauf außerdem das gesamte Datum mit allen um sensitivity_tilt_deg gekippten Partiellen (mit wechselndem Vorzeichen) erneut und gibt das Verhältnis aus, sodass die Unempfindlichkeit der Kovarianz gegenüber der modellierten Ephemeride eine Zahl ist statt eines Arguments. Die Zahlen der simulierten Kampagne werden AUSGEFÜHRT und neben den gemessenen ausgegeben, nicht übertragen. MODELLED: Die Zahlen mit sieben Parametern sind eine Cramér-Rao-Schranke für einen reduzierten Parametersatz auf einem realen Zeitplan — kein gelöstes Datum, keine LLR-Analyse und kein geodätisches Produkt. Der eingecheckte Ausschnitt realer Daten wird mit dem Repository ausgeliefert, aber nicht mit dem veröffentlichten Crate; richten Sie data_dir auf eine Kopie davon.

lunar-llr-datum.toml

Art lunar-llr-datumnicht per Name einem Registermodul zugeordnet

Lunares Bezugssystem-Datum als Helmert-Transformation mit sieben Parametern aus einer ECHTEN, ARCHIVIERTEN Beobachtungskampagne (V3).

kind = "lunar-llr-datum"

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-station-geodesy-baseline.toml

Art lunar-llr-datumnicht per Name einem Registermodul zugeordnet

Geodäsie der lunaren Referenzstation, BASISLINIE: allein die heutigen fünf Retroreflektor-Arrays.

kind = "lunar-llr-datum"
epoch_year = 2024
epoch_month = 1
epoch_day = 1
arc_hours = 672.0
step_min = 60.0
delay_sigma_s = 1.0e-11
elevation_mask_deg = 10.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-station-geodesy-with-station.toml

Art lunar-llr-datumnicht per Name einem Registermodul zugeordnet

Geodäsie der Mond-Referenzstation, MIT STATION: die fünf Retroreflektor-Arrays plus ein Retroreflektor und ein VLBI-Bake an einem südpolaren Standort einer Mond-Referenzstation.

kind = "lunar-llr-datum"
extra_earth_elevation_mask_deg = 0.0
name = "lunar-reference-station-reflector"
lat_deg = -89.0
lon_deg = 0.0
alt_m = 0.0
name = "lunar-reference-station-beacon"
lat_deg = -89.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-orbit-rendezvous#

MODELLED Relativnavigation für ein Andocken im Stil von Orion und Lander in einer niedrigen Mondumlaufbahn oder einer elliptischen Polarbahn (Artemis-Klasse). Ein Verfolger und ein Ziel fliegen dieselbe Bahn unter dem Mondkraftmodell des Crates; eine gemeinsame Gauß-Newton-Batchschätzung mit 21 Parametern über den Bogen (zwei Fahrzeugzustände und beständige Biase im Signalraum) fusioniert je Fahrzeug eine absolute Positionslösung aus einer ILLUSTRATIVE Relaisgruppe der LCNS-Klasse (Relais hinter dem Mond werden verworfen, vier sind nötig, der Gleichtakt-Fehler im Signalraum hebt sich zwischen den Fahrzeugen auf) und eine Querverbindungsentfernung, mit einer Entfernungsmessgenauigkeit aus der Code-Tracking-Schranke des LunaNet-AFS-Piloten. Sie gibt den formalen und den Monte-Carlo-Fehler von Relativposition und -geschwindigkeit in den LVLH-Achsen des Ziels an, die Verfügbarkeit der Lösung, den mittleren normierten quadrierten Schätzfehler gegenüber seinem Erwartungswert und jeden Versuch, dessen Iteration nicht konvergiert ist, die Drift durch Vernachlässigung der Gravitationsharmonischen und die weitergegebene volle 6x6-Kovarianz. Für den Kreisfall gilt eine geschlossene Hill/Clohessy-Wiltshire-Prüfung. MODELLED: illustrative Relaisgruppe, Fehlerbudget und Priors; die Wahrheit und der Schätzer teilen ein Kraftmodell, daher prüft der NEES die Selbstkonsistenz und nicht den Modellfehler. Nicht von einer Agentur gebilligt; beratende Software, keine zertifizierte Navigationsausrüstung.

lunar-orbit-rendezvous.toml

Art lunar-orbit-rendezvousnicht per Name einem Registermodul zugeordnet

Mondrendezvous: Relativnavigation für ein Andocken im Stil von Orion und Lander in einer kreisförmigen polaren niedrigen Mondumlaufbahn von 100 km (Artemis-Klasse), mit einem Mondschwerefeld und Signalen im Stil von LunaNet.

kind = "lunar-orbit-rendezvous"
orbit = "llo"
separation_m = 2000.0
arc_s = 7200.0
step_s = 20.0
n_relays = 8
sis_ure_m = 30.0
common_mode_fraction = 0.9

Noch nicht auf GitHub

lunar-orbit-rendezvous-elfo.toml

Art lunar-orbit-rendezvousnicht per Name einem Registermodul zugeordnet

Mondrendezvous in einer elliptischen Polarbahn: Relativnavigation für ein Andocken im Stil von Orion und Lander in einer Polarbahn von 100 km mal 3000 km mit dem Perilunium über dem Südpol (Artemis-Klasse), mit einem Mondschwerefeld und Signalen im Stil von LunaNet.

kind = "lunar-orbit-rendezvous"
orbit = "elfo"
separation_m = 2000.0
arc_s = 7200.0
step_s = 20.0
n_relays = 8
sis_ure_m = 30.0
common_mode_fraction = 0.9

Noch nicht auf GitHub

lunar-station-coverage#

Modellierte Abdeckung einer lunaren Referenzstation: ein Monte-Carlo-Durchlauf des Modells für lunares differentielles PNT über ein Nutzergitter am Südpol und einen Tag an Epochen. Eine differentielle Referenzstation an einem bekannten Standort am Südpol korrigiert eine angegebene Konstellation (illustrativ keplersch oder eine tabellierte Ephemeride) mit einem angegebenen Signal-in-Space-Fehler, Vermessungsfehler, einer Korrekturlatenz und Quantisierung der Verbindung; je Punkt und über die Region gibt es den Perzentilwert des korrigierten und des unkorrigierten Positionsfehlers (3D, horizontal, vertikal), die Verfügbarkeit, die Abdeckung gegen eine angegebene Schwelle, Schutzniveaus nach DO-229E, den Abdeckungsradius je Azimut und das Link-Budget der Korrekturstrecke an der Station und am ungünstigsten Punkt an. Keine Aussage über die Leistung irgendeines realen Systems; nicht mit einer Agentur verbunden oder von ihr gebilligt. MODELLED.

lunar-station-coverage.toml

Art lunar-station-coveragenicht per Name einem Registermodul zugeordnet

Abdeckung der Mond-Referenzstation: welche Positionsgenauigkeit und welches Schutzniveau ein Nutzer von einer differentiellen Mond-Referenzstation an einem bekannten südpolaren Standort über die südpolare Region und einen Tag erhält.

kind = "lunar-station-coverage"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-station-coverage-public-sources.toml

Art lunar-station-coveragenicht per Name einem Registermodul zugeordnet

Abdeckung der Mond-Referenzstation unter den ÖFFENTLICH GENANNTEN Annahmen: dieselbe Art wie lunar-station-coverage.toml, wobei jede Eingabe, die eine öffentliche Quelle nennt, daraus gesetzt und mit der Quellen-ID zitiert ist; jede Eingabe, die keine Quelle nennt, bleibt aus dem Standard im Verzeichnisbaum und ist als ILLUSTRATIVE gekennzeichnet. Quellen (abgerufen 2026-10-12; Titel, Kennungen und Lizenzen in docs/LUNAR-REFERENCE-STATION.md): S1 arXiv:2602.08432v3 S2 IOAG Cislunar PNT Workshop 2025, „Lunar local Differential PNT and Selenodetic Reference Station“ (Folien) S3 UNOOSA ICG WG-B, Lunar PNT, Juni 2024 (LunarPNT_Jun24_01_04.pdf) S4 IOAG Cislunar 2026, „Moonlight Programme Development Status“

kind = "lunar-station-coverage"
n_sats = 4
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.4765

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-station-coverage-terrain.toml

Art lunar-station-coveragenicht per Name einem Registermodul zugeordnet

Abdeckung der Mond-Referenzstation mit Gelände: das mitgelieferte Szenario lunar-station-coverage mit einem Horizont je Standort, per Ray-Marching über einem realen digitalen Mondhöhenmodell an der Station und an jedem Nutzerpunkt, anstelle der flachen Elevationsmaske allein.

kind = "lunar-station-coverage"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-surface#

MODELLED Verfügbarkeit von Positionierung und Zeitgebung an der Oberfläche nach Standort und Jahreszeit für Standorte am Südpol im Artemis-Stil. Für jeden Standort und jede Jahreszeit (eine Epoche und ein Fenster danach) gibt sie die Relaispositionierung an (vier oder mehr Relais einer ILLUSTRATIVE Konstellation der LCNS-Klasse in Sicht und PDOP unter einer Schwelle, aus denselben Funktionen wie moonlight-service-volume und, mit einem Geländeabschnitt, dem per Strahlverfolgung berechneten Horizont des Geländes von lunar-station-coverage), ob Erde und Sonne über dem Horizont des Standorts stehen (analytische Sonne, analytischer Mond und analytische Mondorientierung, Libration eingeschlossen, was sich mit der Jahreszeit verändert) und die Zeitgebungsverfügbarkeit (ein Relais oder die Erde in Sicht) mit der längsten Strecke ohne beides, dem holdover, den eine Oberflächenuhr überbrücken muss. Ein Ergebnis für einen einzelnen Standort ist bitgenau gleich dem von moonlight-service-volume. MODELLED: illustrative Kepler-Relaisgruppe an einem Mond mit mittlerer Rotation; der Relaiswert ändert sich nicht mit der Jahreszeit; das Gelände ist der LOLA-Ausschnitt von 1200 m. Nicht von einer Agentur gebilligt; beratende Software, keine zertifizierte Navigationsausrüstung.

lunar-surface.toml

Art lunar-surfacenicht per Name einem Registermodul zugeordnet

PNT- und Zeitgebungsverfügbarkeit auf der Mondoberfläche nach Standort und Jahreszeit (Standorte am Südpol im Artemis-Stil).

kind = "lunar-surface"
season_dates = ["2028-01-01", "2028-04-01", "2028-07-01", "2028-09-30"]
window_days = 27.3217
step_min = 30.0
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7

Noch nicht auf GitHub

lunar-surface-terrain.toml

Art lunar-surfacenicht per Name einem Registermodul zugeordnet

PNT- und Zeitgebungsverfügbarkeit auf der Mondoberfläche nach Standort und Jahreszeit mit dem echten LOLA-Geländehorizont des Südpols (Standorte am Südpol im Artemis-Stil).

kind = "lunar-surface"
season_dates = ["2028-01-01", "2028-04-01", "2028-07-01", "2028-09-30"]
window_days = 27.3217
step_min = 30.0
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7

Noch nicht auf GitHub

lunar-time-budget#

MODELLED durchgängiges Zeitfehlerbudget der koordinierten Mondzeit (LTC): die sieben LTC-Fehlerterme, zusammengestellt als Zeitfehlerkurven x_i(τ) über ein ganzes Gitter von Mittelungszeiten, per Wurzelsumme zu x_Σ(τ) zusammengefasst, und der ÜBERGANG τ zwischen Uhr und Bezugssystem, bei dem der wachsende Uhrenterm den konstanten Echtzeit-Term der Bezugssystemrealisierung überholt (darunter ist das Budget vom Bezugssystem begrenzt, darüber von der Uhr) — die ehrliche Antwort auf das Artefakt eines einzelnen τ. Die τ-Steigungen sind in geschlossener Form und analytisch prüfbar (Uhr τ^{+1/2}/τ^{+1}, Böden τ^0, Messung τ^{-1/2}), und die Uhrenzeilen reproduzieren die veröffentlichten Eintages-Spezifikationen der Uhren (crate::clock_specs); die GRÖSSEN der Böden für HF-/optischen Link, Bezugssystemrealisierung, relativistisches Residuum und Ephemeride sind modellierte Budgetzuweisungen (dokumentierte Standardwerte, vom Aufrufer überschreibbar), keine Messungen. Der Beitrag ist das reproduzierbare Übergangs-τ, keine zertifizierte Zahl je Term; nicht zertifiziert für den operativen Zeithaltebetrieb.

lunar-station-time-lab.toml

Art lunar-time-budgetdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Zeitlabor der Mond-Referenzstation: eine Miniatur-Rubidiumuhr (miniRAFS), gesteuert auf die Koordinierte Mondzeit (LTC) und dann frei laufen gelassen.

kind = "lunar-time-budget"
clock = "passive-h-maser"
clock = "mini-rafs"
steer_residual_ns = 0.5
ltc_realisation_ns = 0.05
station_height_sigma_m = 0.0
thresholds_ns = [1.0, 10.0, 100.0]
horizons_s = [3600.0, 86400.0, 604800.0, 2592000.0]

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-time-budget.toml

Art lunar-time-budgetdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Durchgängiges Zeitfehlerbudget der koordinierten Mondzeit (LTC) über ein Tau-Raster.

kind = "lunar-time-budget"
clock = "passive-h-maser"

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-time-offset#

Modellierte relativistische Uhrenrate Erde–Mond (Lunar Coordinate Time, LTC/TCL): die säkulare Rate LTC−TT aus der Differenz der Eigenpotenziale und dem kinetischen Term des Mondes, ausgegeben mit dem veröffentlichten Band von 56–59 µs/Tag, plus der über einen Horizont akkumulierte Versatz.

lunar-time-offset.toml

Art lunar-time-offsetnicht per Name einem Registermodul zugeordnet

Lunare Koordinatenzeit (LTC/TCL): die relativistische Gangrate der Uhren zwischen Erde und Mond.

kind = "lunar-time-offset"
epoch_year = 2000
epoch_month = 1
epoch_day = 1
horizon_days = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-vlbi#

Modellierte geodätische Lunar-VLBI-Laufzeitobservable: Eine Erdbasislinie (zwei Bodenstationen, GCRS) beobachtet ein Einweg-Signal eines Beacons der NovaMoon-Klasse auf der Mondoberfläche. Sie liefert die Nahfeld-Laufzeit als Zwei-Entfernungs-Differenz, ihre Rate und die Wellenfrontkrümmungs-Nahfeldkorrektur über einen Durchgang — gegengeprüft gegen die Ebene-Welle-Δ-DOR-Observable derselben Codebasis im Fernfeldgrenzfall, mit durch finite Differenzen verifizierten Partialableitungen. Der analytische Standardpfad ist MODELLED und trägt die Vorbehalte zu Bezugssystemkonsistenz, Polbewegung xp=yp=0 und Ebene-Welle-gegen-Nahfeld. Wird planetary_kernel_path, earth_orientation_kernel_path und moon_orientation_kernel_path gesetzt, läuft stattdessen der Kernel-Pfad (DE440, MOON_PA_DE440, ITRF93; konvergierte baryzentrische Lichtlaufzeiten; ergänzt die Beacon- und Stationspartialableitungen der Epoche), dessen newtonsche Laufzeit und Partialableitungen mit den konvergierten Lichtlaufzeiten von NAIF SPICE auf 0,06 ps und 7.4e-9 übereinstimmen. Nicht gegen reale VLBI-Daten validiert.

lunar-vlbi.toml

Art lunar-vlbidie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Lunares geodätisches VLBI: eine Erdbasislinie, die ein Beacon auf der Mondoberfläche beobachtet.

kind = "lunar-vlbi"
beacon_lat_deg = 0.0
beacon_lon_deg = 0.0
beacon_alt_m = 0.0
epoch_year = 2024
epoch_month = 1
epoch_day = 1
horizon_hours = 6.0

In Kshana Studio öffnen · Auf GitHub ansehen

lunar-vlbi-fim#

Kovarianz der Stationskoordinaten bei Mond-VLBI: die Verzögerungs-Partiellen der Observablen lunar-vlbi, über einen ausdrücklichen ZEITPLAN (Basislinien x Epochen) zu einer Fisher-Informationsmatrix akkumuliert, invertiert und gemeldet als Kovarianz der Stationskoordinaten und Sigma je Koordinate der Station — eine berechnete Engine-Ausgabe statt einer skalaren Verzögerungspräzision, durchgereicht durch einen angenommenen isotropen Äquipartitionsfaktor g = 3. Der Zustand trägt ERDFESTE (ITRS) Stationskoordinaten, sodass die Jacobi-Matrix die inertiale Partielle ist, gedreht mit der GCRS->ITRS-Matrix jeder Epoche: Die Erdrotation macht diese Koordinaten beobachtbar, und der Bericht MISST die erdfeste Sichtlinien-Überstreichung und die Deklination der Bake, statt sie anzunehmen. Eine Beobachtung ist ein Paar (Basislinie, Epoche) mit BEIDEN Stationen über der Elevationsmaske, gewichtet mit 1/delay_sigma_s^2. Bei jedem Lauf werden Rang, Datumsdefekt, Konditionszahl, das volle Informationsspektrum, die Kovarianzmatrix, Sigma je Station und Achse und 3-D sowie der Nullraum des freien Netzes gemeldet; bei Rangdefizit wird das Kopf-Sigma als NULL mit einem Status veröffentlicht, nie aus einer fast singulären Inversen abgelesen. Der Äquipartitionswert c*delay_sigma_s*sqrt(g/N) für denselben ZEITPLAN wird neben dem berechneten Wert mit dem Verhältnis ausgegeben, zusammen mit der isotropen Spurschranke sqrt(p/trace(M)), die AM-HM zu einer harten Untergrenze macht — das Verhältnis ist also die Anisotropie, die die Annahme verworfen hat. Der Verzögerungsschluss tau_ik = tau_ij + tau_jk macht nur n-1 der n(n-1)/2 Basislinien geometrisch unabhängig; der Bericht nennt beide Zahlen. MODELLED: Die Ephemeride des Mondmittelpunkts, die Stationsuhren, die Troposphäre und die Erdorientierungsparameter werden FEST gehalten, und Beobachtungen werden als unabhängig behandelt, sodass die Kovarianz eine Cramér-Rao-Schranke für einen reduzierten Parametersatz ist, kein vorhergesagtes Sitzungsergebnis; das Verzögerungs-Sigma, die Stationskoordinaten und der Zeitplan sind Eingaben. Die Partielle, die die Jacobi-Matrix der geometrischen Verzögerung auslässt (der differenzierte Shapiro-Term), wird per finiter Differenz gemessen und ausgegeben. Kein geodätisches Produkt.

lunar-vlbi-fim.toml

Art lunar-vlbi-fimnicht per Name einem Registermodul zugeordnet

Kovarianz der Stationskoordinaten bei lunarem VLBI aus einem expliziten Beobachtungsplan (G8, Paper D3).

kind = "lunar-vlbi-fim"

In Kshana Studio öffnen · Auf GitHub ansehen

mars-pnt#

PNT im Deep Space am Mars: Eine simulierte MARCONI-Relais-Konstellation (areostationäre + geneigte Relais, die Einweg senden + Zweiweg an eine Deep-Space-Station weiterleiten) navigiert einen Referenznutzer (transfer | lmo | surface) durch den gemeinsamen radiometrischen Einweg-/Zweiweg-Fusionsschätzer. Sie gibt pro Epoche Geometrie/Sichtbarkeit, den erreichten RMS gegen die Wahrheit und die formale Kovarianz (1σ / 3σ Position) aus — eine ehrliche simulierte Gütezahl, KEIN zertifiziertes Schutzniveau.

mars-pnt-lmo.toml

Art mars-pntnicht per Name einem Registermodul zugeordnet

Mars-PNT — ein Nutzer in niedriger Marsumlaufbahn, navigiert gegen die simulierte MARCONI-Relaiskonstellation (areostationäre Relais, die Einweg senden + Zweiweg an eine Station im tiefen Weltraum weiterleiten) durch den gemeinsamen radiometrischen Fusionsschätzer für Einweg/Zweiweg.

kind = "mars-pnt"
user = "lmo"
clock_class = "uso"
step_s = 60.0
duration_s = 7200.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4

In Kshana Studio öffnen · Auf GitHub ansehen

mars-pnt-surface.toml

Art mars-pntnicht per Name einem Registermodul zugeordnet

Mars-PNT — ein fester Oberflächennutzer (ein Lander / Rover auf der rotierenden Marsoberfläche), navigiert gegen die simulierte MARCONI-Relaiskonstellation durch den gemeinsamen radiometrischen Fusionsschätzer für Einweg/Zweiweg.

kind = "mars-pnt"
user = "surface"
clock_class = "uso"
step_s = 30.0
duration_s = 7200.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4

In Kshana Studio öffnen · Auf GitHub ansehen

mars-pnt-transfer.toml

Art mars-pntnicht per Name einem Registermodul zugeordnet

Mars-PNT — ein Mars-Transfer-/Einfangnutzer (ein hoher, exzentrischer areozentrischer Bogen — der lange Bogen, den ein Fahrzeug im Anflug / in einer Einfangbahn fliegt), navigiert gegen die simulierte MARCONI-Relaiskonstellation durch den gemeinsamen radiometrischen Fusionsschätzer für Einweg/Zweiweg.

kind = "mars-pnt"
user = "transfer"
clock_class = "dsac"
step_s = 120.0
duration_s = 28800.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4

In Kshana Studio öffnen · Auf GitHub ansehen

mission-thread#

MODELLED Fehlerbudget für Navigation und Zeitgebung einer genannten Kette von Missionsphasen, vom Start bis zum Wiedereintritt: Start und Aufstieg, Rendezvous und Andocken in niedriger Erdumlaufbahn (wiederholbar), translunare Injektion und cislunarer Flug, Rendezvous in der Mondumlaufbahn, Abstieg, Aufenthalt an der Oberfläche, Aufstieg sowie Rückkehr und Wiedereintritt, jede Phase eine von acht registrierten Arten mit eigenen Sensoren und eigenem Filter. Die 6x6-Kovarianz, die Uhr und das Bezugssystem werden nach einer genannten Regel von Phase zu Phase weitergegeben (carry, inflate oder reacquire); Umrechnungen von Bezugssystem und Zeitskala (GCRF, MCI, MCMF, UTC, TT, TDB, LTC) sind eigene Budgetzeilen, wobei der Zustand des Mondes aus einem optionalen DE440-Kernel-Ausschnitt stammt und die analytische Reihe als genannter Ersatz dient. Eine optionale Bodennetz-Überlagerung legt den Verfolgungseinsatz jeder Phase fest. Sie gibt das Budget je Phase an (Eintritts-, Spitzen- und Austritts-1-Sigma, jeder Beitrag mit seiner Einheit), die Marge gegenüber einer genannten Anforderung, das schwächste Glied, die Ereignisse und eine Zeitleistengrafik. MODELLED: Jede Zahl ist eine genannte Eingabe; die Kette folgt einem Stapel, und es wird kein Fahrzeug modelliert. Nur öffentliche Quellen; weder mit einer Agentur verbunden noch von ihr gebilligt; beratende Software, keine zertifizierte Navigationsausrüstung.

mission-thread-artemis-class.toml

Art mission-threadnicht per Name einem Registermodul zugeordnet

Ein Missionsstrang im Stil von Artemis: das Fehlerbudget für Navigation und Zeitgebung einer Phasenkette, vom Start bis zum Wiedereintritt, aufgebaut aus öffentlichem Material zum Einsatzkonzept.

kind = "mission-thread"
title = "Artemis-class mission thread (ILLUSTRATIVE)"
seed = 20261024
epoch_utc = "2028-01-01T00:00:00Z"
moon_kernel_path = "tests/fixtures/mission_thread/de440s_moon_2028-01-01_2028-04-01.bsp"
min_elevation_deg = 10.0
handover_gap_s = 120.0
step_s = 300.0

Noch nicht auf GitHub

mission-thread-short.toml

Art mission-threadnicht per Name einem Registermodul zugeordnet

Ein kurzer Missionsstrang, der allein aus einer Binärdatei läuft: Start und Aufstieg, ein Rendezvous im niedrigen Erdorbit, ein Tag translunarer Flugphase sowie Rückkehr und Eintritt, mit der Mondposition aus der analytischen Reihe (keine Kernel-Datei). Er ist das mitgelieferte Gegenstück zu mission-thread-artemis-class, das einen aus einem Checkout geschnittenen Mond-Kernel liest.

kind = "mission-thread"
title = "Short mission thread, launch to entry (ILLUSTRATIVE)"
seed = 20261028
epoch_utc = "2028-01-01T00:00:00Z"
frame = "gcrf"
x = [5285007.866, 1880185.649, 3025316.817, -137.105, 385.389, 0.0]
sigma_pos_m = 10.0
sigma_vel_mps = 0.01

In Kshana Studio öffnen · Noch nicht auf GitHub

moonlight-service-volume#

Modellierte Analyse des lunaren Navigations-Service-Volumens aus einer ILLUSTRATIVE Mondorbit-Konstellation der Moonlight/LCNS-Klasse aus öffentlichen Quellen (nicht mit der ESA verbunden): Sie überstreicht ein selenographisches Breiten-/Längengitter über einen Zeithorizont und gibt DOP / Abdeckung / Verfügbarkeit (≥4 Satelliten UND PDOP < Schwellwert) sowie eine verallgemeinerte lunare ARAIM-Schutzniveau-Hüllkurve (HPL/VPL) über das Volumen aus. Die DOP-Geometrie VERWENDET den gnss_lib_py-VALIDATED-Kern (crate::orbit::dop) wieder; das Schutzniveau VERWENDET die lunare ARAIM-Maschinerie LunaNet LNIS (crate::lunar, σ_URE≈30 m) wieder und reduziert sich als Sonderfall auf das bestehende Südpol-Schutzniveau. Zusammensetzung der Stufe MODELLED: ein kreisförmiger/elliptischer Kepler-Relaissatz (nicht die reale differenzialkorrigierte LCNS/NRHO-Ephemeride), ein Mond mit mittlerer Rotation (keine Libration/kein präzedierender Pol). Deterministisch (reine Geometrie). Kein TRL, keine Flugerfahrung, keine Billigung durch eine Agentur.

moonlight-service-volume.toml

Art moonlight-service-volumenicht per Name einem Registermodul zugeordnet

Analyse des SERVICEVOLUMENS der lunaren Navigation — Konstellation der Klasse Moonlight / LCNS.

kind = "moonlight-service-volume"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
lat_min_deg = -90.0
lat_max_deg = -60.0

In Kshana Studio öffnen · Auf GitHub ansehen

ntn-positioning#

Positionierung aus einem 5G-Downlink eines nicht-terrestrischen Netzes (NTN) im S-Band des mobilen Satellitendienstes (MSS) (3GPP-Band n256, Downlink 2170 bis 2200 MHz; Standardträger 2172,5 MHz): die Cramér-Rao-Schranke (CRB) für die Ankunftszeit, c / (2 pi beta sqrt(2 (C/N0) T)), mit beta als quadratisch gemittelter (Gabor-)Bandbreite des flachen OFDM-Spektrums (B/sqrt(12)), und für die Doppler-Verschiebung eines komplexen Tons, sqrt(3 / (2 pi^2 (C/N0) T^3)), für jedes Signal (standardmäßig ein New-Radio-Kanal von 5 MHz mit 4,5 MHz belegt und ein Schmalbandkanal von 200 kHz mit 180 kHz belegt); dann, über jede LEO-Konstellation, Downlink-Ankunftszeit-Fixes mit unbekannter Empfängeruhr (mit Seed, mit der Schranke plus einem Netzwerksynchronisationsfehler als Sigma), deren PDOP und formales 3D-Sigma sowie ein Ein-Satelliten-Doppler-Fix über den längsten Durchgang bei festgehaltener Höhe. MODELLED: Der Schritt von der Bandbreite zur Schranke ist die Lehrbuch-Formel in geschlossener Form, geprüft gegen numerische Integration der flachen und bandbegrenzten BPSK-Spektren (interne Konsistenz, kein veröffentlichter Rechenwert festgelegt), und die Positionierungsgenauigkeit ist eine Schranke auf einem mehrwegefreien Kanal mit einem angegebenen Synchronisationsfehler, kein erzieltes Ergebnis.

ntn-5g-positioning.toml

Art ntn-positioningnicht per Name einem Registermodul zugeordnet

Positionierung aus einem 5G-Downlink eines nichtterrestrischen Netzes (NTN) im mobilen Satelliten-S-Band.

kind = "ntn-positioning"
seed = 5
carrier_hz = 2172.5e6
integration_s = 0.1
doppler_integration_s = 1.0
sync_error_m = 1.0
duration_s = 600.0
step_s = 10.0

In Kshana Studio öffnen · Auf GitHub ansehen

oem-interop#

CCSDS-OEM-Interoperabilitätsbrücke: Importiert eine Orbit Ephemeris Message, die von einem externen Flugdynamik-Werkzeug erzeugt wurde (GMAT/Orekit/STK geben alle OEM aus), und gibt ihre Segmente/Objekte/Bezugssysteme/Epochenspanne sowie eine Geschwindigkeits-Konsistenzprüfung aus; ohne Eingabe führt sie eine erzeugte Referenzbahn im Rundlauf und gibt die Import↔Export-Treue aus. MODELLED strukturelle/physikalische Einlesprüfung, KEINE Bahngenauigkeits-Validierung der Quelle.

oem-interop.toml

Art oem-interopnicht per Name einem Registermodul zugeordnet

Demonstrator für die Interoperabilitätsbrücke CCSDS OEM (Interop GMAT / Orekit / STK).

kind = "oem-interop"

In Kshana Studio öffnen · Auf GitHub ansehen

optical-atmosphere#

MODELLED optische PNT durch die Atmosphäre: Für eine optische Strecke und eine Menge von Bodenstandorten mit angegebenem Wolkenklima gibt sie den wellenlängen- und elevationsabhängigen Klarluftverlust (Kim-Sichtweitengesetz plus Rayleigh), den Hufnagel-Valley-Turbulenzzustand (Rytov-Varianz, Szintillationsindex, Gamma-Gamma-Parameter, Aperturmittelung), die wetterbedingte Verfügbarkeit gegen die Streckenreserve (optische Wolkentiefe aus einem lognormalen Flüssigwasser-Klima, geometrisch-optische Extinktion, unabhängiger Turbulenzschwund), die für Zielverfügbarkeiten nötige Streckenreserve, die Verteilung der Ausfalldauer, das Anwachsen des Zeitgebungs- und Entfernungsmessfehlers pro Ausfall über das Uhren-Holdover-Modell, die entfernungskorrelierte Standortdiversitäts-Verfügbarkeit und Was-wäre-wenn-Gewinne für Verbesserungstechniken (Wellenlänge, Empfangsapertur, Szintillationsreduktion durch adaptive Optik, zusätzliche Reserve) aus. VALIDATED als Implementierung der angegebenen Formeln gegen ein unabhängiges mpmath-Referenz: Rytov-Varianz, Szintillationsindex, Gamma-Gamma-Schwundwahrscheinlichkeit, Aperturmittelungsfaktor, optische Tiefe von Wolken und Klarluft. MODELLED: jede Wetter-, Technik- und Uhren-Eingabe sowie die Unabhängigkeits- und Copula-Annahmen; es wurde kein gemessener Verfügbarkeitsnachweis verglichen. Beratende Analyse, kein zertifiziertes Verfügbarkeits- oder Navigationsprodukt.

optical-atmosphere-network.toml

Art optical-atmospherenicht per Name einem Registermodul zugeordnet

Optische PNT durch die Atmosphäre: drei ILLUSTRATIVE Bodenstandorte (ein bewölkterer nördlicher Standort, ein mittlerer zentraler Standort und ein klarerer südlicher Standort), die ein optisches LEO-Terminal bei 30 Grad Elevation bei 1550 nm sehen. Die Wolkenklimata sind angegebene Eingaben, keine Messungen oder Werte irgendeines Datensatzes, daher ist jede Verfügbarkeit unten MODELLED. Der Lauf meldet je Standort den Klarluftverlust, den Turbulenzzustand nach Hufnagel-Valley, die Verfügbarkeit gegenüber der Streckenmarge, die nötige Marge für 40 / 50 / 60 / 70 Prozent (eine optische Strecke kann dichte Wolken nicht durchdringen, sodass ein Standort eine Verfügbarkeitsobergrenze hat, die keine Marge anhebt, je Standort gemeldet), die Verteilung der Ausfalldauern und das Wachstum des Zeitfehlers je Ausfall für drei Uhrenklassen, dann die Verfügbarkeit bei Standortdiversität der besten 1, 2 und 3 Standorte mit unabhängigem und mit entfernungskorreliertem Wetter (500 km Dekorrelationslänge).

kind = "optical-atmosphere"
wavelength_nm = 1550.0
elevation_deg = 30.0
availability_targets_pct = [40.0, 50.0, 60.0, 70.0]
tx_power_w = 0.5
tx_aperture_m = 0.1
rx_aperture_m = 0.4
range_km = 1000.0

In Kshana Studio öffnen · Auf GitHub ansehen

optical-atmosphere-techniques.toml

Art optical-atmospherenicht per Name einem Registermodul zugeordnet

Was-wäre-wenn zu Verbesserungstechniken für einen ILLUSTRATIVE Bodenstandort: eine Wellenlängenänderung, eine größere Empfangsapertur, eine Verringerung der Szintillation durch adaptive Optik und zusätzliche Marge, jeweils vorhergesagt als Verfügbarkeitsgewinn gegenüber der Basislinie desselben Standorts. Die Gewinne sind angegebene Eingaben (Kshana modelliert keinen Regelkreis der adaptiven Optik), eine neue Wellenlänge oder Apertur wertet das Budget bei klarem Himmel, den Klarluftverlust und die Aperturmittelung neu aus, und alles ist MODELLED. Das Terminal ist absichtlich margenbegrenzt (etwa 3 dB vor der Atmosphäre), damit die Techniken ins Gewicht fallen; der Lauf nennt außerdem die Wolkenobergrenze, die keine Technik anhebt. Ziele unter 100 Prozent der Margentabelle werden als nötige Zusatzmarge gemeldet (negativ bedeutet einen Überschuss).

kind = "optical-atmosphere"
wavelength_nm = 1550.0
elevation_deg = 25.0
availability_targets_pct = [50.0, 60.0, 70.0]
tx_power_w = 0.5
tx_aperture_m = 0.1
rx_aperture_m = 0.3
range_km = 1000.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit#

GNSS-Verfügbarkeit + DOP aus einer Bahnkonstellation (Walker / TLE / RINEX).

orbit-gnss-challenged.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit, abgeleitet aus der Bahngeometrie (nicht aus von Hand gesetzten Fenstern).

kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 10.0
sigma_uere_m = 1.0
step_s = 60.0
duration_s = 86400.0
altitude_km = 8000.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-molniya.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit für einen Nutzer auf stark exzentrischer Bahn (Molniya), aus der Bahngeometrie.

kind = "orbit"
seed = 11
threshold_ns = 5.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 20229.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-multignss.toml

Art orbitnicht per Name einem Registermodul zugeordnet

Multi-GNSS-Verfügbarkeit aus der Bahngeometrie: GPS + Galileo kombiniert.

kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 10.0
sigma_uere_m = 1.0
step_s = 60.0
duration_s = 86400.0
altitude_km = 8000.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-real-tle.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit aus ECHTER Satellitengeometrie, über Two-Line-Element-Sätze.

kind = "orbit"
seed = 13
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-rinex.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit aus einer echten RINEX-3-Broadcast-Ephemeride.

kind = "orbit"
seed = 13
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-sgp4-gps.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit aus der ECHTEN GPS-Konstellation, propagiert mit SGP4/SDP4.

kind = "orbit"
seed = 17
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0

In Kshana Studio öffnen · Auf GitHub ansehen

orbit-urban-canyon-skyline.toml

Art orbitnicht per Name einem Registermodul zugeordnet

GNSS-Verfügbarkeit und Dilution of Precision am Boden einer Stadtstraße: die Art orbit mit einem Nutzer an einem Bodenstandort (user_site) unter der Horizontprofil-Voreinstellung city-street.

kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 300.0
duration_s = 86400.0
lat_deg = 52.0

In Kshana Studio öffnen · Auf GitHub ansehen

passes#

Vorhersage von Bodenstations-Überflügen: die Sichtbarkeits-Überflüge im Zeitbereich (AOS/TCA/LOS, maximale scheinbare Elevation, Dauer) einer Kreisbahn, als mittlere SGP4-Elemente zu Fensterbeginn, über einer Station oberhalb einer Elevationsmaske über ein Fenster hinweg, mit der gesamten Zugriffszeit. SGP4/SDP4-Propagation im erdfesten Bezugssystem IAU 2006/2000A (optional UT1 - UTC und Polbewegung), troposphärische Refraktion nach ITU-R P.834-9 und die Downlink-Lichtlaufzeit (beide standardmäßig an), Durchgänge auf 1e-7 s gelöst und die Kulmination per Goldener-Schnitt-Suche. Die Überflug-Geometrie ist gegen Orekit 13.1.8 an Stationen auf Meereshöhe VALIDATED; die Bahn und die Station des Szenarios sind illustrative Eingaben.

passes.toml

Art passesArt hat validierte Registerzeilen · 1 von 1 Zeilen validiert

Demonstrator zur Vorhersage von Bodenstationsüberflügen (Bodensegment & Betrieb).

kind = "passes"
altitude_km = 550.0
inclination_deg = 97.6
raan_deg = 0.0
arg_lat_deg = 0.0
station_lat_deg = 52.2
station_lon_deg = 4.4
station_alt_m = 0.0

In Kshana Studio öffnen · Auf GitHub ansehen

pvt#

Einzelpunkt-Positionierung aus realen Beobachtungen: die Position eines Empfängers aus einer RINEX-3-Beobachtungsdatei und einer Broadcast-Navigationsdatei lösen (Code-Pseudoentfernungen, Broadcast-Ephemeride, Klobuchar-Ionosphäre, Saastamoinen/Niell-Troposphäre), optional gegen eine vermessene Koordinate validiert.

pvt-abmf.toml

Art pvtnicht per Name einem Registermodul zugeordnet

Einzelpunktpositionierung (SPP) aus echten Beobachtungen einer vermessenen IGS-Station.

kind = "pvt"
mask_deg = 5.0
dual_frequency = true
truth_ecef = [2919786.4480, -5383745.1780, 1774604.7340]
obs_rinex = """
nav_rinex = """

In Kshana Studio öffnen · Auf GitHub ansehen

quantum-anomaly-detect#

MODELLED Fehler-/Anomalieerkennung für Quanten-PNT-Systeme: ein gekennzeichneter Fehlerkatalog (Uhr: Frequenzsprung/Drift/Lock-Verlust; Sensor: Bias-Sprung/Ausfall), eine ROC-AUC der Erkennungsstatistik (mit einem Bootstrap-Konfidenzintervall aus der extern validierten eval_stats) und ein minimal erkennbarer Fehler bei fester Fehlalarmrate, wobei der quantenuhrgestützte Monitor (geringeres Rauschen) kleinere Fehler erkennt — als ehrliche TradeEvidence + Repräsentativität. Gaußsches Modell der Erkennungsstatistik (AUC = Phi(mu/(sigma*sqrt2))); modelliert die Klasse, illustrative Parameter aus öffentlichen Quellen, kein TRL/Flug/Zertifizierung.

quantum-anomaly-detect.toml

Art quantum-anomaly-detectnicht per Name einem Registermodul zugeordnet

Fehler-/Anomalieerkennung für Quanten-PNT-Systeme — gekennzeichneter Fehlerkatalog + ROC-AUC + kleinster erkennbarer Fehler, quantenuhrengestützter gegenüber klassischem Monitor. MODELLED; illustrative Parameter aus öffentlichen Quellen; modelliert die Klasse, keine Aussage zu TRL oder Flug.

kind = "quantum-anomaly-detect"
fault_mu = 1.0
quantum_sigma = 0.3
classical_sigma = 1.0
pfa = 1.0e-3
pd = 0.9
samples = 2000
seed = 42

In Kshana Studio öffnen · Auf GitHub ansehen

quantum-gnss-free-nav#

MODELLED GNSS-freie Quantennavigation: während eines GNSS-Ausfalls ein inertiales Budget mit Quanten-(Kaltatom-Interferometer) gegen ein klassisches INS der Navigationsklasse — Positionsfehlerwachstum über den Auslauf, Holdover bis zu einer Positionsschwelle und der Quanten-gegen-klassisch-Trade als ehrliche TradeEvidence mit Repräsentativität. Ehrlicher Beobachtbarkeitshinweis: Ohne externen Fix ist der Beschleunigungsmesser-Bias unbeobachtbar, sodass der Fehler wächst; der Quantensensor verlangsamt, aber schließt diese Lücke nicht. Illustrative Gerätparameter aus öffentlichen Quellen; modelliert die Klasse, kein TRL/Flug/Zertifizierung.

quantum-gnss-free-nav.toml

Art quantum-gnss-free-navnicht per Name einem Registermodul zugeordnet

GNSS-freie Quantennavigation — Quanten- (Kaltatom-Interferometer) gegenüber klassischer INS-Koppelnavigation in Navigationsgüte über einen GNSS-Ausfall. MODELLED; illustrative Geräteparameter aus öffentlichen Quellen; modelliert die Klasse, keine Aussage zu TRL oder Flug.

kind = "quantum-gnss-free-nav"
outage_s = 300.0
threshold_m = 100.0

In Kshana Studio öffnen · Auf GitHub ansehen

quantum-time-transfer#

MODELLED vertrauenswürdige Quantenzeitkette: ein durchgängiges Zeitübertragungsbudget mit Quanten- (optische Gitteruhr + Verschränkungs-/Einzelphotonenstrecke) gegen klassisch (CSAC + RF-Zweiweg), ein wiederverwendetes Zeitgebungs-Schutzniveau + eine Sicherheitsgütezahl gegen Verzögerungs-/Replay-Angriffe (1-P_md), eine Erkennungswahrscheinlichkeit für Uhrenanomalien + CUSUM-Latenz und der Quanten-gegen-klassisch-Trade als ehrliche TradeEvidence mit einem Repräsentativitäts- + Gaps-to-flight-Eintrag. Illustrative Geräte-/Streckenparameter aus öffentlichen Quellen; modelliert die Klasse, kein TRL/Flug/Zertifizierung beansprucht.

quantum-time-transfer.toml

Art quantum-time-transfernicht per Name einem Registermodul zugeordnet

Vertrauenswürdige Quanten-Zeitgebung — durchgängige Zeitübertragungskette, gesicherte Verteilung, Anomalieerkennung und eine Abwägung Quanten gegen klassisch. MODELLED; illustrative Geräte-/Streckenparameter aus öffentlichen Quellen; modelliert die Klasse, keine Aussage zu TRL oder Flug.

kind = "quantum-time-transfer"
integration_s = 1.0
dissemination_interval_s = 100.0
link_loss_db = 30.0
classical_link_sigma_s = 1.0e-9
monitor_pfa = 1.0e-3
attack_delay_s = 5.0e-9
clock_fault_sigma = 4.0

In Kshana Studio öffnen · Auf GitHub ansehen

quantum-trade#

Quanten-gegen-klassisch-PNT-Trade (13503): Nutzen einer Kandidatenuhr bei Zeitgebungs-Holdover + inertialem Holdover (eine gemessene ADEV-Kurve — der Angelpunkt der Verteidigbarkeit — oder eine Quantenuhrklasse) gegen eine klassische Basislinienklasse, mit dem am Artefakt mitgeführten Vorbehalt zur Annahme einer Langzeit-Untergrenze, plus eine Hüllkurve der GNSS-verweigerten Resilienz über die Zeit. MODELLED; quantifiziert (validiert nie) ein Partnergerät. Die Kandidatenuhr ist eine gemessene Kurve (candidate_adev_taus + candidate_adev_values, gleich lang, mindestens 2 Punkte; sie gewinnt, wenn beide Formen angegeben sind) oder eine candidate_clock_class.

quantum-trade.toml

Art quantum-tradedie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Abwägung Quanten-PNT gegenüber klassischem PNT mit Einspeisung gemessener ADEV (Demonstrator ESA AO/1-13503).

kind = "quantum-trade"
timing_threshold_s = 20.0e-9
position_threshold_m = 100.0
baseline_clock_class = "csac"
candidate_adev_taus   = [1.0, 10.0, 100.0, 1000.0, 10000.0, 100000.0]
candidate_adev_values = [5.0e-16, 1.6e-16, 6.0e-17, 4.0e-17, 6.0e-17, 2.0e-16]
resilience_times_s = [1.0, 60.0, 600.0, 1800.0, 3600.0, 7200.0, 14400.0, 28800.0]

In Kshana Studio öffnen · Auf GitHub ansehen

realtime-frame-eop#

Echtzeit-Budget der Vorhersage von Mondbezugssystem / Erdorientierung: P4-Tabelle 1 (die Konsistenzprüfung des Bezugssystemfehlers — nachverarbeitet ~0,27 m ↔ ~0,010 ms und Echtzeit ~15 m ↔ ~0,5 ms, jede Bezugssystemposition ausgedrückt als ihr äquivalenter UT1-Fehler über den L19-Hebelarm Δr = D_EM·ω⊕·ΔUT1) und Tabelle 2 (gemessener UT1-Vorhersagefehler gegen den Horizont — die L18-Kurve, direkt aus der realen IERS-Reihe finals2000A abgelesen: die endgültige Untergrenze Bulletin A − Bulletin B und der Fehler des Persistenz-Prädiktors über mehrere Tage, jeweils durch L19 auf eine Position im Mondbezugssystem abgebildet), plus das L21-Echtzeit-Bezugssystemfehlerbudget als Wurzel aus der Quadratsumme (EOP + Ephemeride + Realisierungs-Untergrenze). VALIDATED: die geschlossene Form (der L19-Hebelarm, ω⊕ gegengeprüft gegen den CIO-Erdrotationswinkel) und VALIDATED: reale Daten (die L18-Kurve aus den realen finals2000A-Zeilen); MODELLED sind die Größenordnungen der Kovarianz der Bahnbestimmung des Mondrelais und die Untergrenze der Bezugssystemrealisierung (repräsentative Zuweisungen) sowie der Persistenz-Prädiktor (nicht der operative Bulletin-A-Algorithmus des IERS). Kein zertifiziertes Echtzeit-Bezugssystemprodukt.

realtime-frame-eop.toml

Art realtime-frame-eopnicht per Name einem Registermodul zugeordnet

Prognosebudget für lunares Bezugssystem und Erdorientierung (EOP) in Echtzeit.

kind = "realtime-frame-eop"
epoch = "2022-01-01"
horizons_days = [1, 2, 3]

In Kshana Studio öffnen · Auf GitHub ansehen

reentry#

Allen-Eggers-Korridor für den ballistischen Wiedereintritt: Spitzenverzögerung (unabhängig vom ballistischen Koeffizienten, V_e^2 sin|γ|/(2eH)), Geschwindigkeit und Höhe bei der Spitzenverzögerung (peak-g) sowie die Geschwindigkeit bei maximaler Erwärmung, für eine Eintrittsgeschwindigkeit, einen Bahnneigungswinkel und einen ballistischen Koeffizienten durch eine exponentielle Atmosphäre, dazu eine ebene Punktmassenintegration desselben ballistischen Eintritts mit Gravitation, Erdkrümmung und der US-Standardatmosphäre 1976 (Spitzenverzögerung, Geschwindigkeit, Höhe und Zeit an der Spitze). MODELLED ist der ballistische Eintritt (ohne Auftrieb); die Erwärmungsausgabe ist die Geschwindigkeit bei maximaler Erwärmung, kein Wärmestrom (kein aerothermisches Modell und kein TPS-Modell).

reentry.toml

Art reentrydie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Demonstrator für den ballistischen Wiedereintrittskorridor (Allen-Eggers, Missionsanalyse).

kind = "reentry"
entry_velocity_m_s = 7800.0
flight_path_angle_deg = 6.0

In Kshana Studio öffnen · Auf GitHub ansehen

slot-timing#

Slot-Zeitgebung: Sekunden, bis eine freilaufende Uhr den Schutzbereich (Guard) eines zeitindizierten Routing- oder Tasking-Slots verlässt (der größte absolute Zeitfehler, den der Slot toleriert), der Beitrag jedes Terms zu diesem Zeitpunkt mit Benennung des dominanten (Unsicherheit der Synchronisation, weißes Phasenrauschen, weißes Frequenzrauschen, Flicker-Frequenzrauschen, Random-Walk- und Random-Run-Frequenzrauschen, verbleibender Frequenzoffset, Temperatur, Alterung), die seit der letzten Synchronisation verbleibende Zeit und das größte Synchronisationsintervall, das die Uhr innerhalb des Schutzbereichs hält, abzüglich der Latenz der Synchronisation. Der Oszillator ist ein KLASSEN-Standard (csac, uso, dsac, tcxo, ocxo oder rafs: eine zitierte Allan-Abweichung bei einer Sekunde und eine angenommene Rotrauschgrenze), ein DATENBLATT-PRESET der Telekom-Zeitgebung oder ein Inline-DATENBLATT (Maxima der Allan-Abweichung als Hüllkurve angepasst, dazu Alterung und ein Temperaturkoeffizient) oder eine Inline-MEASURED PHASENAUFZEICHNUNG (ihre überlappende Allan-Abweichung, per gewichteter Methode der kleinsten Quadrate in der Basis aus weißer Phase und Frequenzmodulation nach IEEE Std 1139 angepasst, sodass die Rotrauschgrenze gemessen statt angenommen ist). Eine Verletzung jenseits der längsten Mittelungszeit, die das Datenblatt oder die Aufzeichnung stützt, wird als extrapoliert gekennzeichnet. Ein optionaler Abschnitt zu Spoofing ergänzt das Schutzniveau der Zeitgebung für einen Empfänger im Orbit: Bahngeschwindigkeit und Umlaufzeit, wie lange ein einzelner Spoofer am Boden den Satelliten pro Überflug erreichen kann, die uhrgestützte Monitoruntergrenze und die CUSUM-Erkennungslatenz, die bedingte Schranke, den Zug, den ein Spoofer mit einer angegebenen maximalen Rampenrate ansammelt, bevor der Satellit seine Reichweite verlässt oder eine unabhängige Prüfung läuft, sowie ob jede Prüfung bei Bodenkontakt oder über Crosslink von diesem Spoofer unabhängig ist. VALIDATED: die Holdover-Inversion aus einer angepassten Aufzeichnung, zurückgehalten an einer realen Cäsiumuhr, gemessen gegen einen Wasserstoff-Maser (tests/slot_timing_cs5071a_holdout.rs, datenabhängig freigeschaltet); bei einem gemessenen Quarzoszillator ist die zurückgehaltene Vorhersage konservativ, liegt aber nicht innerhalb des Zielwerts, daher ist der Quarzfall MODELLED. MODELLED: Klassen- und Datenblattquellen, die deterministischen Terme und die Spoofing-Bewertung.

slot-timing-ocxo-leo.toml

Art slot-timingnicht per Name einem Registermodul zugeordnet

Slot-Zeitgebung: wie lange ein ofenstabilisierter Quarzoszillator (OCXO) auf einem Kleinsatelliten in niedriger Erdumlaufbahn nach seiner letzten Lösung des globalen Satellitennavigationssystems (GNSS) innerhalb der Schutzzeit eines zeitindizierten Routing-Slots bleibt und wie oft er eine Lösung braucht.

kind = "slot-timing"
preset = "ocxo"
guard_ns = 100.0
k_sigma = 3.0
fix_sigma_ns = 10.0
elapsed_since_sync_s = 600.0
fix_latency_s = 5.0
temperature_excursion_k = 2.0

In Kshana Studio öffnen · Auf GitHub ansehen

solar-system#

Das gesamte Sonnensystem zu einer Epoche, für PNT (Positionierung, Navigation und Zeitgebung) um beliebige Körper. Für die Sonne, die acht Planeten, Pluto, den Mond, Phobos, Deimos, Io, Europa, Ganymed, Kallisto und Titan werden gemeldet: heliozentrische Position und Geschwindigkeit im ICRF (International Celestial Reference Frame, äquatorial J2000), heliozentrische Entfernung sowie ekliptikale Länge und Breite in J2000, der Gravitationsparameter, äquatorialer und mittlerer Radius, J2, soweit veröffentlicht, und sein Bezugsradius, die siderische Rotationsperiode, der IAU-Pol und der Nullmeridian zur Epoche, eine über einen Umlauf abgetastete Bahnspur (heliozentrisch bei Planeten, auf den Mutterkörper bezogen bei Monden) sowie Lichtlaufzeit, Einweg- und Zweiwegentfernung, solare Shapiro-Verzögerung und Sonnenabstand von einem Beobachterkörper aus (Standard Erde); zusätzliche from/to-Verbindungen werden ebenso behandelt. Positionen: die Keplerelemente des JPL von Standish und Williams (Table 1 für 1800 AD bis 2050 AD, Tables 2a/2b für 3000 BC bis 3000 AD) mit dem jeweiligen nominalen Fehler jedes Planeten, die Mondreihe von Montenbruck & Gill für die Aufteilung Erde–Mond, mittlere Elemente des JPL mit der synchronen Rotationsrate der IAU für die Marsmonde und die galileischen Monde sowie das Rotationsmodell der IAU für Titan. Lichtlaufzeit: die radiometrische Fixpunktlösung, Sender an seiner retardierten Position; newtonsch, wobei die Shapiro-Verzögerung gesondert ausgewiesen wird. VALIDATED gegen JPL Horizons (DE441) innerhalb des Doppelten des nominalen Fehlers: Merkur bis Saturn und die Erde aus Table 1 (schlechtester Wert das 1,87-Fache des nominalen) und alle acht Planeten aus Tables 2a/2b (schlechtester Wert das 1,71-Fache) sowie die Lichtlaufzeit von der Erde zu Mars und Jupiter. MODELLED, jede Zeile gekennzeichnet: Uranus und Neptun aus Table 1 (das 2,0- und das 5,2-Fache des nominalen Fehlers gegen DE441), Pluto (die Zeile von 1992; kein angegebener Fehler), der Mond und die sieben Monde (gemessen gegen Horizons, keine veröffentlichte Schranke).

solar-system-tour.toml

Art solar-systemnicht per Name einem Registermodul zugeordnet

Das gesamte Sonnensystem zu einer Epoche.

kind = "solar-system"
epoch = "2026-09-28T00:00:00"
observer = "Earth"
track_points = 180
from = "Mars"
to = "Jupiter"
from = "Saturn"
to = "Earth"

In Kshana Studio öffnen · Auf GitHub ansehen

space-packet#

Framing nach CCSDS 133.0-B Space Packet Protocol: einen synthetischen TM/TC-Paketstrom kodieren (Primärheader mit 6 Oktetten + Datenfeld) und die Dekodierung des Headers je Paket, die Gesamtzahl der Oktette und einen exakten Rundlauf aus Kodierung und Dekodierung ausgeben. Deterministisches Framing mit exaktem Bitlayout — die Interoperabilitätsschicht für Paketformate der Agenturen; KEINE Konformitätszertifizierung (keine Logik für Sekundärheader, CRC oder Segmentierung über die Flags hinaus).

space-packet.toml

Art space-packetArt hat validierte Registerzeilen · 1 von 1 Zeilen validiert

Demonstrator für das Framing von CCSDS 133.0-B Space Packets (TM/TC-Interop).

kind = "space-packet"
apid = 100
telecommand = false
packet_count = 4
data_len = 32

In Kshana Studio öffnen · Auf GitHub ansehen

space-weather#

Weltraumwetter-Umgebungsmodell: solare (F10.7/F10.7a) und geomagnetische (Kp, mit der definitorischen Tabelle Kp↔ap) Aktivitätsindizes, die von ihnen getriebene exosphärische Temperatur nach Jacchia-1971 (validiert gegen veröffentlichte Werte für Sonnenminimum, -mittel und -maximum) und die thermosphärische Neutraldichte nach Jacchia-1971 bei der tagesgemittelten exosphärischen Temperatur gegenüber dem aktivitätsfreien statischen Profil in einer Reihe von Höhen — die Abhängigkeit der Dichte vom Sonnenzyklus, die die statische Atmosphäre auslässt. MODELLED: Die Dichte stimmt mit beschleunigungsmesserbasierten Dichten (TOLEOS CHAMP und GRACE) innerhalb eines Faktors 2 im Sonnenmaximum überein, ist aber im Sonnenminimum 2008 etwa 1.7x zu dicht.

space-weather.toml

Art space-weatherdie Registerzeilen der Art sind modelliert · 0 von 1 Zeilen validiert

Demonstrator für ein Weltraumwetter-Umgebungsmodell.

kind = "space-weather"
kp = 4.0
altitudes_km = [300.0, 400.0, 500.0, 600.0, 800.0]

In Kshana Studio öffnen · Auf GitHub ansehen

spectrum#

L-Band-Spektrummodell und Wasserfall: das gesamte GNSS-L-Band als eine einzige spektrale Leistungsdichte (PSD), Frequenz quer, Zeit abwärts, über eine geskriptete Jammer-Zeitleiste. SIGNALE: GPS L1 C/A und L2C (BPSK(1)), Galileo-E1-Open-Service (MBOC(6,1,1/11) oder BOC(1.1)), GPS L5 und Galileo E5a (BPSK(10)), jeweils auf seinem Träger mit der in der Schnittstellenspezifikation festgelegten minimalen Empfangsleistung (IS-GPS-200, IS-GPS-705, Galileo OS SIS ICD), sofern nicht überschrieben; GLONASS, BeiDou und Galileo E6 werden nicht modelliert. JAMMER: Dauerstrich-Ton, flaches Schmalbandrauschen, linearer Sägezahn-Chirp und Breitbandrauschen, angepasst an die eigene Modulation eines Bandes, jeweils mit einer Mitte, einer Bandbreite, einer Empfangsleistung (direkt oder EIRP und Entfernung über den Freiraumpfadverlust des Jamming-Szenarioart) und Ein-/Ausschaltzeiten. Jeder Jammer wird gegen jedes Band über seinen spektralen Trennungskoeffizienten kappa über die Empfängerbandbreite bewertet, und (C/N0)_eff = [1/(C/N0) + sum (J/S) kappa]^-1; für einen Jammer entspricht dies der Anti-Jam-Gleichung des Jamming-Szenarioart mit Q = 1/(R_c kappa), und der Bericht trägt diese Gegenprüfung (und daneben den repräsentativen Q-Wert des Jamming-Szenarioart). Der Rauschboden ist k T_sys mit T_sys = T_ant + 290 K (F - 1). Der Wasserfall mittelt jede Zelle über ihren Bin und ihre Zeile (Chirps exakt, ganze Sweeps plus den partiellen; Jammer, die mitten in einer Zeile schalten, nach ihrem Tastverhältnis), sodass die C/N0-Zeitleiste und das Bild aus denselben Zahlen stammen; result.json enthält das in der Leistung blockgemittelte Gitter, pro Band C/N0 und J/S je Zeile sowie pro Jammer und Band SSC, Q, J/S, Inband-J/S und stationäres C/N0. Optional [iq]: das Modell als komplexes IQ zu einem Zeitpunkt gezeichnet, in eine SigMF-Aufzeichnung (cf32_le oder ci16_le) geschrieben und daraus zurückgelesen und mit einer Welch-Schätzung verglichen. Optional [recording] (native Builds): die Welch-PSD einer realen SigMF-Aufzeichnung neben dem Modell. VALIDATED: die Signal-PSDs gegen die Lehrbuch-Hauptkeulenbreiten (BPSK(n) 2n x 1,023 MHz Nullstelle zu Nullstelle; BOC(1.1)-Keulen zentriert bei +/-1.023 MHz) und die spektralen Trennungskoeffizienten gegen ihre geschlossenen Formen nach Parseval und Q = 1 (CW) und 1,5 (angepasst) nach Kaplan & Hegarty. MODELLED: Jammer-Leistungen, Zeitleiste, Front-End-Bandbreiten, die Behandlung als kontinuierliches Spektrum (keine Codelinien) und das Fehlen von AGC, Blanking und Antennendiagramm.

l-band-waterfall-jamming.toml

Art spectrumnicht per Name einem Registermodul zugeordnet

L-Band-Wasserfall unter Jamming: das gesamte L-Band des globalen Satellitennavigationssystems (GNSS) als eine Leistungsspektraldichte (PSD), Frequenz quer, Zeit nach unten, während eine skriptgesteuerte Folge von Jammern eingeschaltet wird.

kind = "spectrum"
seed = 7
duration_s = 60.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1160.0

In Kshana Studio öffnen · Auf GitHub ansehen

leo-resilience-js-margin.toml

Art spectrumnicht per Name einem Registermodul zugeordnet

Resilienz von LEO-PNT aus der Empfangsleistung: die Marge des Verhältnisses von Störer zu Signal (J/S).

kind = "spectrum"
seed = 12
duration_s = 100.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1150.0

In Kshana Studio öffnen · Auf GitHub ansehen

multi-band-jamming-waterfall.toml

Art spectrumnicht per Name einem Registermodul zugeordnet

Mehrband-Jamming-Wasserfall: Signale für Positionierung, Navigation und Zeitgebung (PNT) in niedriger Erdumlaufbahn (LEO) in vier Bändern (UHF, L, S und C) neben GPS und Galileo, jedes Band mit seinem eigenen Jammer, gezeichnet als ein Wasserfall je Band auf einer Zeitleiste.

kind = "spectrum"
seed = 11
duration_s = 60.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1160.0

In Kshana Studio öffnen · Auf GitHub ansehen

spoof#

Stochastischer Zeit-Spoof-Detektor (Neyman–Pearson / χ²₁) mit Monte-Carlo-P_fa/P_md.

spoof-attack.toml

Art spoofnicht per Name einem Registermodul zugeordnet

Aktiver Zeit-Spoofing-Angriff: Kann der Integritätsmonitor jeder Uhr den Spoof erwischen, bevor er Schaden anrichtet?

kind = "spoof"
threshold_ns = 20.0
step_s = 10.0
duration_s = 660.0
start_s = 60.0
rate_ns_per_s = 0.1
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (arXiv:1503.08457); not flown."

In Kshana Studio öffnen · Auf GitHub ansehen

spoof-meaconing.toml

Art spoofnicht per Name einem Registermodul zugeordnet

Erkennung von Zeit-Spoofing mit expliziter Angriffsform und stochastischem Detektor.

kind = "spoof"
threshold_ns = 0.5
step_s = 1.0
duration_s = 1200.0
start_s = 100.0
target_pfa = 0.001
mc_runs = 20000
kind = "meaconing"

In Kshana Studio öffnen · Auf GitHub ansehen

spoof-detect#

Kombinierter HF-/Messungs-Spoof-Detektor (Multi-SV-RAIM-Konsistenz + AGC + SQM, fusioniert) gegen einen parametrierten Angriff (Leistungsvorteil, Trägerphasenausrichtung, Zeit-/Positionsversatz; TEXBAT-artig).

maritime-spoof-position-push.toml

Art spoof-detectnicht per Name einem Registermodul zugeordnet

Maritimes GNSS-Spoofing: Erkennung eines Senders, der die gemeldete Position eines Schiffes verschleppt.

kind = "spoof-detect"
power_advantage_db = 2.0
carrier_aligned = false
push = "position"
push_magnitude_m = 500.0
num_biased = 4
el_imbalance = 0.12
sat_power_dbm = -130.0

In Kshana Studio öffnen · Auf GitHub ansehen

spoof-detect.toml

Art spoof-detectnicht per Name einem Registermodul zugeordnet

Kombinierter HF-/Messungs-Spoofing-Detektor: RAIM-Konsistenz über mehrere SV + AGC + SQM, fusioniert.

kind = "spoof-detect"
power_advantage_db = 1.5
carrier_aligned = false
push = "position"
push_magnitude_m = 75.0
num_biased = 3
el_imbalance = 0.12
sat_power_dbm = -130.0

In Kshana Studio öffnen · Auf GitHub ansehen

sweep#

1-D-Trade-Study-Sweep über einen Uhrenpaket-Parameter.

sweep-clock-stability.toml

Art sweepnicht per Name einem Registermodul zugeordnet

Trade-off-Studie: Wie skaliert der Holdover mit der Uhrenstabilität?

kind = "sweep"
parameter = "classical_q_wf"
metric = "holdover_s"
start = 1.0e-24
stop = 1.0e-18
steps = 25
scale = "log"
seed = 42

In Kshana Studio öffnen · Auf GitHub ansehen

sweep-nd#

Generischer N-D-Sweep über ein beliebiges Paket über gepunktete TOML-Schlüssel / JSON-Metrikpfade.

sweep-nd-inertial.toml

Art sweep-ndnicht per Name einem Registermodul zugeordnet

Allgemeiner N-D-Parameterdurchlauf über JEDE Szenarioart. Anders als die reine Uhrenart sweep variiert sweep-nd gepunktete TOML-Schlüssel des Szenarios [base] über das kartesische Produkt der Achsen, führt jeden Gitterknoten erneut aus und liest die gewählten Metriken per gepunktetem JSON-Pfad aus dem Ergebnis. Es funktioniert für jedes Paket (inertial, gnss-ins, integrity, spoof, …), weil es an der Grenze zwischen TOML und Ergebnis arbeitet, nicht an einem Rust-Typ je Paket. Native Läufe werten das Gitter parallel aus (keine zusätzliche Abhängigkeit); wasm fällt auf sequentiell zurück. Das Ausgabegitter ist deterministisch und zeilenweise (die letzte Achse variiert am schnellsten).

kind = "sweep-nd"
metrics = ["classical.fom.holdover_s", "classical.fom.pos_rms_m"]
key = "threshold_m"
start = 100.0
stop = 500.0
steps = 5
key = "accel_classical.bias"
start = 1.0e-3

In Kshana Studio öffnen · Auf GitHub ansehen

telecom-timing#

Telekom-Zeitgebung: Zeitfehler, maximaler Zeitintervallfehler (MTIE) und Zeitabweichung (TDEV) eines GNSS-Holdovers, geprüft gegen ITU-T-Masken mit PASS oder FAIL und einer Marge pro Maske. Eingabe ist entweder ein SYNTHETISCHES HOLDOVER (ein Oszillator-Preset -- ocxo, rubidium, caesium oder csac, jeweils mit den Stabilitäts-, Alterungs- und Temperaturwerten eines benannten öffentlichen Microchip-Datenblatts -- plus GNSS-Verlustzeit, Aufzeichnungslänge und Abtastintervall; die freilaufende Uhr trägt weißes, Flicker- und, wo die Datenblattanpassung es braucht, Random-Walk-Frequenzrauschen, lineare Alterung und einen sinusförmigen Temperaturterm) oder eine EINGELESENE REIHE aus Paaren [time_s, time_error_ns], inline angegeben (und, nur bei nativen Builds, eine CSV-Datei). Masken: ITU-T G.8272 (07/2025) PRTC-A und PRTC-B (max|TE| 100 / 40 ns, MTIE Tabellen 1-2, TDEV Tabellen 3-4); G.8272.1 (2024) Amd. 1 (07/2025) ePRTC gelockt (30 ns, Tabellen 1-2) und ePRTC-A-Holdover (die Zeitfehler-Hüllkurve aus Tabelle 3, die über die durch die gelockte Dauer festgelegte Holdover-Periode H von 30 ns auf 100 ns ansteigt, MTIE Tabelle 4, TDEV Tabelle 5); G.8273.2 (2023) Amd. 2 (11/2025) T-BC/T-TSC-Klassen A-C (max|TE|, konstanter Zeitfehler, tiefpassgefilterter MTIE und TDEV) und Klasse D (max|TE_L| 5 ns, die einzige Zahl der Klasse D, die nicht für weitere Studien offengelassen ist); G.8271.1 (2022) Amd. 3 (05/2025) Referenzpunkt C (max|TE_L| 1100 / 600 / 100 ns mit MTIE Tabellen 7-1 bis 7-3). Jeder Eintrag, den eine Empfehlung für weitere Studien markiert, fehlt, statt ergänzt zu werden, und jeder Bericht listet auf, was nicht implementiert ist. Gibt außerdem die Zeit bis zur Überschreitung jedes Budgets für den maximalen Zeitfehler aus (Standardwerte: 100 ns ePRTC max|TE_HO|, 400 ns Netz-Holdover-Zuteilung, 1100 ns Punkt C, 1,5 us Klasse 4), die MTIE/TDEV-Kurven als CSV-Tabelle mit jeder Maskengrenze und pro numerischem Feld einen Eintrag zu Einheiten und Herkunft. VALIDATED: die MTIE- und TDEV-Schätzer gegen das Paket allantools an einer eingecheckten Holdover-Reihe. MODELLED: die Maskentabellen sind Abschriften, und ein synthetisches Holdover ist ein aus Datenblatt-Maximalwerten gebautes Modell, keine Messung irgendeiner Einheit. Kein Konformitätstest.

telecom-prtc-holdover-24h.toml

Art telecom-timingnicht per Name einem Registermodul zugeordnet

Zeitreferenz der Telekommunikation: eine Rubidiumuhr, die ihre Referenz des globalen Satellitennavigationssystems (GNSS) verliert und 24 Stunden im Holdover überbrückt, geprüft gegen die Masken der Internationalen Fernmeldeunion, Sektor Telekommunikationsstandardisierung (ITU-T).

kind = "telecom-timing"
seed = 20260925
masks = ["eprtc-a-holdover", "prtc-a"]
oscillator = "rubidium"
gnss_loss_s = 3600.0
duration_s = 90000.0
sample_interval_s = 1.0
locked_te_sigma_ns = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

telecom-synce-eec.toml

Art telecom-timingnicht per Name einem Registermodul zugeordnet

Zeitgebung der Telekommunikation, Frequenzsynchronisation: ein freilaufender ofenstabilisierter Quarzoszillator (OCXO), gehalten gegen die Masken für die Wander-Erzeugung der Taktgeber für synchrones Ethernet (EEC) der Internationalen Fernmeldeunion, Sektor Telekommunikationsstandardisierung (ITU-T).

kind = "telecom-timing"
seed = 20260925
masks = ["g8262-eec-option-1", "g8262-eec-option-2", "g8262-1-eeec"]
budgets = []
oscillator = "ocxo"
gnss_loss_s = 0.0
duration_s = 12000.0
sample_interval_s = 1.0

In Kshana Studio öffnen · Auf GitHub ansehen

telecom-tie-ingest.toml

Art telecom-timingnicht per Name einem Registermodul zugeordnet

Zeitgebung der Telekommunikation, Beispiel zur Einspeisung: eine Reihe des Zeitintervallfehlers (TIE), inline angegeben und geprüft gegen die Masken der Internationalen Fernmeldeunion, Sektor Telekommunikationsstandardisierung (ITU-T).

kind = "telecom-timing"
masks = ["prtc-a", "prtc-b", "eprtc", "eprtc-a-holdover", "t-bc-class-c", "g8271-1-point-c"]
holdover_start_s = 300.0
locked_duration_days = 5.0
samples = [

In Kshana Studio öffnen · Auf GitHub ansehen

terrain-nav#

GPS-verweigerte geländereferenzierte Navigation (TERCOM/SITAN): Ein Radar-/Baro-Höhenmesser gleicht das Bodenhöhenprofil mit einem DEM im SRTM-Stil ab, um die INS-Drift zurückzugewinnen.

terrain-nav.toml

Art terrain-navnicht per Name einem Registermodul zugeordnet

Geländereferenzierte Navigation (TERCOM/SITAN) — Alt-PNT ohne GPS.

kind = "terrain-nav"
dem_seed = 1
start_lat_deg = 12.05
start_lon_deg = 20.05
step_lat_deg = 0.004
step_lon_deg = 0.003
waypoints = 60
drift_lat_deg = 0.5

In Kshana Studio öffnen · Auf GitHub ansehen

terrain-slam#

GPS-verweigerte sequenzielle (rekursive) geländereferenzierte Navigation: Ein Partikelfilter führt das Messmodell des Geländeabgleichs Epoche für Epoche aus (SITAN als laufendes Filter), sodass eine zeitveränderliche INS-Drift entlang der Spur verfolgt wird, wo das Batch-terrain-nav nur einen einzelnen konstanten Versatz zurückgewinnt.

terrain-slam.toml

Art terrain-slamnicht per Name einem Registermodul zugeordnet

Sequenzielle (rekursive) geländereferenzierte Navigation — Alt-PNT ohne GPS.

kind = "terrain-slam"
dem_seed = 1
start_lat_deg = 12.08
start_lon_deg = 20.08
step_lat_deg = 0.004
step_lon_deg = 0.003
waypoints = 60
drift_rate_lat_deg = 0.0006

In Kshana Studio öffnen · Auf GitHub ansehen

time-transfer-budget#

Zweiweg-Satelliten-Zeit- und Frequenzübertragung zwischen zwei Stationen über ein geostationäres Relais: die nach T_A - T_B aufgelöste Zweiweg-Gleichung mit jedem nichtreziproken Term (Stationsgerätelaufzeiten, Ku-Band-Ionosphäre, Transponder, Sagnac), ein quadratisches Unsicherheitsbudget, dessen Typ-A-Term die TDEV der simulierten Strecke bei der Mittelungszeit ist, eine simulierte Strecke mit weißem und Flicker-Phasenrauschen und einer täglichen Nichtreziprozität sowie die Stabilität (Rate, Rest-RMS, TDEV, ADEV) jeder gelieferten Reihe aus BIPM Circular T Abschnitt 1, MJD,ns-CSV oder IGS-RINEX-Stationsuhr-Aufzeichnungen. MODELLED.

time-transfer-budget.toml

Art time-transfer-budgetnicht per Name einem Registermodul zugeordnet

Zweiwege-Zeit- und Frequenzübertragung per Satellit (TWSTFT) zwischen zwei ILLUSTRATIVE Stationen, einer in Mitteleuropa und einer im Osten Nordamerikas, über ein geostationäres Relais bei 10 Grad W. Der Lauf löst die Zweiwege-Gleichung für T_A - T_B aus den angegebenen Termen für Ausrüstung, Transponder, Ionosphäre (Ku-Band, 14/11 GHz) und Sagnac. Er bildet ein Unsicherheitsbudget, dessen statistischer Term die TDEV bei einem Tag einer simulierten Strecke mit weißem und Flicker-Phasenrauschen und einer täglichen Nicht-Reziprozität ist. Die Verzögerungen und Unsicherheiten sind illustrativ, keine Kalibrierung irgendeines Labors. MODELLED. Unter [[series]] kann eine reale Reihe UTC-UTC(k) oder Stationsuhr hinzugefügt werden (Format circular-t, mjd-csv oder rinex-clock), um ihre Stabilität zu melden.

kind = "time-transfer-budget"
satellite_lon_deg = -10.0
transponder_ab_ns = 812.0
transponder_ba_ns = 809.5
uplink_ghz = 14.0
downlink_ghz = 11.0
true_offset_ns = 12.5
white_noise_ns = 0.3

In Kshana Studio öffnen · Auf GitHub ansehen

timetransfer#

Optische gegen HF-Zweiweg-Zeit-/Frequenzübertragung.

timetransfer.toml

Art timetransfernicht per Name einem Registermodul zugeordnet

Optische Zeitübertragung zwischen Satelliten gegenüber klassischer HF (TWSTFT).

kind = "timetransfer"
seed = 42
samples = 600
step_s = 1.0
range_spec_mm = 10.0
id = "optical-isl"
provenance = "Optical inter-satellite link, picosecond-level synchronization target; free-space optical two-way time-frequency transfer lab floor ~1 fs (Giorgetta 2013, Nature Photonics; Deschenes 2016, PRX). Using a 1 ps target as the on-orbit-credible figure."
sigma_j_s = 1.0e-12

In Kshana Studio öffnen · Auf GitHub ansehen

tracking-loop#

Lock-Verlust der Tracking-Schleife: C/N0 -> Lock/Unlock MIT HYSTERESE, die Zeit bis zum Lock-Verlust und das Einziehen eines Spoofers als Funktion der RATE des Code- und Trägerversatzes. Die bestehenden Kriterien der Engine für Verwehrung und Erfassung sind Verhältnisse der Empfangsleistung (ein Jammer verwehrt bei J/S = 30 dB, ein Spoofer erfasst bei 3 dB); der reale Lock-Verlust ist kein Leistungsverhältnis, er liegt dort, wo das Jitter einer Schleife plus dynamische Belastung ihr Budget der Tracking-Schwelle verlässt. Gemeldet werden (1) das thermische 1-Sigma-Jitter von Träger (Costas) und Code (nicht kohärent früh/spät) über C/N0, Quadrierungsverlust eingeschlossen, gegen die angegebenen Regeln 3*sigma_PLL + theta_e <= 45 Grad (die 15-Grad-Regel in der Drei-Sigma-Form) und 3*sigma_DLL + Rampenverzug <= d/2 Chips; (2) die C/N0-Schwellen für Abfall und Wiedereinrasten mit der benannten bindenden Schleife, wobei die Schwelle für das Wiedereinrasten aus der größeren Bandbreite ABGELEITET wird, mit der ein Empfänger wieder einzieht, statt behauptet zu werden, sodass die Breite der Hysterese zwischen 5*log10(ratio) und 10*log10(ratio) dB fallen muss; (3) die deklarierte Zeit bis zum Lock-Verlust aus einem Lock-Detektor mit zwei Schwellen und Bestätigungsverweilzeiten, über eine C/N0-Rampe getrieben, getrennt gemeldet von der physikalischen Zeit des Phasenausbruchs (die mittlere Viterbi-Zeit zwischen Zyklenschlupfen, in log10 s, weil sie hunderte Dekaden überspannt); (4) die Grenzen des Spoof-Einziehens — die größte Code-Slew- und Träger-Dopplerrate, der die Schleifen eines Opfers folgen können, mit einer Karte über beide Achsen, weil ein Spoofer, der schneller slewt als diese, die Schleife nicht erfasst, sondern ihr davonläuft; und (5) der VERWEHRUNGSRADIUS, den die Schleifendynamik impliziert, gemeldet NEBEN dem bestehenden Leistungsverhältnis-Radius, nie an seiner Stelle, mit ihrer vorzeichenbehafteten Differenz als eigenem benannten Feld (denial_radius_delta_km) und einer Definition daneben. Jedes ausgegebene numerische Feld trägt eine Einheit und eine Herkunftsklasse. VALIDATED geschlossene Formen: Die Ausdrücke für Träger- und Code-Jitter, die Schleifenfilter-Reduktion sqrt(2*B_n*T) und der Rampenverzug erster Ordnung werden gegen den eigenen sdr-Korrelator der Engine geprüft, der auf gesäter synthetischer ZF vorwärts geschritten wird — ein anderer Weg zu denselben Zahlen — mit 0,6 %, 3,7 % bzw. 0,17 %, und die modifizierte Bessel-Funktion I0 hinter der Zeit bis zum Zyklenschlupf gegen tabellierte Standardwerte bis auf 1e-7. Die untere Gültigkeitsgrenze wird behauptet, nicht bloß angegeben: unterhalb von ~32 dB-Hz bei 1 ms sättigt der reale Atan-Diskriminator an seinem Bereich +-pi/2 und misst weniger Jitter als jede lineare Theorie. MODELLED: Die Schleifenbandbreiten, die Integrationszeit, der Korrelatorabstand, das Bandbreitenverhältnis beim Einziehen, die Bestätigungsverweilzeiten, die Jammerleistung und die Antennengewinne sind repräsentative Bandwerte, kein Datenblatt. NICHT modelliert: Oszillator-Jitter (Allan-Abweichung) und Vibrations-Jitter, Bandbreitenbegrenzung des Frontends, Mehrwegeausbreitung, AGC-Dynamik, Verlust durch Datenbit-Übergänge, externe Stützung und jede Halbzyklus-Korrektur der Formel für den Costas-Zyklenschlupf. Unter Schleifendynamik hat die Spoof-Erfassung überhaupt keinen Radius — die bindende Beschränkung ist die Versatzrate, nicht die Leistung —, sodass dieses Feld mit einer Begründung null ist, statt eine erfundene Zahl zu liefern. Kein zertifiziertes Produkt zur Bewertung der Empfängerleistung.

tracking-loop.toml

Art tracking-loopnicht per Name einem Registermodul zugeordnet

Lock-Verlust der Tracking-Schleife: C/N0 -> Lock/Unlock mit Hysterese, die Zeit bis zum Lock-Verlust und die Grenzen des Spoof-Einziehens, bestimmt durch die RATE des Code- und Trägerversatzes.

kind = "tracking-loop"
pll_bandwidth_hz = 10.0
dll_bandwidth_hz = 1.0
predetection_integration_s = 0.001
correlator_spacing_chips = 0.5
carrier_allowance_deg = 45.0
pullin_bandwidth_ratio = 2.0
drop_confirm_epochs = 50

In Kshana Studio öffnen · Auf GitHub ansehen

Studien-Suiten#

Eine Suite ist eine Szenariodatei, die andere Szenarien auflistet; kshana --study führt sie zu einem gestempelten study.json und study.html aus. Dies ist der kostenlose Suite-Runner, nicht die kostenpflichtige individuelle Studie.

quantum-pnt-demonstrator.suite.toml

Quantum-Enabled PNT Demonstrator — die drei Anwendungsbereiche als eine Studie.

kshana --study scenarios/quantum-pnt-demonstrator.suite.toml

Auf GitHub ansehen