Strojový překlad, nekontrolovaný rodilým mluvčím. Referenční je anglická verze.

ZačínámeUpravit na GitHubuZdroj: README.md

Kshana: značka, kompasový zaměřovací kříž označující přesný okamžik, vedle slovní značky kshanaKshana: značka, kompasový zaměřovací kříž označující přesný okamžik, vedle slovní značky kshana

Kshana · क्षण · přesný okamžik
Open-source simulátor odolnosti PNT (určování polohy, navigace a času).

Stav průběžné integrace na větvi main Pokrytí řádků blízko 95 % v src/, změřené v docs/COVERAGE.md a v průběžné integraci hlídané na 85 % 176 z 401 schopností VALIDATED proti nezávislému vnějšímu orákulu, z verifikační matice Stav brány kvality SonarQube Cloud Vydání v0.40.0 Licence: AGPL-3.0-only
DOI 10.5281/zenodo.20528627, koncepční záznam Zenodo každého vydání Komerční licence je k dispozici od Ashforde® OÜ, viz Edice kshana na crates.io, aktuální publikovaná verze kshana na PyPI, aktuální publikovaná verze kshana na npm, aktuální publikovaná verze

Otevřít Kshana Studio · Instalace · Schopnosti · Důkazy · Výzkum · Dokumentace · Citovat

Nacvičte minutu, kdy GNSS zhasne. Řídicí konzole Kshana, vykreslená ze skutečného běhu enginu v0.40.0: řetězená kampaň campaign-jam-spoof-holdover-integrity (seed 20260928, 6 fází, 18 dílčích běhů v T+01:16:10) a 102 družic GPS, Galileo, BeiDou a GLONASS z constellation-multi-gnss-coverage, každá nakreslená na kruhové dvoutělesové dráze získané z pozemní stopy enginu, poloměry pro zobrazení stlačené. Časová chyba hodin dosahuje maxima 62,7 ns proti hlídací mezi 50 ns, poměr nosné k hustotě šumu klesá na -12.2 dB-Hz proti spodní mezi 25 dB-Hz a svislá ochranná úroveň dosahuje 135,4 m proti mezi výstrahy 50 m.Nacvičte minutu, kdy GNSS zhasne. Řídicí konzole Kshana, vykreslená ze skutečného běhu enginu v0.40.0: řetězená kampaň campaign-jam-spoof-holdover-integrity (seed 20260928, 6 fází, 18 dílčích běhů v T+01:16:10) a 102 družic GPS, Galileo, BeiDou a GLONASS z constellation-multi-gnss-coverage, každá nakreslená na kruhové dvoutělesové dráze získané z pozemní stopy enginu, poloměry pro zobrazení stlačené. Časová chyba hodin dosahuje maxima 62,7 ns proti hlídací mezi 50 ns, poměr nosné k hustotě šumu klesá na -12.2 dB-Hz proti spodní mezi 25 dB-Hz a svislá ochranná úroveň dosahuje 135,4 m proti mezi výstrahy 50 m.
Obsah

Nacvičte minutu, kdy GNSS zhasne#

Kshana přehrává rušení, spoofing a holdover hodin, když selžou signály GNSS (globálního družicového navigačního systému), a říká vám, jak dlouho systém udrží čas a polohu v rámci své rozpočtové meze a které hodiny či který senzor přinese největší rezervu. Je to jeden engine v Rustu. Běží v terminálu, v notebooku, v IDE (integrovaném vývojovém prostředí), v asistentu AI (umělé inteligence) nebo ve vašem prohlížeči.

Každý běh je bit po bitu reprodukovatelný ze scénáře, seedu a verze enginu. Každá schopnost nese v strojově kontrolovaném registru jeden ze tří štítků: VALIDATED (nezávislé vnější orákulum souhlasí), MODELLED (vnitřně konzistentní a řečeno otevřeně) nebo PARTNER (odpovídá za to hardwarový partner).

Stav: v0.40.0. Ověřený, reprodukovatelný simulační základ pro odolnost PNT. Časování a holdover jsou na prvním místě, protože tato oblast je nejlépe ověřená. Kshana je nástroj pro studie a srovnávání variant: není to hardware generátoru rádiofrekvenčních (RF) signálů (neovládá žádné rádio a nic nevysílá; jeho výstupem na úrovni signálu jsou soubory vzorků IQ v základním pásmu pro softwarové přijímače), není to hardwarový ani certifikovaný přijímač GNSS (jeho softwarový přijímač je analytický nástroj) a není to letový produkt. Jste v oboru noví? Začněte srozumitelným úvodem a slovníčkem.

Co je nového ve verzi 0,40#

Verze 0,40 přidává rozpočet chyb na úrovni mise, označuje každé číslo a tabulku úrovní důkazu, čte naměřené záznamy hodin, kontroluje podání datových partnerů, odhaduje, kde může být zdroj rušení, a mluví sedmnácti jazyky vedle angličtiny. Registr má nyní 401 řádků: 176 VALIDATED, 221 MODELLED, 4 PARTNER. Žádný řádek nebyl povýšen na VALIDATED a každé nesplnění níže je zajištěno testem.

  • Vlákno mise. Druh mission-thread řetězí fáze od startu po vstup do atmosféry (launch-ascent, leo-rendezvous, tli-and-cruise, entry a čtyři lunární druhy) s uvedenými pravidly předání, rezervou oproti uvedeným požadavkům a nejslabším článkem; ucelený příklad třídy Artemis přes 11 fází (pozemní a lunární segmenty), celkem 92 druhů scénářů. Každé číslo je MODELLED. Cislunární propagace proti veřejné trajektorii Artemis I nesplňuje svůj předregistrovaný práh (45,3 km a 0,25 m/s oproti 5 km a 0,05 m/s; příčinou jsou malé manévry, které model neobsahuje) a lunární propagátor proti dráze CAPSTONE nesplňuje (136,8 km oproti 25 km na konci jedné otáčky); srovnání s LRO je splněno. Řádky zůstávají MODELLED (Vlákno mise, lunární segment). Ve Studiu se vlákno čte na /studio/mission-thread/.
  • Označení důkazů. Každé číslo a tabulka, které běh zapíše, nese úroveň a id řádků registru, na nichž spočívá, načtené z matice.
  • Naměřené hodiny. Čte se osm formátů záznamů hodin (docs/CLOCK-LOG-FORMATS.md) a nafitovaná řada může řídit holdover. Proti předregistrovaným prahům fit nesplňuje F1(a) u pěti ze šesti záznamů a F2 u jednoho; oba zůstávají MODELLED (Seznam změn).
  • Datoví partneři. kshana partner check kontroluje formát podání a nic nehodnotí (docs/PARTNER-DATA.md).
  • Oblast vysílače. kshana interference-map locate uvádí oblast a elipsu, nikdy holý bod, z hlášení ADS-B nebo AIS. Při jednom porovnání s místy vysílačů Jammertest 2025 je výsledek NOT ASSESSABLE pro oba zdroje (příliš málo plánovaných relací v otevřených datech), takže řádek zůstává MODELLED (Mapa interference).
  • Benchmark. Nová kampaň 0,40 splňuje A3, D3 (obojí EXPLORATORY), R3 a R4; A2, D1 a R1 zůstávají NOT MET (Bench).
  • Jazyky. nl, pl, pt-BR, pt-PT, fi, sv, da, nb, cs, uk, ru, de, fr, es, et, ja a zh-Hans, jako strojové překlady, které žádný rodilý mluvčí nekontroloval; referenční je angličtina a běhy v jiném jazyce trvají přibližně dvakrát déle (docs/i18n.md).

Novinky ve verzi 0,39#

Verze 0,39 nepřidává žádnou funkci a nemění žádný výsledek; výstup enginu je výstupem verze 0,38. Opravuje jednu věc na příkazovém řádku, aktualizuje závislosti nástrojů křížové validace a uvádí verdikty benchmarku v plném znění.

  • Příkazový řádek. kshana kinds | head (jakýkoli uzavřený standardní výstup) už nezpůsobí pád: program se tiše ukončí se stavovým kódem 141, jako to dělají jiné nástroje při uzavřené rouře. Jiné chyby zápisu se nadále hlásí.
  • Dependencies. memmap2 0.9.11 ve dvou zámcích křížových kontrol ANISE a pillow 13.0.0 a certifi 2026.10.19 v připnutých verzích prostředí orákula, vše pod xval/: nic z toho, co se dodává, se nezměnilo.
  • kshana-bench, všechny verdikty. Proti předregistrovaným prahům jsou tři NOT MET, každý připnutý testem: A2 (agc_k_sigma AUC 0,766 proti alespoň 0,80), D1 (největší mezera 0,0301) a úloha (b) R1 (převzato, znovu nespuštěno). Žádný práh nebyl uvolněn (Bench).

Novinky ve verzi 0,38#

Verze 0,38 činí neutrálního rozhodčího měřitelným: bodují se záznamy přijímačů proti publikovanému testovacímu rozvrhu, čte více přijímačů a senzorů, testují se časovací systémy a dodává se benchmark a observatoř interference. Zůstává poradní: nic zde není certifikováno, žádný výsledek není typové schválení a nic nevysílá. Každý řádek uvádí, co o něm drží registr (jak se štítek získává); stav pojmenovává jen to, co bylo zkontrolováno, a řádek registru a odkazovaná stránka říkají, co zkontrolováno nebylo.

Novinka ve verzi 0,38 Co to dělá a proč Stav v registru Čteno
Bodování jammertestu kshana jammertest import čte publikovaný katalog testů NPRA a plán vysílání jako plánovanou pravdu; jammertest score boduje záznam přijímače po jednotlivých testech (latence detekce, nezachycené poplachy, falešné poplachy, doba obnovy), jako podepsaný balíček důkazů, pokud zadáte klíč MODELLED: jeden řádek registru. Prahy byly předregistrovány před jakýmkoli bodovaným během; na datech JammerTest 2024 pravidlo minima dat selhalo v obou bězích (4 a 7 bodovatelných oken proti 10 požadovaným), takže žádný práh nelze posoudit a nic se netvrdí Jammertest
Vlastní příznaky přijímače UBX-NAV-STATUS spoofDetState, UBX-SEC-SIG a NovAtel RXSTATUS načtené do self_report pro každou epochu a porovnané s poplachy Kshana (oba, jen přijímač, jen Kshana, žádný); čtečka Septentrio SBF a vstup --serial jen pro čtení MODELLED; shoda detektoru přijímače s detektorem Kshana není validace Důvěra v přijímač
Více přijímačů a senzorů RTKLIB .pos, NovAtel OEM7, RTCM 3 MSM4/MSM7 C/N0 (z tabulek pyrtcm s licencí BSD, nikoli z textu RTCM), monitorovací proudy GNSS-SDR, záznam IMU jako druhý senzor, balíček ROS 2, most gnss_lib_py a imu-fit pro parametry hybridního senzoru MODELLED: šest řádků registru; pouze vlastnoručně psané testovací podklady, nebyl načten žádný záznam ze skutečného přijímače, IMU, běhu GNSS-SDR ani grafu ROS Strojové vstupy
Testy časování a holdoveru druh holdover-test boduje test holdoveru (GNSS odebráno operátorem, holdover, obnova) z naměřeného záznamu časové chyby proti maskám ITU-T, „měřeno proti masce“; čtečky záznamů linuxptp a chrony; hardwarové fáze a pole lab-attestation MODELLED: dva řádky registru; časy jsou tvrzením operátora, neověřené Timing HIL, Bezpečnost hardwaru
Balíčky norem, LunaNet AFS, okružní cesta s laboratoří bodované balíčky pro DHS RPCF, IMO MSC.1/Circ.1575 a ICAO Doc 9849 Appendix F proti prahům stanoveným před během, „podporuje důkazy pro (supports evidence for)“; převodník (crosswalk) NIST IR 8323r1; generátor a kontrola kódů LunaNet AFS; podepsaný balíček, který propojuje scénář laboratorního běhu, podmínky testu, záznam přijímače a skóre MODELLED pro balíčky a okružní cestu; kontrola kódů AFS je VALIDATED proti vytištěným kontrolním sloupcům (viz řádky registru) Normy, LunaNet AFS
kshana-bench a observatoř pevné úlohy, rozdělení a metriky pro detekci interference, detekci z IQ, predikci holdoveru a mezeru optimismu, s utajenou sadou holdout a statickým žebříčkem; reprodukovatelný denní produkt interference se zpožděním 24 h, hrubými buňkami a bez přisuzování původu žádný vlastní řádek registru: boduje odevzdané práce a jeho základy jsou ve výsledkových souborech označeny MODELLED; proti předregistrovaným prahům jsou bodovač, C1 až C3 a D2 splněny a tři prahy jsou NOT MET (připnuté testy): A2 (agc_k_sigma AUC 0,766 proti alespoň 0,80 na testovací části), D1 (největší mezera 0,0301) a úloha (b) R1 (převzato, znovu nespuštěno); viz xval/bench/RESULTS-v2.md Bench, Observatoř
Exportéry telemetrie důvěry jako objevovací a stavové zprávy Home Assistant MQTT (jen publikování, bez přihlašovacích údajů) vedle Prometheus, CEF, LEEF a OTLP MODELLED: jeden řádek registru Telemetrie důvěryhodnosti
Rezerva optického spoje v čase druh optical-atmosphere umí zapsat jednu seedovanou realizaci počasí na stanovišti jako řadu rezervy spoje MODELLED: jeden řádek registru; jedno losování z modelu, nikoli klima Optická atmosféra

Hlavní body verze 0,37: seznam změn. Úplný seznam verze 0,38 je v seznamu změn.

0,38 podrobně#

Každá schopnost z tabulky výše v několika řádcích: co dělá, jeden příkaz, kterým ji spustit, jeden obrázek nakreslený ze skutečného běhu enginu a co o ní drží registr. Obrázky zapisuje tools/gen_figures_038.py do docs/figures/0.38/ (nikdy se nekreslí ručně): python3 tools/gen_figures_038.py je přepíše z postaveného enginu a --check selže, pokud je některý zastaralý nebo se jeho popisek zde liší. Kde je vstupem záznam, je to vymyšlený záznam, který skript zapíše, protože skutečné záznamy třetích stran se nikdy nepřibalují, a popisek to uvádí. Vše níže je poradní: není to certifikováno, není to typové schválení a nic nevysílá. Stav pojmenovává to, co bylo zkontrolováno, a nic víc; jak se štítek získává.

Bodování jammertestu#

kshana jammertest import mění publikovaný katalog testů NPRA a plán vysílání v plánovanou pravdu a kshana jammertest score proti ní boduje záznam přijímače: u každého plánovaného testu, zda byl zachycen, s jakým zpožděním a jak dlouho se přijímač obnovoval, plus falešné poplachy mimo všechny sloty. Katalog se stahuje, nikdy se nepřibaluje.

xval/jammertest-plan/fetch.sh ../jammertest-plan
kshana jammertest score session.toml --catalog ../jammertest-plan/testcatalog2025.json \
    --plan ../jammertest-plan/plan-tuesday-2025-09-16.json --location 1 --json
Hodnocení jednoho syntetického záznamu přijímače proti plánu o třech testech, ze skutečného běhu enginu v0.40.0 (`kshana jammertest score`). Záznam je vymyšlený: 1800 s NMEA s poklesem C/N0 o 20 dB ve dvou intervalech. Plán uvádí tři sloty; ve středním slotu není v záznamu žádná rušička. Hodnocení označuje 2 ze 3 testů za detekované (medián latence 0 s) a 1 za nezachycený, s 0 běhy falešného poplachu za 0,25 h čistého času. Nic z toho neříká nic o skutečném přijímači. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel.Hodnocení jednoho syntetického záznamu přijímače proti plánu o třech testech, ze skutečného běhu enginu v0.40.0 (`kshana jammertest score`). Záznam je vymyšlený: 1800 s NMEA s poklesem C/N0 o 20 dB ve dvou intervalech. Plán uvádí tři sloty; ve středním slotu není v záznamu žádná rušička. Hodnocení označuje 2 ze 3 testů za detekované (medián latence 0 s) a 1 za nezachycený, s 0 běhy falešného poplachu za 0,25 h čistého času. Nic z toho neříká nic o skutečném přijímači. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel.

Stav v registru: MODELLED. Prahy byly stanoveny před jakýmkoli bodovaným během; na datech JammerTest 2024 pravidlo minima dat selhalo v obou bězích, takže žádný práh nelze posoudit a nic se netvrdí. Jammertest.

Vlastní příznaky přijímače#

UBX-NAV-STATUS spoofDetState, UBX-SEC-SIG a NovAtel RXSTATUS se načítají do self_report pro každou epochu a kladou se vedle poplachů Kshana: oba, jen přijímač, jen Kshana, nebo žádný. Stejné porovnání živí čtečka Septentrio SBF a vstup --serial jen pro čtení. Žádná strana není referenční pravda.

kshana receiver-trust session.toml     # [log] format = "ubx", path = "receiver.ubx"
Vlastní příznak spoofingu přijímače proti poplachům Kshana, ze skutečného běhu enginu v0.40.0 na vymyšleném záznamu UBX (200 epoch při 1 Hz). C/N0 klesá o 20 dB v 80 až 90 s a 120 až 130 s; přijímač příznak nastavuje v 120 až 130 s a 160 až 165 s. Ze 140 epoch porovnaných po kalibraci jich 11 označily oba, 6 jen přijímač, 11 jen Kshana a 112 žádný. Žádná strana není referenční pravda a shoda není validace. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Vlastní příznak spoofingu přijímače proti poplachům Kshana, ze skutečného běhu enginu v0.40.0 na vymyšleném záznamu UBX (200 epoch při 1 Hz). C/N0 klesá o 20 dB v 80 až 90 s a 120 až 130 s; přijímač příznak nastavuje v 120 až 130 s a 160 až 165 s. Ze 140 epoch porovnaných po kalibraci jich 11 označily oba, 6 jen přijímač, 11 jen Kshana a 112 žádný. Žádná strana není referenční pravda a shoda není validace. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Stav v registru: MODELLED. Shoda detektoru přijímače s detektorem Kshana není validace. Důvěra v přijímač.

Více přijímačů a senzorů#

RTKLIB .pos, NovAtel OEM7, RTCM 3 MSM4/MSM7 C/N0, monitorovací proudy GNSS-SDR, záznam IMU jako druhý senzor, balíček ROS 2 a most gnss_lib_py všechny končí ve stejné časové ose důvěry v přijímač. imu-fit čte ze záznamu nehybné IMU parametry senzoru, které hybridní scénáře a scénáře fúze potřebují, takže lze scénář spustit se senzorem, který skutečně máte.

kshana imu-fit still.csv --format csv --axis x --expected-mean 0 --id bench-imu
Co z klidového záznamu IMU vyčte `kshana imu-fit`, ze skutečného běhu enginu v0.40.0 na vymyšleném záznamu (20 000 vzorků při 100 Hz, 200 s): náhodná procházka rychlosti akcelerometru q_va = 4.02e-06, náhodná procházka úhlu gyroskopu q_arw = 9e-08, nestabilita biasu 0,00296 a rané sklony Allanovy odchylky (-0,51 a -0,49; asi -0,5 tam, kde dominuje bílý šum). Tabulka vedle je TOML, který příkaz vypíše. Odhadovač je ověřen pouze na syntetických záznamech. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Co z klidového záznamu IMU vyčte `kshana imu-fit`, ze skutečného běhu enginu v0.40.0 na vymyšleném záznamu (20 000 vzorků při 100 Hz, 200 s): náhodná procházka rychlosti akcelerometru q_va = 4.02e-06, náhodná procházka úhlu gyroskopu q_arw = 9e-08, nestabilita biasu 0,00296 a rané sklony Allanovy odchylky (-0,51 a -0,49; asi -0,5 tam, kde dominuje bílý šum). Tabulka vedle je TOML, který příkaz vypíše. Odhadovač je ověřen pouze na syntetických záznamech. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Stav v registru: MODELLED. Pouze vlastnoručně psané testovací podklady; nebyl načten žádný záznam ze skutečného přijímače, IMU, běhu GNSS-SDR ani grafu ROS. Strojové vstupy.

Testy časování a holdoveru#

Druh holdover-test boduje test holdoveru (GNSS odebráno operátorem, holdover, obnova) z naměřeného záznamu časové chyby proti maskám ITU-T a říká to těmito slovy: měřeno proti masce. Vstupem jsou čtečky záznamů linuxptp a chrony; hardwarové fáze a pole lab-attestation říkají, kdo co tvrdil.

kshana scenarios/holdover-test-example.toml
Test holdoveru bodovaný ze záznamu časové chyby, ze skutečného běhu enginu v0.40.0 na scenarios/holdover-test-example.toml (601 vzorků každých 5 s). GNSS je operátorem odebráno v 600 s a obnoveno v 2400 s; časová chyba na konci holdoveru dosahuje 299 ns, po 675 s překračuje rozpočet 100 ns a 70 s po obnovení se vrací do pásma 100 ns. Verdikty: základní masky PASS, masky holdoveru FAIL, obálka holdoveru FAIL, obnova RECOVERED. Měřeno proti masce, nejde o schválení. Časy jsou tvrzením operátora, Kshana je neověřila. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Test holdoveru bodovaný ze záznamu časové chyby, ze skutečného běhu enginu v0.40.0 na scenarios/holdover-test-example.toml (601 vzorků každých 5 s). GNSS je operátorem odebráno v 600 s a obnoveno v 2400 s; časová chyba na konci holdoveru dosahuje 299 ns, po 675 s překračuje rozpočet 100 ns a 70 s po obnovení se vrací do pásma 100 ns. Verdikty: základní masky PASS, masky holdoveru FAIL, obálka holdoveru FAIL, obnova RECOVERED. Měřeno proti masce, nejde o schválení. Časy jsou tvrzením operátora, Kshana je neověřila. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Stav v registru: MODELLED. Časy odebrání a obnovení GNSS jsou tvrzením operátora, neověřené. Timing HIL, Bezpečnost hardwaru.

Balíčky norem#

Bodované balíčky pro testovací profily DHS Resilient PNT, IMO MSC.1/Circ.1575 a ICAO Doc 9849 Appendix F, plus převodník (crosswalk) NIST IR 8323r1 v compliance-report. Každý test spustí přibalený scénář a porovná pole výsledku s prahem stanoveným před během; test, který potřebuje záznam přijímače, je uveden jako vyžadující vstup, nikoli bodován. Používá se formulace „podporuje důkazy pro (supports evidence for)“.

kshana standards-pack list
kshana standards-pack run imo-circ-1575
Každý test tří hodnocených balíčků norem ze skutečných běhů enginu v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 splněno, 1 nesplněno, 2 vyžadují vstup; imo-circ-1575: 1 splněno, 4 nesplněno, 2 vyžadují vstup; icao-doc9849-appf: 6 splněno, 0 nesplněno, 2 vyžadují vstup. Celkem 13 splněno, 5 nesplněno a 6 vyžaduje vstup, který engine nemá (záznam přijímače nebo dokumentaci zařízení). Každý práh byl stanoven před během; nesplnění zůstává nesplněním. Splněný práh říká, že modelovaný scénář splnil uvedený práh, nic o produktu. Balíčky podporují důkazy pro řádky, které citují; nejsou hodnocením. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života; nesmí být jediným podkladem pro žádné rozhodnutí o navigaci ani bezpečnosti.Každý test tří hodnocených balíčků norem ze skutečných běhů enginu v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 splněno, 1 nesplněno, 2 vyžadují vstup; imo-circ-1575: 1 splněno, 4 nesplněno, 2 vyžadují vstup; icao-doc9849-appf: 6 splněno, 0 nesplněno, 2 vyžadují vstup. Celkem 13 splněno, 5 nesplněno a 6 vyžaduje vstup, který engine nemá (záznam přijímače nebo dokumentaci zařízení). Každý práh byl stanoven před během; nesplnění zůstává nesplněním. Splněný práh říká, že modelovaný scénář splnil uvedený práh, nic o produktu. Balíčky podporují důkazy pro řádky, které citují; nejsou hodnocením. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života; nesmí být jediným podkladem pro žádné rozhodnutí o navigaci ani bezpečnosti.

Stav v registru: MODELLED. Splněný práh říká, že modelovaný scénář splnil stanovený práh, nic o produktu; každé nesplnění se uchovává a je připnuto testem. Normy.

LunaNet AFS#

Generátor kódů LunaNet Augmented Forward Signal (kódy Gold, Weil a terciární, rámec zprávy a jeho chybové kódování) a kontrola zaznamenaného nebo vygenerovaného proudu symbolů, připnutá na jedno vydání specifikace.

kshana lunanet-afs-check spec
kshana lunanet-afs-check generate --frames 2 --out afs.sym
kshana lunanet-afs-check symbols afs.sym
Generátor kódů LunaNet AFS ověřený proti tištěným sloupcům specifikace, ze skutečného běhu enginu v0.40.0 (`kshana lunanet-afs-check spec`, připnuto k LNIS V5, AD1 Volume A (LSIS-AFS) V1.0, 29 January 2025; dokument označuje své tabulky kódů {LSIS-TBC}). 9 z 10 kontrol je splněno; B4 je NOT MET (420 z 421 shodných). Kontroluje tok symbolů proti jednomu vydání zveřejněné specifikace a nic nevypovídá o žádném uzlu ani službě LunaNet. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Kontroluje tok symbolů proti jednomu vydání zveřejněné specifikace a nic nevypovídá o žádném uzlu ani službě LunaNet.Generátor kódů LunaNet AFS ověřený proti tištěným sloupcům specifikace, ze skutečného běhu enginu v0.40.0 (`kshana lunanet-afs-check spec`, připnuto k LNIS V5, AD1 Volume A (LSIS-AFS) V1.0, 29 January 2025; dokument označuje své tabulky kódů {LSIS-TBC}). 9 z 10 kontrol je splněno; B4 je NOT MET (420 z 421 shodných). Kontroluje tok symbolů proti jednomu vydání zveřejněné specifikace a nic nevypovídá o žádném uzlu ani službě LunaNet. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Kontroluje tok symbolů proti jednomu vydání zveřejněné specifikace a nic nevypovídá o žádném uzlu ani službě LunaNet.

Stav v registru: VALIDATED pro kontroly kódů a synchronizace, proti hodnotám, které specifikace uvádí (a označuje je TBC); jedna kontrola je NOT MET, uchována a připnuta (jeden vytištěný sloupec terciárního kódu se liší: dokument uvádí stejnou hodnotu pro dvě PRN). Slova LDPC a CRC podrámců 2 až 4 se nekontrolují. Řádky registru říkají přesně které. LunaNet AFS.

Okružní cesta s laboratoří#

kshana.test-conditions/1 je publikovaný popis toho, co laboratoř udělala (události, časy, výkony). kshana evidence round-trip spojuje hash scénáře, hash podmínek, hash záznamu přijímače a skóre do jednoho podepsaného balíčku a odmítne balíček, jehož podmínky a bodovací scénář se o událostech rozcházejí. Kshana nikdy nevytváří ani nepřehrává signál: jak se scénář dostal k přijímači, je odpovědností operátora.

kshana evidence --help
Struktura balíčku důkazů. Záznam přijímače (NMEA, u-blox UBX, RINEX 3 nebo záznam z Androidu) a časové okno vstupují do kshana receiver-trust evidence, který zapíše sedm souborů: log-slice.bin, config.json, epochs.json, summary.html, manifest.json, manifest.sig a volitelný timestamp.tsr. Manifest zaznamenává SHA-256 celého záznamu a každého souboru a řetězec hashů přes soubory; podpis pokrývá manifest. kshana evidence verify kontroluje podpis, hash každého souboru, řetězec a že není přítomen žádný nevyjmenovaný soubor, a končí kódem 0, když je vše ověřeno, 1, když něco selhalo, a 3, když podepisující nebyl připnut. Balíček je technický záznam, nikoli právní stanovisko.Struktura balíčku důkazů. Záznam přijímače (NMEA, u-blox UBX, RINEX 3 nebo záznam z Androidu) a časové okno vstupují do kshana receiver-trust evidence, který zapíše sedm souborů: log-slice.bin, config.json, epochs.json, summary.html, manifest.json, manifest.sig a volitelný timestamp.tsr. Manifest zaznamenává SHA-256 celého záznamu a každého souboru a řetězec hashů přes soubory; podpis pokrývá manifest. kshana evidence verify kontroluje podpis, hash každého souboru, řetězec a že není přítomen žádný nevyjmenovaný soubor, a končí kódem 0, když je vše ověřeno, 1, když něco selhalo, a 3, když podepisující nebyl připnut. Balíček je technický záznam, nikoli právní stanovisko.

Obrázek ukazuje rozvržení balíčku. Stav v registru: MODELLED. Podmínky testu, Zkušební stav.

kshana-bench#

Pevné úlohy, rozdělení a metriky pro detekci interference, detekci z IQ, predikci holdoveru a mezeru optimismu, s utajenou sadou holdout a statickým žebříčkem. Boduje odevzdané práce; není to pořadí přijímačů.

kshana bench baseline --task d --split test --out results/
Vestavěné základy úlohy D (optimistická mezera) kshana-bench na testovací části, ze skutečného běhu enginu v0.40.0 (`kshana bench baseline`). Každá dvojice sloupců je plocha pod křivkou ROC na případech z rozdělení trénování a na posunutých případech; rozdíl mezi nimi je optimistická mezera, s tolerancí 0,05. fused-max-z: 0,998 a 0,983 (mezera 0,015); sqm-imbalance: 0,882 a 0,882 (mezera 0,001); agc-excess: 0,848 a 0,819 (mezera 0,030); raim-parity: 0,682 a 0,672 (mezera 0,010); energy-cn0-drop: 0,595 a 0,565 (mezera 0,030). Štítky jsou štítky generativního modelu syntetického korpusu, nikdy terénní data: MODELLED. Pouze poradní charakter: hodnoty vypočtené z modelu nebo změřené proti uvedeným referencím, nikoli schválení, certifikace ani prohlášení o shodě. Skóre popisuje záznam nebo korpus, nikdy produkt.Vestavěné základy úlohy D (optimistická mezera) kshana-bench na testovací části, ze skutečného běhu enginu v0.40.0 (`kshana bench baseline`). Každá dvojice sloupců je plocha pod křivkou ROC na případech z rozdělení trénování a na posunutých případech; rozdíl mezi nimi je optimistická mezera, s tolerancí 0,05. fused-max-z: 0,998 a 0,983 (mezera 0,015); sqm-imbalance: 0,882 a 0,882 (mezera 0,001); agc-excess: 0,848 a 0,819 (mezera 0,030); raim-parity: 0,682 a 0,672 (mezera 0,010); energy-cn0-drop: 0,595 a 0,565 (mezera 0,030). Štítky jsou štítky generativního modelu syntetického korpusu, nikdy terénní data: MODELLED. Pouze poradní charakter: hodnoty vypočtené z modelu nebo změřené proti uvedeným referencím, nikoli schválení, certifikace ani prohlášení o shodě. Skóre popisuje záznam nebo korpus, nikdy produkt.

Stav v registru: žádný vlastní řádek registru; základy jsou ve výsledkových souborech označeny MODELLED. Proti předregistrovaným prahům jsou bodovač, C1 až C3 a D2 splněny a tři prahy jsou NOT MET, každý připnutý testem: A2 (agc_k_sigma AUC 0,766 proti alespoň 0,80 na testovací části), D1 (největší mezera 0,0301) a úloha (b) R1 (převzato z dřívější kampaně, znovu nespuštěno). Hodnoty jsou v xval/bench/RESULTS-v2.md. Bench.

Observatoř interference#

Jeden produkt na den UTC a oblast z otevřeného archivu poloh letadel, na pevné hrubé mřížce: každá buňka je zhoršená, nezhoršená, nebo nepozorovaná (což neznamená „čistá“). Zveřejňuje se nejdříve 24 h po skončení dne, s potlačenými malými buňkami a bez přisuzování příčiny.

kshana interference-map daily /path/to/extracted/2026-09-15 \
    --dataset adsb-lol --day 2026-09-15 --bbox 53.5,9.0,66.0,31.0 --out products/
Dva syntetické dny mapy interference nakreslené z přiložených ukázek v examples/interference-map/output, každý s vlastní syntetickou trasou a podíly expozice trasy, které engine hlásí. Vlevo den ADS-B: 1 zhoršená buňka, 6 nezhoršených, 4 nevyhodnocených (šrafovaně) a buňky bez záznamu, nakreslené prázdné, které nebyly pozorovány. Trasa měří 525 km: 11,5 % její délky v zhoršených buňkách, 38,3 % nezhoršených, 9,1 % nevyhodnocených a 41,1 % nepozorovaných. Vpravo den AIS: buňky označené detektory kruhu a souše, neanomální buňky a prázdné buňky; trasa měří 454 km, z toho 10,5 % v anomálních buňkách, 21,2 % neanomálních, 0,0 % nevyhodnocených a 68,3 % nepozorovaných. ADS-B a AIS jsou oddělené vrstvy, nikdy se nekombinují. Označená buňka není zjištěním interference a buňka bez barvy nebyla pozorována, což není totéž jako čistá. Všechna data jsou vymyšlená, v otevřeném středním Atlantiku, a nejde o měření.Dva syntetické dny mapy interference nakreslené z přiložených ukázek v examples/interference-map/output, každý s vlastní syntetickou trasou a podíly expozice trasy, které engine hlásí. Vlevo den ADS-B: 1 zhoršená buňka, 6 nezhoršených, 4 nevyhodnocených (šrafovaně) a buňky bez záznamu, nakreslené prázdné, které nebyly pozorovány. Trasa měří 525 km: 11,5 % její délky v zhoršených buňkách, 38,3 % nezhoršených, 9,1 % nevyhodnocených a 41,1 % nepozorovaných. Vpravo den AIS: buňky označené detektory kruhu a souše, neanomální buňky a prázdné buňky; trasa měří 454 km, z toho 10,5 % v anomálních buňkách, 21,2 % neanomálních, 0,0 % nevyhodnocených a 68,3 % nepozorovaných. ADS-B a AIS jsou oddělené vrstvy, nikdy se nekombinují. Označená buňka není zjištěním interference a buňka bez barvy nebyla pozorována, což není totéž jako čistá. Všechna data jsou vymyšlená, v otevřeném středním Atlantiku, a nejde o měření.

Obrázek ukazuje uložené ukázkové dny, nikoli produkt observatoře. Stav v registru: MODELLED: žádné vnější orákulum, žádná referenční pravda a žádné přisuzování příčiny; buňka, která není pozorována, nebyla posouzena, což není totéž jako čistá. Metoda observatoře.

Exportéry#

Telemetrie důvěry jako text Prometheus, CEF, LEEF, OTLP a objevovací a stavové zprávy Home Assistant MQTT. Příkaz publikuje jen do cíle, který mu zadáte, a nedrží žádné přihlašovací údaje.

kshana trust-telemetry --result session.result.json --print-metrics
kshana trust-telemetry --result session.result.json --print-syslog --format cef
Jeden výsledek důvěry ve třech exportních formátech, ze skutečných běhů enginu v0.40.0 (`kshana trust-telemetry`) na examples/maritime-trust: textová expozice Prometheus (poslední skóre důvěryhodnosti je 5,9 a nastaveno je pásmo nedůvěryhodné) a poslední zprávy CEF a LEEF. Příkaz nic nepublikuje, pokud nedostane cíl, nedrží žádné přihlašovací údaje a nevysílá žádný rádiový signál. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel.Jeden výsledek důvěry ve třech exportních formátech, ze skutečných běhů enginu v0.40.0 (`kshana trust-telemetry`) na examples/maritime-trust: textová expozice Prometheus (poslední skóre důvěryhodnosti je 5,9 a nastaveno je pásmo nedůvěryhodné) a poslední zprávy CEF a LEEF. Příkaz nic nepublikuje, pokud nedostane cíl, nedrží žádné přihlašovací údaje a nevysílá žádný rádiový signál. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel.

Stav v registru: MODELLED. Telemetrie důvěry.

Druh optical-atmosphere umí zapsat jednu seedovanou realizaci počasí na stanovišti jako řadu rezervy spoje: epizody oblačnosti, sloupec kapalné vody pro každou z nich, jeden vzorek scintilace na krok. Stránka Optical PNT ve Studiu otevírá scénáře optical-atmosphere.

kshana scenarios/optical-atmosphere-network.toml
Jedna realizace rezervy spoje na stanovišti „northern" se seedem po dobu 336 h, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/optical-atmosphere-network.toml (seed 37, krok 600 s). Rezerva klesá pod nulu během epizod oblačnosti; v tomto tahu je spoj dostupný 40,5 % času, s 27 výpadky a nejdelším výpadkem 30,7 h. Vstupy jsou ilustrativní, řada je jeden tah z modelu a nikoli klima a od statistické dostupnosti (37,8 %) se liší o výběrovou chybu tohoto tahu. Pouze poradní analýza: nejde o certifikovaný produkt dostupnosti, integrity ani navigace a nejde o předpověď pro žádné skutečné stanoviště, pokud vstupy o jeho klimatu nepocházejí z uvedené datové sady.Jedna realizace rezervy spoje na stanovišti „northern" se seedem po dobu 336 h, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/optical-atmosphere-network.toml (seed 37, krok 600 s). Rezerva klesá pod nulu během epizod oblačnosti; v tomto tahu je spoj dostupný 40,5 % času, s 27 výpadky a nejdelším výpadkem 30,7 h. Vstupy jsou ilustrativní, řada je jeden tah z modelu a nikoli klima a od statistické dostupnosti (37,8 %) se liší o výběrovou chybu tohoto tahu. Pouze poradní analýza: nejde o certifikovaný produkt dostupnosti, integrity ani navigace a nejde o předpověď pro žádné skutečné stanoviště, pokud vstupy o jeho klimatu nepocházejí z uvedené datové sady.

Stav v registru: MODELLED. Jedno losování z modelu, nikoli klima. Optická atmosféra.

Nové pohledy Studia#

kshana.dev/studio získává Bridge replay (dva běhy vedle sebe na jedněch misních hodinách, na /studio/replay/), stránku Optical PNT (/studio/optical/), stránku Holdover test (/studio/holdover/) a prohlížeč observatoře (/studio/observatory/). Spouštějí stejný engine v prohlížeči, nic se nenahrává a nesou stejné poradní prohlášení. Obrázky výše jsou skriptem nakresleny z vlastního výstupu enginu; nejsou to snímky obrazovky těchto stránek.

Navigace kosmických uživatelů (gnss-ssv)#

Pro kosmickou loď nad, kolem nebo daleko za drahami GNSS: kolik signálů GNSS může využít, jak jsou silné, jak dobrá je geometrie a co s nimi může udělat palubní filtr. Jeden druh, čtyři režimy, volené tabulkami scénáře: shell (slupka) uživatelů (podíl času s jedním a se čtyřmi signály, po konstelacích), trajektorie (signály, C/N0, faktor DOP a prostředí limbového paprsku podél oběžné dráhy), běh navigace (devítistavový filtr nad pseudovzdálenostmi, až k Měsíci) a formace (relativní navigace deputy kolem chief). Veřejným zdrojem pro srovnání dostupnosti je brožura interoperabilního GNSS Space Service Volume (UN OOSA ST/SPACE/75, od International Committee on GNSS), která je sama simulací; stahuje se, nikdy se nepřibaluje. Úplná stránka: docs/SSV.md.

kshana scenarios/gnss-ssv-shell.toml            # shell: the upper space service volume, reduced size
kshana scenarios/gnss-ssv-heo.toml              # trajectory: a high Earth orbit, limb medium
kshana scenarios/gnss-ssv-nav-lunar.toml        # navigation: an onboard filter toward the Moon
kshana scenarios/gnss-ssv-formation-heo.toml    # formation: relative navigation
Dostupnost signálu pro uživatele na kouli ve výšce 36000 km s polokulovou anténou, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-shell.toml (zmenšený běh: 162 uživatelů, 3 dny, kroky 10 min), při prahu 20 dB-Hz. Pro každou konstelaci a pásmo dva sloupce: podíl dvojic (uživatel, epocha) s alespoň jedním signálem a s alespoň čtyřmi. Kombinovaně, L1: 99,4 % alespoň jeden, 73,2 % alespoň čtyři, nejdelší výpadek pod čtyři signály 160 min. Kombinovaně, L5: 100,0 % alespoň jeden, 99,9 % alespoň čtyři, nejdelší výpadek pod čtyři signály 20 min. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Zmenšený rozsah není srovnáním s brožurou. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Dostupnost signálu pro uživatele na kouli ve výšce 36000 km s polokulovou anténou, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-shell.toml (zmenšený běh: 162 uživatelů, 3 dny, kroky 10 min), při prahu 20 dB-Hz. Pro každou konstelaci a pásmo dva sloupce: podíl dvojic (uživatel, epocha) s alespoň jedním signálem a s alespoň čtyřmi. Kombinovaně, L1: 99,4 % alespoň jeden, 73,2 % alespoň čtyři, nejdelší výpadek pod čtyři signály 160 min. Kombinovaně, L5: 100,0 % alespoň jeden, 99,9 % alespoň čtyři, nejdelší výpadek pod čtyři signály 20 min. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Zmenšený rozsah není srovnáním s brožurou. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Signály podél jedné vysoké oběžné dráhy kolem Země (perigeum 497 km, apogeum 58622 km, perioda 18,8 h), ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-heo.toml, pásmo L1. Nahoře: nejlepší poměr nosné k hustotě šumu mezi viditelnými signály proti prahu 20 dB-Hz. Uprostřed: počet viditelných signálů ze všech konstelací, od 4 do 55 podél vzorkovaných bodů. Z přijatých spojů 2252 prošlo hlavním lalokem a 696 postranními laloky, s použitím označeného parametrického náhradního diagramu, nikoli změřeného diagramu žádného systému. Medián PDOP 67, 95. percentil 358. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Signály podél jedné vysoké oběžné dráhy kolem Země (perigeum 497 km, apogeum 58622 km, perioda 18,8 h), ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-heo.toml, pásmo L1. Nahoře: nejlepší poměr nosné k hustotě šumu mezi viditelnými signály proti prahu 20 dB-Hz. Uprostřed: počet viditelných signálů ze všech konstelací, od 4 do 55 podél vzorkovaných bodů. Z přijatých spojů 2252 prošlo hlavním lalokem a 696 postranními laloky, s použitím označeného parametrického náhradního diagramu, nikoli změřeného diagramu žádného systému. Medián PDOP 67, 95. percentil 358. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Palubní devítistavový filtr na přeletu z nízké oběžné dráhy k Měsíci, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-nav-lunar.toml (289 epoch, vykresleno 13 bodů). Na logaritmické ose skutečná chyba polohy a vlastní jednosigmová mez filtru proti času od začátku. Uvnitř drah GNSS je RMS polohy 1,4 m; nad nimi 90 m, s konečnou chybou 184 m ve výšce 193 330 km s 1 měřením. Průměrná normalizovaná kvadratická chyba odhadu za celý běh je 4,4 (asi 3 pro konzistentní blok polohy). Pravda i filtr sdílejí své náhrady Slunce a Měsíce. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Palubní devítistavový filtr na přeletu z nízké oběžné dráhy k Měsíci, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-nav-lunar.toml (289 epoch, vykresleno 13 bodů). Na logaritmické ose skutečná chyba polohy a vlastní jednosigmová mez filtru proti času od začátku. Uvnitř drah GNSS je RMS polohy 1,4 m; nad nimi 90 m, s konečnou chybou 184 m ve výšce 193 330 km s 1 měřením. Průměrná normalizovaná kvadratická chyba odhadu za celý běh je 4,4 (asi 3 pro konzistentní blok polohy). Pravda i filtr sdílejí své náhrady Slunce a Měsíce. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Relativní navigace 2 deputy kolem chief na vysoké oběžné dráze, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-formation-heo.toml (401 epoch). Pro každého deputy dva sloupce: RMS relativní polohy z odečtení dvou nezávislých absolutních odhadů a z relativního filtru na jednoduše diferencovaných pseudovzdálenostech. Základna 0,8 km: 5,1 m a 1,2 m. Základna 2,0 km: 4,1 m a 2,1 m. Absolutní filtr zde není konzistentní: průměrná normalizovaná kvadratická chyba odhadu 187 proti asi 3 u konzistentního filtru, takže jeho uváděná nejistota je mnohem příliš malá. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Relativní navigace 2 deputy kolem chief na vysoké oběžné dráze, ze skutečného běhu enginu v0.40.0 na scenarios/gnss-ssv-formation-heo.toml (401 epoch). Pro každého deputy dva sloupce: RMS relativní polohy z odečtení dvou nezávislých absolutních odhadů a z relativního filtru na jednoduše diferencovaných pseudovzdálenostech. Základna 0,8 km: 5,1 m a 1,2 m. Základna 2,0 km: 4,1 m a 2,1 m. Absolutní filtr zde není konzistentní: průměrná normalizovaná kvadratická chyba odhadu 187 proti asi 3 u konzistentního filtru, takže jeho uváděná nejistota je mnohem příliš malá. MODELLED: modelovaná studie ze stanovených vstupů, nikoli měření a nikoli tvrzení o službě pro žádný systém. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Stav v registru: MODELLED, a srovnání s brožurou většinou selhává. Prahy byly stanoveny před během. Z osmi jsou splněny jen S0 (inverzní bilance spoje, 13 z 13 hodnot) a S6 (lunární mise). S1 až S5 a S7 jsou NOT MET: geometrie horního a dolního servisního objemu (43 z 52 a 48 z 52 buněk), horní servisní objem při 15/20/25 dB-Hz, šest misí na GEO, mise na HEO a parametrický diagram postranních laloků proti změřeným diagramům panelů GPS. Téměř každé nesplnění v S1 až S5 se týká GLONASS a brožura pro něj uvádí dva různé referenční úhly; diagnostická varianta s druhým párem dovede S1, S2 a S4 ke všem buňkám, ale nenahrazuje záznamový běh a žádný řádek není VALIDATED. Absolutní filtr formačního běhu je také příliš sebejistý (průměrná normalizovaná kvadratická chyba je výrazně nad hodnotou asi 3, kterou dává konzistentní filtr).

Zaznamenané srovnání modelu dostupnosti pro kosmické uživatele s veřejnou brožurou Space Service Volume z uložených výsledků předregistrovaného běhu (xval/gnss-ssv/results-run1.json, zapsáno příkladem ssv_booklet_check enginu v0.40.0). Práh po prahu, buňky v toleranci: S0 13 z 13 (MET); S1 43 z 52 (NOT MET); S2 48 z 52 (NOT MET); S3 122 z 155 (NOT MET); S4 132 z 156 (NOT MET); S5 18 z 26 (NOT MET); S6 26 z 26 (MET); S7 0 z 20 diagramů panelů (NOT MET). Za předregistrovaného čtení jsou splněny jen S0 a S6. Diagnostická varianta s jinými úhly GLONASS z brožury dovede S1, S2 a S4 ke všem buňkám, ale nenahrazuje záznamový běh. Žádný řádek registru není VALIDATED. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Zaznamenané srovnání modelu dostupnosti pro kosmické uživatele s veřejnou brožurou Space Service Volume z uložených výsledků předregistrovaného běhu (xval/gnss-ssv/results-run1.json, zapsáno příkladem ssv_booklet_check enginu v0.40.0). Práh po prahu, buňky v toleranci: S0 13 z 13 (MET); S1 43 z 52 (NOT MET); S2 48 z 52 (NOT MET); S3 122 z 155 (NOT MET); S4 132 z 156 (NOT MET); S5 18 z 26 (NOT MET); S6 26 z 26 (MET); S7 0 z 20 diagramů panelů (NOT MET). Za předregistrovaného čtení jsou splněny jen S0 a S6. Diagnostická varianta s jinými úhly GLONASS z brožury dovede S1, S2 a S4 ke všem buňkám, ale nenahrazuje záznamový běh. Žádný řádek registru není VALIDATED. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Navigace kosmických uživatelů, co srovnání ukazuje.

Lunární infrastruktura (lunar-infrastructure)#

Oběžná dráha a povrch Měsíce jako navigační a geodetická infrastruktura, v pěti studiích volených pomocí study: od-consistency (palubní určování oběžné dráhy z Earth-GNSS na dráze halo proti nezávislému pozemnímu), carrier-phase (řešení celočíselné nejednoznačnosti mezi povrchovými stanicemi a orbiterem), frame-coestimation (lunární datum z měření vzdáleností ze stanic na Zemi s vazbami na orbiter a bez nich), space-tie (laserové, VLBI a GNSS posuny na jedné kosmické lodi proti chybě místní vazby) a geodesy-sensitivity (která rodina pozorovatelných vidí Loveova čísla h2, k2 a l2). Model je omezený model tří těles se stanovenými zjednodušeními a ilustračními vstupy. Úplná stránka: docs/LUNAR-INFRASTRUCTURE.md.

kshana scenarios/lunar-infrastructure-od-consistency.toml
kshana scenarios/lunar-infrastructure-carrier-phase.toml            # quick; the scored run takes about eight minutes
kshana scenarios/lunar-infrastructure-frame-coestimation.toml
kshana scenarios/lunar-infrastructure-space-tie.toml
kshana scenarios/lunar-infrastructure-geodesy-sensitivity.toml
Konzistence palubního určování oběžné dráhy z GNSS Země na téměř přímočaré halo dráze s nezávislým pozemním určováním oběžné dráhy, ze skutečných běhů enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-od-consistency.toml a jeho variantě s chybou modelu (vždy 400 pokusů). Střední normalizovaný rozdíl q je 5,81 bez chyby modelu a 5,95 s vloženou chybou zrychlení 3e-10 m/s2, při očekávané hodnotě 6: obě řešení oběžné dráhy jsou konzistentní (práh C1 MET). Podíl pokusů nad bodem 95 % je 0,040 a 0,052; práh pro detekci vložené chyby byl alespoň 0,5, takže je NOT MET (C3): palubní řešení je známo asi na 352 m oproti 23 m u pozemního, takže se desetimetrový posun ukryje v jeho kovarianci. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Konzistence palubního určování oběžné dráhy z GNSS Země na téměř přímočaré halo dráze s nezávislým pozemním určováním oběžné dráhy, ze skutečných běhů enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-od-consistency.toml a jeho variantě s chybou modelu (vždy 400 pokusů). Střední normalizovaný rozdíl q je 5,81 bez chyby modelu a 5,95 s vloženou chybou zrychlení 3e-10 m/s2, při očekávané hodnotě 6: obě řešení oběžné dráhy jsou konzistentní (práh C1 MET). Podíl pokusů nad bodem 95 % je 0,040 a 0,052; práh pro detekci vložené chyby byl alespoň 0,5, takže je NOT MET (C3): palubní řešení je známo asi na 352 m oproti 23 m u pozemního, takže se desetimetrový posun ukryje v jeho kovarianci. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Řešení celočíselných nejednoznačností fáze nosné mezi lunárními povrchovými stanicemi a orbiterem z uloženého výsledku hodnoceného běhu enginu v0.40.0 (tests/fixtures/lunar_infra/phase_full_run.json: 3 délky oblouku, každá s metodou Monte Carlo o 401 losováních, zapsáno scenarios/carrier-phase-scored.toml). 1 den: úspěšnost 1,0 % (směrodatná chyba 0,5 %), 134 nejednoznačností, sigma polohy orbiteru 45,6 m s plovoucím řešením a 18,5 m s pevným; 2 dny: úspěšnost 0,5 % (směrodatná chyba 0,4 %), 259 nejednoznačností, sigma polohy orbiteru 21,5 m s plovoucím řešením a 8,7 m s pevným; 3 dny: úspěšnost 2,8 % (směrodatná chyba 0,8 %), 375 nejednoznačností, sigma polohy orbiteru 6,3 m s plovoucím řešením a 2,1 m s pevným. Celočíselné řešení se nedosahuje: úspěšnost zůstává mezi 1 % a 3 % při 25 dBi a při registrovaných 12 dBi nelze problém sestavit. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Řešení celočíselných nejednoznačností fáze nosné mezi lunárními povrchovými stanicemi a orbiterem z uloženého výsledku hodnoceného běhu enginu v0.40.0 (tests/fixtures/lunar_infra/phase_full_run.json: 3 délky oblouku, každá s metodou Monte Carlo o 401 losováních, zapsáno scenarios/carrier-phase-scored.toml). 1 den: úspěšnost 1,0 % (směrodatná chyba 0,5 %), 134 nejednoznačností, sigma polohy orbiteru 45,6 m s plovoucím řešením a 18,5 m s pevným; 2 dny: úspěšnost 0,5 % (směrodatná chyba 0,4 %), 259 nejednoznačností, sigma polohy orbiteru 21,5 m s plovoucím řešením a 8,7 m s pevným; 3 dny: úspěšnost 2,8 % (směrodatná chyba 0,8 %), 375 nejednoznačností, sigma polohy orbiteru 6,3 m s plovoucím řešením a 2,1 m s pevným. Celočíselné řešení se nedosahuje: úspěšnost zůstává mezi 1 % a 3 % při 25 dBi a při registrovaných 12 dBi nelze problém sestavit. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Preciznost sedmiparametrového lunárního data (tři posuny, měřítko a tři rotace) z měření vzdálenosti ze stanic na Zemi, s měřením vzdálenosti orbiter–povrchová stanice a bez něj, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-frame-coestimation.toml. Cramér–Raovo sigma posunů a rotací s odkazy orbiteru klesá (například t_z z 0,98 m na 0,046 m); nejmenší vlastní číslo informace roste 111násobně a stopa CRLB klesá na 1,0 % (práh F3 MET). Předpokládá se, že oběžná dráha je známa v lunárních osách a její chyba je zahrnuta do sigma vzdálenosti orbiteru 1 m. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Preciznost sedmiparametrového lunárního data (tři posuny, měřítko a tři rotace) z měření vzdálenosti ze stanic na Zemi, s měřením vzdálenosti orbiter–povrchová stanice a bez něj, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-frame-coestimation.toml. Cramér–Raovo sigma posunů a rotací s odkazy orbiteru klesá (například t_z z 0,98 m na 0,046 m); nejmenší vlastní číslo informace roste 111násobně a stopa CRLB klesá na 1,0 % (práh F3 MET). Předpokládá se, že oběžná dráha je známa v lunárních osách a její chyba je zahrnuta do sigma vzdálenosti orbiteru 1 m. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Preciznost posunů mezi laserovým měřením vzdálenosti, VLBI a polohami z GNSS jedné kosmické lodi proti chybě pozemního místního spojení, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-space-tie.toml (jeden oblouk o délce 6,56 dne, sigma technik GNSS 10 m, VLBI 1 m, laser 0,1 m). Při místním spojení od 1 mm do 1 m zůstává sigma posunu laser minus GNSS blízko 1,04 m, dokud spojení nedosáhne 1 m: je omezeno měřicím šumem technik, nikoli místním spojením. Dolní mez daná samotným spojením je odmocnina ze dvou krát jeho sigma. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Preciznost posunů mezi laserovým měřením vzdálenosti, VLBI a polohami z GNSS jedné kosmické lodi proti chybě pozemního místního spojení, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-space-tie.toml (jeden oblouk o délce 6,56 dne, sigma technik GNSS 10 m, VLBI 1 m, laser 0,1 m). Při místním spojení od 1 mm do 1 m zůstává sigma posunu laser minus GNSS blízko 1,04 m, dokud spojení nedosáhne 1 m: je omezeno měřicím šumem technik, nikoli místním spojením. Dolní mez daná samotným spojením je odmocnina ze dvou krát jeho sigma. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Která rodina pozorovatelných veličin je citlivá na lunární Loveova čísla h2, k2 a l2, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-geodesy-sensitivity.toml. Každá buňka je efektivní hodnota (RMS) parciální derivace pozorování dané rodiny podle parametru, ve vlastních jednotkách té rodiny (buňky se tedy porovnávají napříč řádkem, nikoli ve sloupci); pomlčka znamená, že rodina nemá žádnou citlivost. Laserové měření vzdálenosti: h2 7,6, k2 žádná, l2 9,8. Sledování orbiteru: h2 žádná, k2 0,00086, l2 žádná. Povrchový gravimetr: h2 2.9e+03, k2 4.3e+03, l2 žádná. Povrchové hodiny: h2 2.8e-17, k2 2.8e-17, l2 žádná. Se všemi čtyřmi rodinami je Cramér–Raovo sigma 0,36 % nominální hodnoty h2, 0,52 % hodnoty k2 a 1,16 % hodnoty l2. Přidání rodiny nikdy nesnížilo nejmenší vlastní číslo (28 z 28 přidání), ale stopa pseudoinverze nebyla větší jen v 16 z 28: tato polovina prahu G3 je NOT MET. Rodina orbiteru vidí integrál zrychlení k2 podél přímky pohledu, což je údaj z horního konce. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.Která rodina pozorovatelných veličin je citlivá na lunární Loveova čísla h2, k2 a l2, ze skutečného běhu enginu v0.40.0 na scénáři scenarios/lunar-infrastructure-geodesy-sensitivity.toml. Každá buňka je efektivní hodnota (RMS) parciální derivace pozorování dané rodiny podle parametru, ve vlastních jednotkách té rodiny (buňky se tedy porovnávají napříč řádkem, nikoli ve sloupci); pomlčka znamená, že rodina nemá žádnou citlivost. Laserové měření vzdálenosti: h2 7,6, k2 žádná, l2 9,8. Sledování orbiteru: h2 žádná, k2 0,00086, l2 žádná. Povrchový gravimetr: h2 2.9e+03, k2 4.3e+03, l2 žádná. Povrchové hodiny: h2 2.8e-17, k2 2.8e-17, l2 žádná. Se všemi čtyřmi rodinami je Cramér–Raovo sigma 0,36 % nominální hodnoty h2, 0,52 % hodnoty k2 a 1,16 % hodnoty l2. Přidání rodiny nikdy nesnížilo nejmenší vlastní číslo (28 z 28 přidání), ale stopa pseudoinverze nebyla větší jen v 16 z 28: tato polovina prahu G3 je NOT MET. Rodina orbiteru vidí integrál zrychlení k2 podél přímky pohledu, což je údaj z horního konce. MODELLED: omezený model tří těles s uvedenými zjednodušeními a ilustrativními vstupy, nikoli měření žádné lunární veličiny. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života.

Stav v registru: MODELLED, a tři prahy jsou NOT MET. Numerika je kontrolována nezávislými programy v numpy a scipy; nic se neporovnává s měřením lunární veličiny a nic není VALIDATED. Splněno: obě řešení oběžné dráhy jsou konzistentní (průměrné q 5,81 proti očekávaným 6) a vazby na orbiter zvyšují nejmenší vlastní číslo data zhruba 111krát, za předpokladu známé dráhy. Nesplněno: vnesená modelová chyba 3e-10 m/s2 není zachycena (C3: palubní řešení je známo na asi 350 m, takže asi deset metrů se ukryje v jeho kovarianci); celočíselné řešení se nedaří (úspěšnost 1 až 3 % při 25 dBi a při zaregistrovaných 12 dBi nelze úlohu sestavit); a stopová polovina G3 pro přidání rodiny pozorovatelných (stopa vzrostla u 12 z 28 přidání, pokaždé proto, že rodina zvýšila hodnost). Každé nesplnění je připnuto testem. Lunární infrastruktura.

Kshana Studio#

Otevřete kshana.dev/studio a celý engine běží ve vašem prohlížeči, přeložený do WebAssembly. Není co instalovat a nic se nenahrává. Studio má dva pohledy na tentýž engine a přepínač v záhlaví mezi nimi přepíná, přičemž zachová scénář, pohled i všechna nastavení, která jste změnili.

Jednoduchý pohled je to, kde se Studio otevírá. Vychází z otázek (kolik družic vidím, mohu věřit své určené poloze, jak dlouho udrží hodiny čas, co dělá rušička s mým přijímačem) a z mapy všeho, co engine umí, u každé oblasti s podílem ověřených metod. Otevřete scénář a nejdřív přijde odpověď: jedna srozumitelná věta napsaná pro to, co daný scénář měří, pak její klíčové hodnoty a graf. Vidět je nejvýše pět nastavení, ta, která odpověď mění nejvíc; zbytek čeká pod Pokročilá nastavení. Jak se to počítá vysvětluje metodu a Pro výzkumníky uvádí vlastní hodnoty enginu, soubor scénáře, kód ke spuštění z Pythonu a citaci.

Kshana Studio, jednoduchý pohled, na přibaleném scénáři integrity-raim, engine v0.40.0 běžící lokálně. Otázka: splňuje geometrie meze výstrahy (horizontální a vertikální ochranná úroveň)? Odpověď je uvedena jako první a označena Živý výsledek: Ano, většinou: po 95,3 % z 12 h. Mez chyby přijímače zůstala pod mezemi výstrahy (40 m horizontálně a 50 m vertikálně) při 344 z 361 kontrol a žádné určení polohy nebylo zavádějící. Klíčová čísla: doba, po kterou lze určení polohy věřit 95,3 %, nejdelší mezera 10 min, typická mez chyby 6,5 / 13 m, zavádějící určení polohy 0. Vedle toho Zkusit jiná nastavení s pěti z nich (chyba vzdálenosti, dvě meze výstrahy, doba trvání a elevační maska) a Spustit znovu, poté sbalené oddíly Pokročilá nastavení (13 dalších), Jak se to počítá (8 ověřených, 6 modelovaných) a Pro výzkumníky. Níže pohledy na tento výsledek a ochranné úrovně vykreslené proti mezi výstrahy.Kshana Studio, jednoduchý pohled, na přibaleném scénáři integrity-raim, engine v0.40.0 běžící lokálně. Otázka: splňuje geometrie meze výstrahy (horizontální a vertikální ochranná úroveň)? Odpověď je uvedena jako první a označena Živý výsledek: Ano, většinou: po 95,3 % z 12 h. Mez chyby přijímače zůstala pod mezemi výstrahy (40 m horizontálně a 50 m vertikálně) při 344 z 361 kontrol a žádné určení polohy nebylo zavádějící. Klíčová čísla: doba, po kterou lze určení polohy věřit 95,3 %, nejdelší mezera 10 min, typická mez chyby 6,5 / 13 m, zavádějící určení polohy 0. Vedle toho Zkusit jiná nastavení s pěti z nich (chyba vzdálenosti, dvě meze výstrahy, doba trvání a elevační maska) a Spustit znovu, poté sbalené oddíly Pokročilá nastavení (13 dalších), Jak se to počítá (8 ověřených, 6 modelovaných) a Pro výzkumníky. Níže pohledy na tento výsledek a ochranné úrovně vykreslené proti mezi výstrahy.

Pokročilý pohled je úplný panel: knihovna scénářů, pět číslovaných kroků (Zvolit, Nastavit, Spustit, Číst výsledky, Sdílet nebo exportovat), klíčové hodnoty s čipy PASS a FAIL tam, kde běh uvádí práh, a každý panel: přehled, grafy, mapy, přehrávání, zpráva enginu a exporty. Jedno vyhledávací pole se dostane ke scénářům, doménám i polím v nich a až čtyři běhy můžete připnout a porovnat vedle sebe.

Úvodní obrazovka Jednoduchého pohledu a Pokročilý pohled po běhu
Kshana Studio, jednoduchý pohled, úvodní obrazovka s názvem Co byste chtěli zjistit?, s živým enginem v0.40.0 a v horní liště třemi odkazy: Rozbor tréninku, Mapa interference a Důvěra v přijímač. Čtyři otázky: kolik družic vidím kdekoli na Zemi, mohu věřit určení polohy, jak dlouho mohou hodiny udržet čas bez družic a co dělá rušička s mým přijímačem. Pod první z nich její zaznamenaný výsledek: nejméně 22 družic ve výhledu na každém místě a 31 v průměru s GPS, Galileem, BeiDou a GLONASS dohromady, určení polohy možné na 100 % míst a časů, na světové mapě družic ve výhledu, s tlačítkem Otevřít tento výsledek. Vedle toho Vše, co Kshana umí: 16 oblastí a 139 scénářů připravených ke spuštění, každá dlaždice s malým grafem ze zaznamenaného běhu a svým podílem ověřených metod a 173 z 350 schopností ověřených v registru.Kshana Studio, jednoduchý pohled, úvodní obrazovka s názvem Co byste chtěli zjistit?, s živým enginem v0.40.0 a v horní liště třemi odkazy: Rozbor tréninku, Mapa interference a Důvěra v přijímač. Čtyři otázky: kolik družic vidím kdekoli na Zemi, mohu věřit určení polohy, jak dlouho mohou hodiny udržet čas bez družic a co dělá rušička s mým přijímačem. Pod první z nich její zaznamenaný výsledek: nejméně 22 družic ve výhledu na každém místě a 31 v průměru s GPS, Galileem, BeiDou a GLONASS dohromady, určení polohy možné na 100 % míst a časů, na světové mapě družic ve výhledu, s tlačítkem Otevřít tento výsledek. Vedle toho Vše, co Kshana umí: 16 oblastí a 139 scénářů připravených ke spuštění, každá dlaždice s malým grafem ze zaznamenaného běhu a svým podílem ověřených metod a 173 z 350 schopností ověřených v registru. Kshana Studio, pokročilý pohled, po běhu přibaleného scénáře constellation-multi-gnss-coverage (Čtyři konstelace GNSS, jedna mapa), engine v0.40.0 běžící lokálně. Vlevo knihovna scénářů, 139 scénářů v 16 oblastech. Pět kroků Vybrat, Nastavit, Spustit, Číst výsledky a Sdílet nebo exportovat, přičemž aktuální je krok 4. Klíčová čísla: 102 družic, dostupnost 100 % (PASS), medián faktoru zhoršení přesnosti polohy (PDOP) 0,95 (PASS), 95. percentil PDOP 1,105 (PASS), v průměru 31,03 družic ve výhledu a 22 nejméně. Níže řada panelů s vybraným Pokrytím, lišta přehrávání, světová mapa středního PDOP od 0,831 do 1,0853 s vykreslenou každou družicí a globální údaje o pokrytí.Kshana Studio, pokročilý pohled, po běhu přibaleného scénáře constellation-multi-gnss-coverage (Čtyři konstelace GNSS, jedna mapa), engine v0.40.0 běžící lokálně. Vlevo knihovna scénářů, 139 scénářů v 16 oblastech. Pět kroků Vybrat, Nastavit, Spustit, Číst výsledky a Sdílet nebo exportovat, přičemž aktuální je krok 4. Klíčová čísla: 102 družic, dostupnost 100 % (PASS), medián faktoru zhoršení přesnosti polohy (PDOP) 0,95 (PASS), 95. percentil PDOP 1,105 (PASS), v průměru 31,03 družic ve výhledu a 22 nejméně. Níže řada panelů s vybraným Pokrytím, lišta přehrávání, světová mapa středního PDOP od 0,831 do 1,0853 s vykreslenou každou družicí a globální údaje o pokrytí.

Zdroj Studia a poznámky k jeho sestavení jsou v web/README.md.

Web#

Zbytek kshana.dev je sestaven z vlastních souborů tohoto repozitáře a běhů enginu: mise, schopnosti, registr důkazů, publikovaný výzkum a edice.

Tři stránky kshana.dev vedle sebe. Hlavní část Domů: řádek s názvem Kshana · क्षण · přesný okamžik nad titulkem Nacvičte minutu, kdy GNSS zhasne, s konzolí mise ze skutečného běhu enginu v0.40.0 (zeměkoule a tři živé grafy: časová chyba hodin, poměr nosné k hustotě šumu a ochranná úroveň). Evidence, Publikovaný výzkum: šest článků na arXiv postavených na otevřeném enginu, nejnovější s obrázkem z enginu. Edice, Kshana Pro, týž engine, zesílený: Free spouští jeden scénář, Pro odpovídá na otázku programu.Tři stránky kshana.dev vedle sebe. Hlavní část Domů: řádek s názvem Kshana · क्षण · přesný okamžik nad titulkem Nacvičte minutu, kdy GNSS zhasne, s konzolí mise ze skutečného běhu enginu v0.40.0 (zeměkoule a tři živé grafy: časová chyba hodin, poměr nosné k hustotě šumu a ochranná úroveň). Evidence, Publikovaný výzkum: šest článků na arXiv postavených na otevřeném enginu, nejnovější s obrázkem z enginu. Edice, Kshana Pro, týž engine, zesílený: Free spouští jeden scénář, Pro odpovídá na otázku programu.

Schopnosti#

Jeden engine pokrývá celý řetězec selhání, od prvního rušeného družicového signálu po poslední nanosekundu holdoveru hodin. Engine má 92 druhů scénářů; kshana kinds je vypíše a docs/SCENARIOS.md dokumentuje každé pole.

Schopnost Na co odpovídá
Spektrum jak rušička obsadí pásmo L GNSS, pásmo po pásmu, sekundu po sekundě
Hodiny a časování jak dlouho každé hodiny drží čas po ztrátě GNSS
Konstelace kolem libovolného tělesa pokrytí, faktor DOP a dostupnost kolem Země, Měsíce nebo Marsu
Sluneční soustava kde je každá planeta a světelná doba libovolného spoje
Navigace na nízké oběžné dráze Země přelet, spoj, navigační zpráva a fúzované určení polohy, fázi po fázi
Kampaně řetězená mise, přeběh parametru nebo soubor Monte Carlo v jednom scénáři
Animace časová řada běhu jako animovaná kresba, přehrávač nebo snímky
Zprávy každá hodnota s jednotkou a popiskem, v HTML (HyperText Markup Language) a JSON (JavaScript Object Notation)
Exporty pro interoperabilitu oběžné dráhy a geometrie pro jiné nástroje: SP3, CCSDS OMM a OEM, CZML, KML, GeoJSON, STK a SigMF
Námořní důvěra může můstek věřit tomuto určení polohy: skóre 0 až 100 a důvody pro NMEA plavidla, živě nebo ze záznamu (pouze poradní charakter, nejde o typově schválené navigační zařízení)
Tréninkové proudy NMEA syntetické NMEA můstku se skriptovaným rušením a spoofingem a záznamem instruktora, pro výcvik posádky (jen text; nikdy pro živé navigační systémy plavidla; pouze poradní charakter, nejde o typově schválené navigační zařízení)
Mapa interference kde letadla a lodě hlásily zhoršená navigační data a kolik z trasy se jich dotýká
Oblast vysílače kde, při uvedených předpokladech, může být zdroj zhoršených hlášení polohy: oblasti s uvedenou spolehlivostí, těžiště s elipsou, nikdy bod (MODELLED; kshana interference-map locate)
Balíčky důkazů podepsaný, offline ověřitelný technický záznam okna záznamu plavidla a toho, co z něj engine vypočetl, pro hlášení incidentu (pouze poradní charakter, nejde o typově schválené navigační zařízení)
Telemetrie důvěryhodnosti proud důvěry jako metriky Prometheus, události SIEM a volitelně OpenTelemetry, s ukázkovým panelem Grafana (deploy/grafana/kshana-gnss-trust.json)
Signal K a OpenCPN skóre důvěryhodnosti na serveru Signal K lodi a v OpenCPN, s referenčním sestavením pro malý počítač vedle přijímače (pouze poradní charakter, nejde o typově schválené navigační zařízení)
Export pro testovací bench kshana bench-export: pohyb vozidla a události scénáře pro laboratorní simulátor GNSS (nezapisuje se žádný signál) a jak potom bodovat záznam přijímače
Mapování compliance a zpráva kshana compliance-report: které řádky veřejných rámců odolnosti sada běhů podporuje důkazy pro (supports evidence for) a jaká mezera zůstává
Notebooky spustitelné tutoriály: proudy důvěry a výcviku pro plavidla, expozice trasy mapě interference, mapování compliance a zkušební stav, kvantový proti klasickému GDOP
Ověřovač Galileo OSNMA navigační data kterých družic může přijímač kryptograficky autentizovat a proč kontrola selže; Kshana neuděluje žádná práva podle IPR ICD OSNMA EU (viz NOTICE na stránce)

Exportní formáty v plném znění: SP3 je Standard Product 3; CCSDS OMM a OEM jsou Orbit Mean-elements a Orbit Ephemeris Messages Consultative Committee for Space Data Systems; CZML a KML jsou Cesium a Keyhole Markup Languages; STK je Systems Tool Kit; SigMF je Signal Metadata Format.

Řetězená kampaň campaign-jam-spoof-holdover-integrity, jeden skutečný běh enginu (seed 20260928): 6 fází (Nominal → Jamming → Spoofing → Holdover → Integrity alarm → Recovery) a 18 dílčích běhů na mřížce 10 s v T+01:16:10. Tři pruhy: časová chyba hodin proti hlídací mezi 50 ns (vrchol 62,7 ns), efektivní poměr nosné k hustotě šumu proti spodní mezi 25 dB-Hz (minimum -12.2 dB-Hz) a svislá ochranná úroveň proti mezi výstrahy 50 m (vrchol 135,4 m), s poplachovými událostmi běhu: v T+00:20:00 poplach RF detektoru spoofingu (fúzované monitory konzistence, výkonu a kvality signálu); v T+00:26:10 poplach monitoru spoofingu podporovaného hodinami.Řetězená kampaň campaign-jam-spoof-holdover-integrity, jeden skutečný běh enginu (seed 20260928): 6 fází (Nominal → Jamming → Spoofing → Holdover → Integrity alarm → Recovery) a 18 dílčích běhů na mřížce 10 s v T+01:16:10. Tři pruhy: časová chyba hodin proti hlídací mezi 50 ns (vrchol 62,7 ns), efektivní poměr nosné k hustotě šumu proti spodní mezi 25 dB-Hz (minimum -12.2 dB-Hz) a svislá ochranná úroveň proti mezi výstrahy 50 m (vrchol 135,4 m), s poplachovými událostmi běhu: v T+00:20:00 poplach RF detektoru spoofingu (fúzované monitory konzistence, výkonu a kvality signálu); v T+00:26:10 poplach monitoru spoofingu podporovaného hodinami.
Každá schopnost, nakreslená ze skutečného běhu: vodopád pásma L, mapa pokrytí, sluneční soustava a přelet nízké oběžné dráhy kolem Země
Pásmo L GNSS jako jedna spektrální hustota výkonu za 60 s, ze skutečného běhu druhu spectrum (l-band-waterfall-jamming.toml, seed 7, engine v0.40.0): frekvence napříč, čas dolů, barva pro výkon nad šumovou podlahou -202.0 dBW/Hz. Rušičky: chirp privacy device (chirp, zapnuto v 10 s, vypnuto ve 40 s); tón CW na L1 (cw, zapnuto ve 30 s); úzkopásmový šum L2 (narrowband, zapnuto ve 45 s). Nejhorší pásmo GPS L1 C/A: minimální efektivní C/N0 3,2 dB-Hz ve 31 s proti sledovací spodní mezi 25 dB-Hz. GPS L1 C/A minimum 3,2 dB-Hz; Galileo E1 minimum 4,7 dB-Hz; GPS L2C minimum 36,9 dB-Hz; GPS L5 minimum 44,1 dB-Hz; Galileo E5a minimum 47,0 dB-Hz.Pásmo L GNSS jako jedna spektrální hustota výkonu za 60 s, ze skutečného běhu druhu spectrum (l-band-waterfall-jamming.toml, seed 7, engine v0.40.0): frekvence napříč, čas dolů, barva pro výkon nad šumovou podlahou -202.0 dBW/Hz. Rušičky: chirp privacy device (chirp, zapnuto v 10 s, vypnuto ve 40 s); tón CW na L1 (cw, zapnuto ve 30 s); úzkopásmový šum L2 (narrowband, zapnuto ve 45 s). Nejhorší pásmo GPS L1 C/A: minimální efektivní C/N0 3,2 dB-Hz ve 31 s proti sledovací spodní mezi 25 dB-Hz. GPS L1 C/A minimum 3,2 dB-Hz; Galileo E1 minimum 4,7 dB-Hz; GPS L2C minimum 36,9 dB-Hz; GPS L5 minimum 44,1 dB-Hz; Galileo E5a minimum 47,0 dB-Hz. Družice viditelné nad celou Zemí po jeden den, ze skutečného běhu constellation-design (constellation-multi-gnss-coverage.toml, engine spuštěný tímto generátorem): 102 družic (GPS 24, Galileo 24, BeiDou 30, GLONASS 24). Každá 10stupňová buňka je zastíněna podle průměrného počtu družic nad 10stupňovou maskou (27,2 až 36,5); tečky jsou vzorky pozemní stopy enginu, jeden za hodinu na družici. Globální dostupnost 100,00 % při PDOP nejvýše 6, medián PDOP 0,95, průměrně 31,0 a nejméně 22 viditelných družic.Družice viditelné nad celou Zemí po jeden den, ze skutečného běhu constellation-design (constellation-multi-gnss-coverage.toml, engine spuštěný tímto generátorem): 102 družic (GPS 24, Galileo 24, BeiDou 30, GLONASS 24). Každá 10stupňová buňka je zastíněna podle průměrného počtu družic nad 10stupňovou maskou (27,2 až 36,5); tečky jsou vzorky pozemní stopy enginu, jeden za hodinu na družici. Globální dostupnost 100,00 % při PDOP nejvýše 6, medián PDOP 0,95, průměrně 31,0 a nejméně 22 viditelných družic. Sluneční soustava v epoše scénáře 2026-09-28T00:00:00, ze skutečného běhu druhu solar-system (solar-system-tour.toml): Slunce, 9 planet a trpasličí planeta Pluto při pohledu shora nad ekliptikou, vzdálenosti pro zobrazení logaritmicky stlačené, s jednosměrnou světelnou dobou každého tělesa od Země. Merkur 0,47 au, 10,1 světelné minuty, VALIDATED; Venuše 0,73 au, 3,0 světelné minuty, VALIDATED; Mars 1,55 au, 14,0 světelné minuty, VALIDATED; Jupiter 5,30 au, 49,5 světelné minuty, VALIDATED; Saturn 9,44 au, 70,2 světelné minuty, VALIDATED; Uran 19,44 au, 157,4 světelné minuty, MODELLED; Neptun 29,88 au, 240,2 světelné minuty, MODELLED; Pluto 35,61 au, 292,2 světelné minuty, MODELLED. Spoje: Mars–Jupiter jednosměrně 2193,5 s; Saturn–Země jednosměrně 4212,2 s; Europa–Jupiter jednosměrně 2,2 s.Sluneční soustava v epoše scénáře 2026-09-28T00:00:00, ze skutečného běhu druhu solar-system (solar-system-tour.toml): Slunce, 9 planet a trpasličí planeta Pluto při pohledu shora nad ekliptikou, vzdálenosti pro zobrazení logaritmicky stlačené, s jednosměrnou světelnou dobou každého tělesa od Země. Merkur 0,47 au, 10,1 světelné minuty, VALIDATED; Venuše 0,73 au, 3,0 světelné minuty, VALIDATED; Mars 1,55 au, 14,0 světelné minuty, VALIDATED; Jupiter 5,30 au, 49,5 světelné minuty, VALIDATED; Saturn 9,44 au, 70,2 světelné minuty, VALIDATED; Uran 19,44 au, 157,4 světelné minuty, MODELLED; Neptun 29,88 au, 240,2 světelné minuty, MODELLED; Pluto 35,61 au, 292,2 světelné minuty, MODELLED. Spoje: Mars–Jupiter jednosměrně 2193,5 s; Saturn–Země jednosměrně 4212,2 s; Europa–Jupiter jednosměrně 2,2 s. Jeden přelet nízké oběžné dráhy kolem Země (LEO) ze skutečného běhu druhu leo-pass (leo-pass-iridium.toml, engine spuštěný tímto generátorem): Iridium-pass ve výšce 781 km, pásmo STL na 1621 MHz, viděný letadlovým uživatelem na 50° s. š. 30° z. d. Nad maskou 5° po dobu 750 s, maximální elevace 65,0° ve 444 s. Poměr nosné k hustotě šumu dosahuje vrcholu 80,5 dB-Hz (medián 71,3), o 34,3 dB nad mediánem GNSS 46,2 dB-Hz z 8 viditelných družic GPS (od 38,2 do 51,1 dB-Hz); Doppler dosahuje 35,4 kHz.Jeden přelet nízké oběžné dráhy kolem Země (LEO) ze skutečného běhu druhu leo-pass (leo-pass-iridium.toml, engine spuštěný tímto generátorem): Iridium-pass ve výšce 781 km, pásmo STL na 1621 MHz, viděný letadlovým uživatelem na 50° s. š. 30° z. d. Nad maskou 5° po dobu 750 s, maximální elevace 65,0° ve 444 s. Poměr nosné k hustotě šumu dosahuje vrcholu 80,5 dB-Hz (medián 71,3), o 34,3 dB nad mediánem GNSS 46,2 dB-Hz z 8 viditelných družic GPS (od 38,2 do 51,1 dB-Hz); Doppler dosahuje 35,4 kHz.

Spusťte kterýkoli z nich pomocí kshana example <scenario> > s.toml && kshana s.toml: scénáře jsou l-band-waterfall-jamming, constellation-multi-gnss-coverage, solar-system-tour a leo-pass-iridium.

Námořní schopnosti a schopnosti kolem interference, nakreslené z uložených syntetických vstupů: skóre důvěryhodnosti, mapa interference s expozicí trasy, výcvikový proud a balíček důkazů
Skóre důvěry během jednoho syntetického přechodu, ze skutečného běhu enginu v0.40.0 na examples/maritime-trust (vymyšlený záznam NMEA z trajektu na trase Tallinn–Helsinki, 3001 epoch při 1 Hz). Tři dráhy sdílejí jednu časovou osu. Nahoře: vzdálenost mezi polohou hlášenou přijímačem a skutečnou polohou plavidla, která zůstává v rozmezí několika metrů do asi 1576 s, kdy ji skriptované odtažení polohy v záznamu odtáhne, zatímco přijímač dál hlásí platný fix. Uprostřed: skóre důvěry od 0 do 100, nepočítané během prvních 300 s kalibrace, v pásmu nominal (alespoň 90) do odtažení, poté klesající skrz pásmo degraded (alespoň 55) do pásma untrusted. Dole: pásmo každé epochy jako barevná stuha s jeho názvem. Skóre je poradní. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel. Záznam je vymyšlen, aby ukázal formát a monitory; není to měření a nic nevypovídá o tom, jak by si jakýkoli přijímač vedl.Skóre důvěry během jednoho syntetického přechodu, ze skutečného běhu enginu v0.40.0 na examples/maritime-trust (vymyšlený záznam NMEA z trajektu na trase Tallinn–Helsinki, 3001 epoch při 1 Hz). Tři dráhy sdílejí jednu časovou osu. Nahoře: vzdálenost mezi polohou hlášenou přijímačem a skutečnou polohou plavidla, která zůstává v rozmezí několika metrů do asi 1576 s, kdy ji skriptované odtažení polohy v záznamu odtáhne, zatímco přijímač dál hlásí platný fix. Uprostřed: skóre důvěry od 0 do 100, nepočítané během prvních 300 s kalibrace, v pásmu nominal (alespoň 90) do odtažení, poté klesající skrz pásmo degraded (alespoň 55) do pásma untrusted. Dole: pásmo každé epochy jako barevná stuha s jeho názvem. Skóre je poradní. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel. Záznam je vymyšlen, aby ukázal formát a monitory; není to měření a nic nevypovídá o tom, jak by si jakýkoli přijímač vedl. Dva syntetické dny mapy interference nakreslené z přiložených ukázek v examples/interference-map/output, každý s vlastní syntetickou trasou a podíly expozice trasy, které engine hlásí. Vlevo den ADS-B: 1 zhoršená buňka, 6 nezhoršených, 4 nevyhodnocených (šrafovaně) a buňky bez záznamu, nakreslené prázdné, které nebyly pozorovány. Trasa měří 525 km: 11,5 % její délky v zhoršených buňkách, 38,3 % nezhoršených, 9,1 % nevyhodnocených a 41,1 % nepozorovaných. Vpravo den AIS: buňky označené detektory kruhu a souše, neanomální buňky a prázdné buňky; trasa měří 454 km, z toho 10,5 % v anomálních buňkách, 21,2 % neanomálních, 0,0 % nevyhodnocených a 68,3 % nepozorovaných. ADS-B a AIS jsou oddělené vrstvy, nikdy se nekombinují. Označená buňka není zjištěním interference a buňka bez barvy nebyla pozorována, což není totéž jako čistá. Všechna data jsou vymyšlená, v otevřeném středním Atlantiku, a nejde o měření.Dva syntetické dny mapy interference nakreslené z přiložených ukázek v examples/interference-map/output, každý s vlastní syntetickou trasou a podíly expozice trasy, které engine hlásí. Vlevo den ADS-B: 1 zhoršená buňka, 6 nezhoršených, 4 nevyhodnocených (šrafovaně) a buňky bez záznamu, nakreslené prázdné, které nebyly pozorovány. Trasa měří 525 km: 11,5 % její délky v zhoršených buňkách, 38,3 % nezhoršených, 9,1 % nevyhodnocených a 41,1 % nepozorovaných. Vpravo den AIS: buňky označené detektory kruhu a souše, neanomální buňky a prázdné buňky; trasa měří 454 km, z toho 10,5 % v anomálních buňkách, 21,2 % neanomálních, 0,0 % nevyhodnocených a 68,3 % nepozorovaných. ADS-B a AIS jsou oddělené vrstvy, nikdy se nekombinují. Označená buňka není zjištěním interference a buňka bez barvy nebyla pozorována, což není totéž jako čistá. Všechna data jsou vymyšlená, v otevřeném středním Atlantiku, a nejde o měření. Tréninkový proud ze scénáře coastal-drag-off (engine v0.40.0, seed 22, 25 minut při jednom zaměření za 10 s z instruktorského záznamu). Mapa ukazuje skutečnou trasu plavidla a trasu, kterou hlásí přijímač: shodují se, dokud nezačne skriptované odtažení polohy v 421 s; hlášená trasa se pak od skutečné vzdaluje, zatímco přijímač udržuje platné zaměření, a když událost v 1140 s skončí, skokem se vrátí. Vedle toho je vzdálenost mezi oběma trasami v čase a střední poměr nosné k hustotě šumu hlášený přijímačem, který po dobu události stoupne na jednu zvýšenou úroveň. Syntetická tréninková data generovaná nástrojem Kshana. Pouze pro trénink a testování: tento proud nikdy nevkládejte do živých navigačních systémů plavidla. Pouze poradní charakter, nejde o typově schválené navigační zařízení. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel. Polohy, data a trasy jsou smyšlené.Tréninkový proud ze scénáře coastal-drag-off (engine v0.40.0, seed 22, 25 minut při jednom zaměření za 10 s z instruktorského záznamu). Mapa ukazuje skutečnou trasu plavidla a trasu, kterou hlásí přijímač: shodují se, dokud nezačne skriptované odtažení polohy v 421 s; hlášená trasa se pak od skutečné vzdaluje, zatímco přijímač udržuje platné zaměření, a když událost v 1140 s skončí, skokem se vrátí. Vedle toho je vzdálenost mezi oběma trasami v čase a střední poměr nosné k hustotě šumu hlášený přijímačem, který po dobu události stoupne na jednu zvýšenou úroveň. Syntetická tréninková data generovaná nástrojem Kshana. Pouze pro trénink a testování: tento proud nikdy nevkládejte do živých navigačních systémů plavidla. Pouze poradní charakter, nejde o typově schválené navigační zařízení. Software pouze poradního charakteru, nikoli typově schválené navigační zařízení (IEC 61108, IEC 61162): za navigaci plavidla zůstává odpovědný provozovatel. Polohy, data a trasy jsou smyšlené. Struktura balíčku důkazů. Záznam přijímače (NMEA, u-blox UBX, RINEX 3 nebo záznam z Androidu) a časové okno vstupují do kshana receiver-trust evidence, který zapíše sedm souborů: log-slice.bin, config.json, epochs.json, summary.html, manifest.json, manifest.sig a volitelný timestamp.tsr. Manifest zaznamenává SHA-256 celého záznamu a každého souboru a řetězec hashů přes soubory; podpis pokrývá manifest. kshana evidence verify kontroluje podpis, hash každého souboru, řetězec a že není přítomen žádný nevyjmenovaný soubor, a končí kódem 0, když je vše ověřeno, 1, když něco selhalo, a 3, když podepisující nebyl připnut. Balíček je technický záznam, nikoli právní stanovisko.Struktura balíčku důkazů. Záznam přijímače (NMEA, u-blox UBX, RINEX 3 nebo záznam z Androidu) a časové okno vstupují do kshana receiver-trust evidence, který zapíše sedm souborů: log-slice.bin, config.json, epochs.json, summary.html, manifest.json, manifest.sig a volitelný timestamp.tsr. Manifest zaznamenává SHA-256 celého záznamu a každého souboru a řetězec hashů přes soubory; podpis pokrývá manifest. kshana evidence verify kontroluje podpis, hash každého souboru, řetězec a že není přítomen žádný nevyjmenovaný soubor, a končí kódem 0, když je vše ověřeno, 1, když něco selhalo, a 3, když podepisující nebyl připnut. Balíček je technický záznam, nikoli právní stanovisko.

Všechny čtyři jsou vymyšlená data a mají poradní charakter: ukazují formát a chování softwaru, nikoli to, jak si kterýkoli přijímač či systém vede proti interferenci. První spusťte pomocí kshana receiver-trust examples/maritime-trust/session.toml, druhý pomocí kshana route-exposure na vzorcích v examples/interference-map/, třetí pomocí kshana nmea-scenario scenarios/training/coastal-drag-off.toml --out drag.nmea (jen pro výcvik: nikdy jej nepouštějte do živého navigačního zařízení) a čtvrtý jako v docs/EVIDENCE-PACKS.md.

Úplná tabulka schopností, doména po doméně

Následuje úplný rozpis doména po doméně; pro registr zralosti po jednotlivých schopnostech viz docs/CAPABILITY.md a docs/VALIDATION.md.

Oblast Schopnost
Oběžná dráha a geometrie propagace SGP4/SDP4 (ověřená na 4,12 mm proti všem 666 vektorům AIAA 2006-6753); skutečné dvouřádkové elementy (uložený, datem opatřený snímek Celestrak gps-ops) nebo syntetické konstelace Walker-delta, jejichž střední elementy realizují vzorec i:T/P/F s odchylkou pod 1 km po 24 h propagace; viditelnost více konstelací, faktor DOP: geometrický, polohový, horizontální, vertikální a časový (GDOP/PDOP/HDOP/VDOP/TDOP), ověřený na 1e-6 proti gnss_lib_py 1.0.4, Stanford NAV Lab (Navigation and Autonomous Vehicles Laboratory), a dostupnost GNSS; optimalizátor návrhu konstelace bez gradientu, dimenzování minimálního počtu družic metodou streets-of-coverage, nástroj pro srovnání více konstelací a přeběh návrhů Walker, který tabeluje pokrytí / PDOP / dobu návratu nad mřížkou rovin × družic a uvádí Pareto-optimální návrhy.
Numerický propagátor Numerický propagátor Cowell (src/propagator.rs), který doplňuje analytickou cestu SGP4/SDP4, s hierarchickým sedmiporuchovým silovým modelem (src/forces.rs): dvě tělesa + úplné zonální pole J2–J6 (koeficienty zonálních harmonik zploštění Země J2 až J6; přesný analytický gradient jeho rušivého potenciálu), volitelný tesserální sférickoharmonický geopotenciál EGM2008 do stupně a řádu 70 (Earth Gravitational Model 2008; src/gravity_sh.rs; skutečné koeficienty NGA, tedy US (United States) National Geospatial-Intelligence Agency, rekurence normalizovaných Legendreových funkcí podle Holmese a Featherstonea, křížově zkontrolovaná proti uzavřeným tvarům Legendreových funkcí a analytické identitě ∇V), gravitaci Slunce a Měsíce jako třetích těles řízenou epochou (vestavěné efemeridy nízké přesnosti, bez jádra DE/SPK, tedy Development Ephemeris / SPICE Spacecraft and Planet Kernel), tlak slunečního záření (model dělové koule s kuželovým stínem umbra + penumbra), atmosférický odpor (po částech exponenciální hustota podle Valladu, spolu rotující atmosféra), post-newtonovskou Schwarzschildovu relativistickou korekci a člen Lenseho–Thirringova strhávání rámce (IERS, tedy International Earth Rotation and Reference Systems Service, Conventions 2010 §10, lineární v momentu hybnosti Země, o ~1–2 řády pod Schwarzschildovým) – poháněný volbou ze dvou adaptivních integrátorů (RK4, tedy Runge–Kutta čtvrtého řádu, s půlením kroku nebo vložená dvojice Dormand–Prince RK5(4)). Ověřeno proti Orekit 12,2 (CS GROUP, Apache-2.0) NumericalPropagator/DormandPrince853 – 278 epoch napříč LEO (nízká oběžná dráha kolem Země) + GTO (geostacionární transferová dráha), přičemž konzervativní úrovně sil souhlasí v nejhorším případě na |Δr| 0,08 m za 24 h (tests/numerical_cowell_propagator_reference.rs); úroveň atmosférického odporu se charakterizuje zvlášť (≈ 333 m / 24 h) a absolutní vstupy efemerid Slunce a Měsíce a hustoty zůstávají otevřeně modelované. Další vnitřní důkaz (nikoli vnější validace): neporušená dráha se kontroluje proti přesnému řešení Keplerovy úlohy v univerzálních proměnných na pod metr za 24 h, energie a moment hybnosti se zachovávají na ~1e-9 a každá porucha odpovídá ručně odvozenému uzavřenému podpisu.
Manévry a návrh trajektorie Impulzní uzly ΔV s propagací kovariance 6×6 (rámce chyb provedení ECI, tedy Earth-centred inertial, a LVLH, tedy local vertical, local horizontal), integrace konečného zážehu kontrolovaná proti uzavřené Ciolkovského raketové rovnici na < 0,01 %, řešič Lambertovy úlohy podle Izza-2015 pro jednu otáčku, přesný propagátor Keplerovy úlohy v univerzálních proměnných a porkchop (start × příletu) přeběh C3 (energie startu) / příletového V∞ vydaný jako JSON mřížka vrstevnic – vrstva simulace výkonu nad GMAT/Orekit, kde se každý výstup Lambertovy úlohy zpětně ověřuje proti pravdě dvou těles a minimum porkchopu se kontroluje proti analytické Hohmannově spodní mezi.
Časové soustavy a referenční soustavy Stupnice UTC / TAI / TT / UT1 IERS s přestupnými sekundami (Coordinated Universal Time, International Atomic Time, Terrestrial Time a čas rotace Země Universal Time 1), API (rozhraní pro programování aplikací) juliánských dat, úhel rotace Země (ERA) IAU-2000 (International Astronomical Union), TEME ↔ ECEF založené na GMST (Greenwich Mean Sidereal Time) (true equator, mean equinox ↔ Earth-centred, Earth-fixed) s geodetickými soustavami WGS-84 (World Geodetic System 1984), precese IAU 2006 (Fukushima–Williams), úplná nutace IAU 2000A/2000B, pohyb pólu IERS a redukce GCRS↔ITRS IAU 2006/2000A založená na CIO bez rovnodennosti (CIO = Celestial Intermediate Origin) – vše ověřeno bit po bitu proti vektorům SOFA/ERFA a nezávisle křížově zkontrolováno proti ANISE (čistě rustová reimplementace NAIF/SPICE; NAIF = Navigation and Ancillary Information Facility NASA, tedy US National Aeronautics and Space Administration): GCRS→ITRS ve kshana proti ITRF93 v ANISE (International Terrestrial Reference Frame 1993) z earth_latest_high_prec.bpc JPL, přičemž oběma jsou předány stejné parametry orientace Země IERS, souhlasí na ≤ 0,86 m na zemi / ≤ 3,6 m na oběžné dráze GNSS (max 0,028″) napříč osmi epochami 2020–2023.
Inerciální Tříosý strapdown INS – kvaternionová orientace, mechanizace NED (north-east-down) ve WGS-84, kompenzace coningu/scullingu a deterministický model chyb IMU (škálový faktor, nesouosost, citlivost na g, kvantizace, drift); kvantový akcelerometr s atomovým interferometrem z prvních principů (fáze Mach–Zehnder, kvantový projekční šum, pokles kontrastu, vazba vibrací), který odvozuje koeficient náhodné procházky rychlosti; a částicový filtr se sekvenčním váženým převzorkováním pro navigaci podle map (podle terénu nebo gravitace) bez GPS.
Alt-PNT (bez GPS) Model měření gravimetru s atomy v chladu, jehož spodní mez bílého šumu (σ = ASD/√τ, ASD = amplitudová spektrální hustota) se odvozuje z fyziky akcelerometru CAI; nízkostupňové, plně normalizované sférickoharmonické pole gravitačních anomálií (zkontrolované proti uzavřeným tvarům Legendreových funkcí a ručně odvozené jednočlenné anomálii) plus syntetické mascony; syntetizační jádro gravitačních funkcionálů (gravity_sh::gravity_magnitude / gravity_disturbance_mgal) – „čtečka map“, proti níž se gravitačně podporovaný navigátor přiřazuje – je ověřeno proti normální tíži podle standardu GRS80 (Geodetic Reference System 1980), reprodukuje uzavřenou Somiglianovu normální tíži a publikované γ_e / γ_p na 3.5e-12 a vytváří fyzikálně ohraničenou mapu poruch ze skutečného pole EGM2008 z ICGEM (International Centre for Global Earth Models) (RMS – střední kvadratická hodnota – ≈ 26 mGal, max ≈ 89 mGal při stupni a řádu 70; tests/icgem_gravity_reference.rs); a částicový filtr přiřazování gravitačních map, který z posloupnosti anomálií, jimiž letí, obnoví dráhu bez GPS. Rozšiřuje se na terénní navigaci (TERCOM/SITAN – terrain contour matching / Sandia Inertial Terrain-Aided Navigation – proti DEM (digitální model terénu) z SRTM (Shuttle Radar Topography Mission) .hgt, src/altpnt/terrain.rs), geomagnetické hlavní pole IGRF-14 (14. generace International Geomagnetic Reference Field) do stupně a řádu 13 (src/igrf.rs, zkontrolované proti uzavřenému tvaru nakloněného dipólu a konečným diferencím ∇V) a kombinovaný navigátor gravitace + magnetismu + terénu, který slučuje všechny tři skalární kanály jedním částicovým filtrem (informace se sčítá – žádný kanál nezhorší určení polohy). 60minutový benchmark bez GPS (výpadek ~700 km / jedné hodiny, při němž inerciální řešení driftuje na ~70 km) se obnoví na ~145 m (< 500 m) hierarchickým přiřazovačem od hrubého k jemnému – cíl ESA NAVISP (Navigation Innovation and Support Programme) Quantum Wayfarer.
Fúze Volně vázaný 15stavový chybový EKF (rozšířený Kalmanův filtr) GNSS/INS s uzavřenou zpětnou vazbou (balíček gnss-ins); těsně vázaná aktualizace pseudovzdálenostmi, která koriguje dál s méně než čtyřmi družicemi; spřažený filtr hodiny + poloha; obecný Kalmanův estimátor s unscented transformací (sigma-body) pro silně nelineární měření; těsně vázaný navigátor GNSS/INS s UKF (pseudovzdálenost + Doppler), jehož orbitální setrvačný pohyb podle silového modelu je kontrolován na vnitřní konzistenci na 0,77 m RMS během 30minutového zakřiveného přeletu LEO, který zahrnuje 120sekundový výpadek GNSS (číslo konzistence filtru, nikoli validace nezávislým orákulem – tento navigátor zůstává MODELLED); a úplný 17stavový těsně vázaný UKF GNSS/INS (poloha, rychlost, chyba orientace, biasy akcelerometrů a gyroskopů, bias a drift hodin), jehož kvantová navigace CAI dead-reckoning překlene 120sekundový výpadek na odvozené náhodné procházce rychlosti akcelerometru s atomy v chladu.
Určování oběžné dráhy Obnova orbitálního stavu [r, v] ze sledování vzdálenosti pozemní stanicí, skládající silový model dvou těles + J2 a integrátor RK4 s dávkovým korektorem Gauss–Newton (determine_orbit_batch, pod metr / mm·s⁻¹ z bezšumových vzdáleností, ~2 m při šumové podlaze 5 m) a sekvenční variantou s unscented filtrem (determine_orbit_sequential).
Pozorovatelnost a teorie odhadu Obecná, znovupoužitelná vrstva Fisherovy informace / Cramér–Rao (src/fim.rs): informační matice M = HᵀWH, Cramér–Raova dolní mez, hodnost pozorovatelnosti a nulový prostor defektu data (pseudoinverze Moore–Penrose) a skaláry návrhu experimentu D/A/E/T-optimální ze symetrického Jacobiho řešiče vlastních čísel. Ověřeno – vlastní čísla proti numpy.linalg.eigh, kovariance CRLB proti σ²(XᵀX)⁻¹ pomocí numpy.linalg.inv a DOP GNSS z informační matice, vše shodné na 1e-9 (tests/fim_observability_reference.rs), a navíc křížově zkontrolováno proti uzavřeným mezím Kay (1993) s dosažením CRLB metodou Monte Carlo. Podpírá engine DOP, CRLB pasivní geolokace a větu o pozorovatelnosti lunární absolutní stanice (níže).
Lunární a cislunární Propagátor kruhového omezeného problému tří těles (CR3BP) Země–Měsíc v rotující soustavě – zachovaná Jacobiho konstanta a všech pět Lagrangeových bodů (src/cr3bp.rs) – nyní s maticí přechodu stavu (STM) 6×6 a jednoduchým střelbovým diferenciálním korektorem (cr3bp_jacobian, propagate_state_stm, differential_correct_halo), který vytváří skutečně periodické dráhy halo / NRHO (near-rectilinear halo orbit): STM je ověřena proti konečným diferencím, opravené dráhy se uzavírají na strojovou přesnost a nasazení publikovaného stavu v apolunu reprodukuje NRHO L2 jižní 9:2 (L2 = druhý Lagrangeův bod Země–Měsíc; dráha Gateway) s periodou ≈ 6,57 d / perilunem ≈ 3 250 km, v souladu s publikovanými ≈ 6,56 d / ≈ 3 370 km (řešení CR3BP – kruhové, bez Slunce – nikoli ověřené proti skutečným efemeridám LANS (Lunar Augmented Navigation Service)/Gateway; selenocentrická transformace MCI/MCMF (Moon-centred inertial / Moon-centred, Moon-fixed) opravené dráhy je navazující práce); plus cislunární geometrie PNT LunaNet / LNIS (LunaNet Interoperability Specification) (redukce MCI↔MCMF, selenografické souřadnice) s přeletem ARAIM u lunárního jižního pólu, který otevřeně odhaluje mezeru v integritě: σ_URE (chyba vzdálenosti uživatele) ~30 m žene ochrannou úroveň daleko nad mez výstrahy 50 m (src/lunar.rs, scenarios/lunanet-araim.toml); a doplnění DOP povrchovými majáky (src/lunar_beacon.rs), které ukazuje, jak několik zaměřených povrchových měřicích majáků dodá řádky zorného směru s nízkou elevací a širokým azimutem, které sadě jen z oběžné dráhy, celé nad hlavou, chybí – zhroutí špatně podmíněný GDOP u jižního pólu a, přes rozpočet chyb jako odmocninu součtu čtverců, i dosaženou přesnost polohy v metrech (využívá jádro DOP ověřené proti gnss_lib_py a uzavřený tvar viditelnosti nad bezvzdušným obzorem; analýza zhoršení přesnosti je sepsána v arXiv:2607,06212).
Lunární sada PNT Lunární/cislunární navigační sada vrstvená nad jádrem CR3BP, každá část jako spustitelný kind: Lunar Coordinate Time (lunar-time-offset, src/lunar_time.rs – sekulární rychlost LTC/TCL − TT (LTC = Lunar Coordinate Time; TCL = její francouzská podoba, Temps-Coordonnée Lunaire) z rozdílu vlastního potenciálu + kinetického členu, uvedená s publikovaným pásmem 56–59 µs/den); geodetická pozorovatelná zpoždění lunární VLBI (very-long-baseline interferometry) (lunar-vlbi, src/lunar_vlbi.rs – zpoždění a jeho rychlost z rozdílu dvou vzdáleností v blízkém poli na zemské základně, křížově zkontrolované proti rovinnovlnnému Δ-DOR (delta differential one-way ranging) ze stejné kódové základny v limitě dalekého pole, parciální derivace ověřené konečnými diferencemi); dávkový estimátor společné vícetechnikové OD + hodin (lunar-joint-od-clock, src/lunar_combination.rs – fit Gauss–Newton slučující VLBI + lunárně lokální vzdálenosti + meziřadicové vzdálenosti mezi družicemi) nesoucí výsledek pozorovatelnosti podle Fisherovy informace: samotné vnitřní měření vzdálenosti nechává defekt data tuhého tělesa o šesti stupních volnosti, takže absolutní poloha povrchové stanice je nepozorovatelná, dokud se nepřidá vazba na zemskou soustavu – zpoždění VLBI na zemské základně pozorovatelnost obnoví pro řídkou konstelaci a zostří Cramér–Raovu mez pro bohatou, přičemž absolutní datum se uzavírá při třech nekolineárních zemských stanicích (výsledek pozorovatelnosti je sepsán v arXiv:2607,02566); realizace referenční soustavy (lunar-frame-realisation, src/lunar_frame_realise.rs – fit data Helmertovou 7parametrovou transformací + vazba orientace podle IAU 2015 WGCCRE – WGCCRE = IAU Working Group on Cartographic Coordinates and Rotational Elements); analýza servisního objemu třídy Moonlight/LCNS (LCNS = Lunar Communications and Navigation Services; moonlight-service-volume, src/lunar_service.rs – DOP / pokrytí / dostupnost + zobecněná obálka HPL/VPL lunárního ARAIM (horizontální/vertikální ochranná úroveň), využívající jádro DOP ověřené proti gnss_lib_py a aparát LunaNet σ_URE≈30 m); lunární diferenciální PNT (lunar-differential-pnt, src/lunar_dpnt.rs – lunární analogie diferenciálního GNSS / systému rozšíření založeného na družicích (SBAS): přesné zrušení společné složky hodin + prostorová dekorelace prvního řádu proti základně, využívající ochrannou úroveň SBAS podle DO-229E – DO-229E je minimální provozní norma výkonu RTCA (dříve Radio Technical Commission for Aeronautics) pro přijímače SBAS); a exportní rozhraní pro interoperabilitu sladěné s LunaNet/IOAG (IOAG = Interagency Operations Advisory Group; lunar-interop-export, src/lunar_interop.rs – CCSDS-OEM (Orbit Ephemeris Message) + zpětný převod lunární časové stupnice v lunární tělesové soustavě IAU 2015, zabalené v obálce KIF). Úrovně důkazů pro jednotlivé části jsou ve verifikační matici: Lunar Coordinate Time, společný estimátor OD + hodin, realizace referenční soustavy a geometrie servisního objemu jsou VALIDATED (každá proti nezávislému orákulu, které uvádí její řádek, stejně jako cesta jádra zpoždění VLBI); pozorovatelná VLBI, výsledek pozorovatelnosti defektu data, diferenciální PNT a exportní rozhraní pro interoperabilitu jsou MODELLED. Parametry jsou ilustrační hodnoty z veřejných zdrojů – nikoli ověřené proti skutečnému sledování VLBI/Gateway, nikoli spojené s žádnou agenturou ani jí nepodporované, bez tvrzení o TRL (úrovni technologické připravenosti) nebo odkazu na předchozí využití.
PNT pro hluboký vesmír a Mars Otevřený radiometrický navigační engine: iterativní světelná doba + relativistické zpoždění Shapiro, dvou-/jedno-/třícestný Doppler a vzdálenost (Moyer, dvě větve), koherentní poměry transpondéru, regenerativní/PN (pseudonáhodné) měření vzdálenosti (CCSDS 414, norma pro měření vzdálenosti pseudonáhodným šumem) a Δ-DOR v rovině oblohy (CCSDS 506, norma Delta-DOR), s médii sluneční plazma/tropo/iono; CCSDS-TDM (503) parsování + generování zpráv o sledovacích datech; redukovaně dynamický Square-Root Information Filter (empirická zrychlení RTN – radiální, příčné, normálové – + 3stavové palubní hodiny + atmosférický odpor Marsu), který provádí určování oběžné dráhy Mars-LMO na ≈ 0,2 m v syntetické uzavřené smyčce; společný estimátor fúze jednocestného + dvoucestného měření; jádro vícetělesové dynamiky (Body{μ, re, zonals, gravity, IAU-pole}, gravitace Marsu GMM-3 (Goddard Mars Model 3), tělesová soustava Marsu IAU, zásuvné rozhraní EphemerisProvider, dvoudílná juliánská data + TT↔TDB (Barycentric Dynamical Time)); a reléový scénář PNT mars-pnt (areostacionární reléová konstelace MARCONI) s koncovým simulátorem výkonu GSE (GSE = ground-support equipment) (geometrie → bilance spoje → pozorovatelné → SRIF → kovariance). Ověřeno simulací (kovariance / ukazatele kvality uzavřené smyčky); dynamika Marsu se Sluncem ve středu je křížově zkontrolována proti JPL DE440 (137 m při oblouku 1 den, xval/anise-mars-od). Ověření na skutečných sledovacích datech DSN/ESTRACK je v plánu vývoje.
Sluneční soustava a PNT kolem libovolného tělesa Efemeridy celé sluneční soustavy bez jader (src/ephem.rs, src/ephem_provider.rs): každá planeta z keplerovských elementů Standish JPL (Tabulka 1, 1800–2050 n. l.; Tabulky 2a/2b, 3000 př. n. l.–3000 n. l.) s publikovanou nominální chybou každé planety, Země a Měsíc rozdělené lunární řadou, a Phobos, Deimos, Io, Europa, Ganymed, Callisto a Titan z průměrných elementů JPL a rotačního modelu IAU (International Astronomical Union); libovolné těleso vůči libovolnému jinému v ICRF (International Celestial Reference Frame). Body nyní nese GM (gravitační parametr), poloměry, J2 (druhou zonální harmoniku) tam, kde je publikována, a pól IAU a hlavní poledník pro osmnáct těles. Druh solar-system uvádí polohy, rychlosti, konstanty, světelnou dobu a jedno-/dvoucestnou vzdálenost mezi libovolnými dvěma tělesy (stávající radiometrický řešič světelné doby se slunečním Shapirovým zpožděním) a dráhu každého tělesa – dost na vykreslení interaktivní sluneční soustavy; druh body-pnt umístí orbiter nebo lander kolem libovolného tělesa (scenarios/mars-orbit-pnt.toml, scenarios/europa-surface-pnt.toml) s místní konstelací Walker, aparátem faktoru DOP a Gauss–Newton a vzdáleností z hlubokého vesmíru od Země. Ověřeno proti JPL Horizons (DE441, JPL Development Ephemeris 441): Merkur–Saturn a Země z Tabulky 1 do dvojnásobku nominální chyby (nejhorší 1,87×), všech osm planet z Tabulek 2a/2b (nejhorší 1,71×) a světelná doba Země–Mars/Jupiter. Modelované: Uran a Neptun z Tabulky 1 (2,0× a 5,2× uvedené chyby proti DE441), Pluto, měsíce a navigační výsledky body-pnt.
Fúzované PNT z MEO + LEO src/leo_fusion/: systémově nezávislé určování polohy, navigace a času z LEO nad libovolnou konstelací (slupky Walker, sady elementů, předvolby GNSS) a pro libovolný signál (nosná, čipová rychlost, obálka C/N0, chyba vzdálenosti signálu v prostoru), s volitelnými jednosouborovými předvolbami nesoucími své zdroje (Xona Pulsar X1/X5, Iridium STL, signály příležitosti Starlink, CentiSpace, reprezentativní systém v pásmu C, model efemerid ATOMIC s nulovými hodinami). leo-pvt: dávkové Dopplerovo určování polohy z rychlosti změny vzdálenosti (jedna i více družic, stavy driftu hodin a rychlosti, geometrie jednoho přeletu podél/napříč dráze a zrcadlové řešení), společné vážené nejmenší čtverce GNSS + LEO s biasy mezi systémy pro každý systém a s odchylkami sigma pro každý signál zadanými volajícím, DOP proti počtu družic LEO, pokrytí polárních a arktických oblastí a přenos času z LEO do UTC proti C/N0 a oscilátoru. leo-ppp: float PPP (přesné určování polohy) EKF (rozšířený Kalmanův filtr) jen s GNSS a s LEO, jeho doba konvergence a test konzistence chí-kvadrát NEES. ntn-positioning: určování polohy v 5G nepozemních sítích z Cramér–Raovy meze pro šířku pásma. Ověřeno: obálka Dopplera z LEO proti publikovaným číslům Iridium a Xona. Modelované: zbytek, přičemž trend PPP je porovnán s Li et al. (2019) – viz docs/LEO-PNT-FUSION.md.
Integrita RAIM (autonomní monitorování integrity přijímačem) typu snapshot a solution-separation (ve stylu ARAIM) s horizontální/vertikální ochrannou úrovní (HPL/VPL), detekcí a vyloučením poruch a Stanfordskými diagramy integrity; ochranná úroveň vícehypotézové separace řešení (MHSS) s explicitním rozpočtem rizika integrity, včetně režimu poruchy celé konstelace u dvou/více konstelací (EU (Evropská unie) ARAIM / DO-316, norma výkonu RTCA pro letecké vybavení GPS s rozšířením založeným na letadle), vyzkoušená na skutečném snímku GPS + Galileo (scenarios/araim-gps-galileo.toml). Ochranná úroveň používá jednostrannou projekci nominálního biasu b_k = Σ_i|s_i|·b_nom pro každý režim poruchy a sigma integrity σ_URA (přesnost vzdálenosti uživatele; odlišná od sigma přesnosti σ_URE, chyby vzdálenosti uživatele) ze zprávy Integrity Support Message – viz docs/ARAIM_REFERENCE.md. Detekční jádro (prahy χ²/necentrální χ²/normální a násobiteli K) je externě ověřeno proti SciPy na 171 případech (tests/raim_reference.rs); geometrie využívá jádro DOP ověřené proti gnss_lib_py. Samotné přidělení rozpočtu rizika integrity ARAIM MHSS nemá publikované číselné orákulum a zůstává otevřeně modelované.
Augmentace (SBAS) Ochranné úrovně SBAS / WAAS (WAAS = Wide Area Augmentation System) ve tvaru vážených nejmenších čtverců podle DO-229E (K-faktory pro přesný přiblížení a za letu po trati) a dvoufrekvenční kombinace L1/L5 bez ionosféry (L1 a L5 jsou dvě civilní pásma signálu GPS; IS-GPS-705, rozhraní GPS pro signál L5, γ₁₅ ≈ 1,793), na níž stojí DO-316 – src/sbas.rs. Algoritmus ochranné úrovně je externě ověřen proti větvi RTKLIB SBAS-PL (RTKLIB = otevřená knihovna pro určování polohy v reálném čase kinematicky; PL = ochranná úroveň) (zsiki/rtklib_ws waasprotlevels(), Siki & Takács 2017, DO-229D – předchozí revize DO-229 – App. J), spuštěné na skutečných datech EGNOS (European Geostationary Navigation Overlay Service), čímž reprodukuje její HPL na < 2e-3 m (tests/sbas_reference.rs); gLAB (sada nástrojů GNSS Laboratory) v6.0.0 potvrdil totožnou konvenci.
Hodiny a časování Dvoustavový Kalmanův holdover (kovariance ve Josephově tvaru, zdraví konzistence NIS/NEES – normalizovaná inovace na druhou / normalizovaná chyba odhadu na druhou); stabilita z rodiny Allanových (ADEV / MDEV / TDEV / HDEV / MTIE – Allanova, modifikovaná Allanova, časová a Hadamardova odchylka a maximální chyba časového intervalu) s intervaly spolehlivosti specifickými pro typ šumu a úplným fitem mocninného zákona IEEE-1139 s pěti koeficienty (IEEE Std 1139, definice metrologie frekvence a času od Institute of Electrical and Electronics Engineers) – estimátory jsou ověřeny na skutečném hardwaru proti Stable32: skutečný cesiový primární etalon 5071A proti vodíkovému maseru (556 990 vzorků fáze, 16 průměrovacích faktorů, OADEV/OHDEV – překrývající se Allanova/Hadamardova odchylka – na 1e-3; tests/cs5071a_reference.rs) a kanonická regresní řada Stable32 PHASE.DAT (139 průměrovacích faktorů, OADEV/MDEV/TDEV na 1e-3; tests/phasedat_reference.rs); estimátory ADEV/MDEV/TDEV a telekomunikační metrika wanderu MTIE jsou navíc křížově zkontrolovány proti nezávislé knihovně allantools 2024,06 na < 1e-9 na řadě NIST SP 1065 (tests/mtie_reference.rs, tests/mdev_tdev_reference.rs); geometrické korekce (Sagnac, common-view GNSS); a provozní metody přenosu – TWSTFT (dvoucestný družicový přenos času a frekvence) s uzavřeným tvarem Sagnacova jevu podle BIPM (Mezinárodní úřad pro míry a váhy), common-view GNSS, přenos času bez ionosféry metodou PPP (přesné určování polohy), optický spoj ve volném prostoru s turbulentní scintilací a soubor hodin (papírová časová stupnice) vážený inverzním rozptylem, pod nejlepšími přispívajícími hodinami. Kalkulačka holdoveru hodin bez GNSS (src/holdover.rs) vystavuje uzavřený van-Loanův růst chyby setrvačného doběhu jako inverzi holdover-do-prahu – jak dlouho hodiny běží volně, než jejich časová chyba překročí rozpočet – napříč reprezentativními třídami klasických a kvantových hodin; modelováno (křížově zkontrolováno proti vícekrokové rekurzi kovariance clock_state) a otevřeně se uvádí, že pro velmi stabilní hodiny je holdover k těsnému prahu dán předpokládanou spodní mezí šumu pro dlouhé tau, nikoli citovanou ADEV. Podmíněná časová ochranná úroveň (src/tpl.rs) rozšiřuje holdover na spoofing: mez nezachycené časové chyby, při nezávislé křížové kontrole, která skládá spodní mez monitoru k-sigma, van-Loanův rozptyl doběhu po dobu latence detekce a čas do poplachu CUSUM (kumulativní součet). Kalibrována na skutečném zaznamenaném spoofingu (JammerTest 2024) a reprodukovatelná pomocí cargo run --example tpl_jammertest; složení MODELLED (bez rozpočtu rizika integrity na hodinu), podmíněné detekcí – žádná konečná nepodmíněná mez neexistuje.
Měřicí doména GNSS Dopředná syntéza pseudovzdálenosti / Dopplera s ionosférou Klobuchar (vysílanou) a IONEX / mřížka TEC (IONosphere map EXchange format / celkový obsah elektronů; měřenou) – včetně parseru souborů IONEX, časové interpolace mezi mapami a mapování šikmosti tenké slupky – troposférou Saastamoinen + Niell a RAIM typu snapshot (HPL/VPL).
Odolnost Rušení v bilanci spoje (J/S → efektivní C/N₀ → ztráta zachycení – poměr rušič/signál, poměr nosné k hustotě šumu – s činitelem protirušivého spektrálního oddělení Q nyní odvozeným ze skutečných výkonových spekter signálu a rušiče pomocí src/navsignal.rs – Q = 1/(R_c·κ), v CI křížově zkontrolovaným proti předchozí reprezentativní konstantě); stochastický detektor časového spoofingu (energetický test Neyman–Pearson / χ²₁ s uzavřenými tvary a Monte Carlo P_fa/P_md a bezpečnostním ukazatelem kvality (FoM) 1 − P_md); a vícevrstvý detektor spoofingu, který slučuje paritní test konzistence RAIM (se slepým místem společné složky modelovaným otevřeně), monitor výkonu RF AGC (automatické řízení zisku) a monitor kvality signálu (SQM – monitorování kvality signálu, early-minus-late); a rozpočet chyb kvantové inerciální navigace dead-reckoning (QuantumNavBudget, src/inertial/quantum_imu.rs), který skládá bílý šum náhodné procházky rychlosti kvantového atomového interferometru se zbytkovým biasem (křížově zkontrolovaným proti nezávislému integrátoru AccelModel) a chybou škálového faktoru do čísla driftu polohy za holdover – inerciální dvojče holdoveru hodin. Engine skórování odolnosti sladěný s rámcem (src/resilience/) mapuje simulované chování architektury na dílčí skóre po dimenzích napříč sedmi vlastními kategoriemi odolnosti Kshana (nikoli pojmy DHS), sladěnými s Resilient PNT Conformance Framework amerického ministerstva vnitřní bezpečnosti (DHS), a pak studuje stabilitu rozhodnutí libovolného jednoho složeného skóre nebo úrovně zralosti při Dirichletově simplexu vah a pětihrozbovém souboru – nestabilitu pořadí Kendallovým τ, míru přepnutí vítěze top-1 a kolaps diverzity společné složky (Hill-N2), s hashem chráněnou zprávou o ujištění (35 ručně odvozených testů orákula). Reprodukovatelné pomocí cargo run --example resilience_report; syntetické architektury MODELLED, vlastní hodnocení sladěné s RPCF v2.0, nikoli certifikace. Viz docs/RESILIENCE-CROSSWALK.md.
Pasivní rádiová geolokace Geolokace zdroje metodami TDOA/FDOA (rozdíl časů / frekvencí příchodu; src/geolocation.rs) – určení polohy rušiče nebo spoofera (nebo oportunního zdroje pro reverzní PNT) z hyperboloidů rozdílu časů příchodu napříč sítí přijímačů, řešené nejmenšími čtverci Gauss–Newton; přidání rozdílu frekvencí příchodu s pohyblivými přijímači společně obnoví polohu i rychlost zdroje, s mezí Cramér–Rao pro kovarianci polohy odvozenou z geometrie sítě. MODELLED (orákula vnitřní konzistence: zpětné převody dopředu→inverzně, identita J·CRLB = I, monotónnost GDOP a estimátor, který dosahuje vlastní CRLB při Monte Carlo) – bodový model přímé viditelnosti, bez členů vícecestného šíření / NLOS (non-line-of-sight), biasu hodin přijímače ani refrakce.
Navigační signál a sledování kódu Úroveň signálu mezi bilancí spoje a doménou měření (src/navsignal.rs): výkonové spektrální hustoty (PSD) s jednotkovou plochou pro BPSK-R(n) (binární fázové klíčování s obdélníkovými čipy) a sine-BOC(m,n) (binární offsetová nosná); koeficient spektrálního oddělení (SSC) κ = ∫ G_s·G_i df, který odvozuje protirušivý Q, jejž model rušení používá (Q = 1/(R_c·κ)), ze skutečných spekter signálu a rušiče místo reprezentativní konstanty; efektivní (Gaborova) šířka pásma RMS (BOC > BPSK – míra informace o vzdálenosti / Cramér–Rao); tepelný šum jitteru koherentního sledování kódu DLL early–late (DLL = smyčka s uzamčením zpoždění; Kaplan & Hegarty; pod metr pro C/A – hrubý/akviziční kód GPS – při 45 dB-Hz); a obálka chyby vícecestného šíření (koherentní EML, early-minus-late – potlačení úzkým korelátorem). Ověřeno proti uzavřeným kotvám (vlastní SSC BPSK = 2/(3·R_c), PSD s jednotkovou plochou, jitter C/A pod metr). Jde o analýzu výkonu signálu, nikoli o návrh hardwaru antén / RF nákladu (role partnera pro náklad).
Interoperabilita Příjem vysílaných efemerid více GNSS ve formátu RINEX-3 (GPS, Galileo, QZSS – japonský Quasi-Zenith Satellite System –, BeiDou MEO/IGSO – střední oběžná dráha kolem Země / nakloněná geosynchronní dráha – přes IS-GPS-200, rozhraní GPS; GLONASS, ruský Global Navigation Satellite System, přes PZ-90 – ruské datum Parametry Zemli 1990 – stavový vektor RK4) použitelný jako zdroj konstelace (RINEX na vstupu, geometrie PNT na výstupu); parser pozorování RINEX-3 (pseudovzdálenost, fáze nosné, Doppler, síla signálu; rozvržení pozorování 4,00 by se mělo parsovat, ale není testováno, a navigační soubory RINEX 4 se odmítají jménem, místo aby se chybně dekódovaly), který nyní napájí řešič určení polohy z jednoho bodu (SPP) (pvt) – skutečná kódová pozorování na vstupu, skutečná poloha přijímače na výstupu, ověřeno na datech IGS; čtečka/zapisovač přesných efemerid SP3-c/d s Lagrangeovou interpolací 9. řádu; a export CCSDS OEM 2,0 + OMM (Orbit Mean-elements Message) pro nástroje letové dynamiky (GMAT, Orekit, STK – Systems Tool Kit); a parsování + generování CCSDS-TDM (503) zpráv o sledovacích datech pro radiometrické sledování v hlubokém vesmíru.
Analýza mise (systémové inženýrství) Rozpočty návrhu mise prvního řádu, každý jako spustitelný druh: dvoutělesová geometrie startu a výstupu (launch-window – azimut startu sin Az = cos i/cos lat, minimální sklon, bonus rotace Země, Δv pro změnu roviny dogleg, denní příležitosti; src/launch.rs); balistický koridor návratu do atmosféry Allen–Eggers (reentry – maximální zpomalení, rychlost/výška při maximu g, rychlost při maximu ohřevu; src/reentry.rs); geometrie pokrytí pozorování Země (eo-coverage – pás záběru / nadirové GSD (rozlišení na zemi) / přístup mimo nadir / doba návratu přes prostorový trojúhelník SMAD (Space Mission Analysis and Design); src/eo_payload.rs); 3-DOF rozpočet chyb orientace a zamíření (tři stupně volnosti; attitude-budget – nejhorší moment gravitačního gradientu + rozpočet zamíření RSS (odmocnina součtu čtverců); src/attitude_budget.rs); predikce přeletů nad pozemní stanicí (passes – AOS/TCA/LOS, zachycení signálu / čas nejtěsnějšího přiblížení / ztráta signálu, maximální elevace, doba přístupu; src/passes.rs); a jednosměrná bilance spoje podle rovnice spoje CCSDS 401 / DSN 810-005 (rádiofrekvenční a modulační norma CCSDS / příručka návrhu spojů Deep Space Network; link-budget – FSPL (ztráta šířením ve volném prostoru), C/N₀, Eb/N₀ (poměr energie na bit k hustotě šumu), rezerva, uzavření; src/linkbudget.rs). MODELLED analytické rozpočty prvního řádu – vrstva před hardwarem pod STK/GMAT/Basilisk, nikoli náhrada 6-DoF ani radiometrie.
Rozhodovací analýza a srovnání variant (MCDA) Úplná sada vícekriteriální rozhodovací analýzy (MCDA) (src/mcda/) pokrývající všechny čtyři rodiny metod – agregace hodnot (WSM, WPM, WASPAS – model váženého součtu, model váženého součinu, vážené agregované hodnocení součtu a součinu), vzdálenost k ideálu (TOPSIS, Technique for Order of Preference by Similarity to Ideal Solution), kompromisní programování (VIKOR, ze srbského výrazu pro vícekriteriální optimalizaci a kompromisní řešení) a přeřazování (PROMETHEE II, Preference Ranking Organization Method for Enrichment of Evaluations; ELECTRE I, z francouzského výrazu pro eliminaci a volbu vyjadřující realitu), plus poměrovou soustavu MOORA (Multi-Objective Optimization on the basis of Ratio Analysis) a proporcionální COPRAS (Complex Proportional Assessment) – s váhami priorit z párového srovnání AHP (Analytic Hierarchy Process) (Consistency Ratio), nedominovanou Paretovou frontou, analýzou citlivosti na váhy a vícerozměrným skórováním užitku. Devět agregátorů reprodukuje nezávislé knihovny třetích stran pymcdm (WSM / WPM / WASPAS / MOORA / TOPSIS / VIKOR / PROMETHEE II) a pyDecision (ELECTRE I, COPRAS) na < 1e-9 a vektor priorit AHP + Consistency Ratio odpovídají tabulce Random-Index podle Saatyho a hlavnímu řešiči vlastních čísel SciPy/LAPACK na < 1e-9 (tests/mcda_*_reference.rs). VALIDATED – rozhodovací vrstva pod enginem srovnávacích studií.
Kosmické prostředí Model kosmického počasí (space-weather, src/space_weather.rs): indexy sluneční (F10.7 / centrovaný 81denní F10.7a – sluneční rádiový tok 10,7 cm) a geomagnetické (Kp, planetární index K, s definiční tabulkou Kp↔ap – ap je jeho lineární planetární amplituda) aktivity, jimi řízená exosférická teplota Jacchia-1971 (ověřená proti publikovanému slunečnímu minimu/průměru/maximu) a termosférická neutrální hustota ve výšce korigovaná na aktivitu proti statické – závislost hustoty na slunečním cyklu, kterou statická atmosféra USSA76 (US Standard Atmosphere 1976) vynechává. MODELLED: kalibrovaná vazba výškové stupnice prvního řádu, nikoli atmosféra ověřená daty (NRLMSISE – model exosféry US Naval Research Laboratory Mass Spectrometer and Incoherent Scatter Radar).
Vyhodnocení strojového učení a kompromis Zkušební stav pro vyhodnocení detekce rušení RF (impairment-eval, src/impairment_eval.rs): označený, parametry podložený syntetický korpus (nominální / rušení / spoofing času / spoofing polohy / vícecestné šíření), ROC/AUC (provozní charakteristika přijímače / plocha pod křivkou) nezávislé na detektoru, které boduje libovolný detektor (energy | agc | sqm | parity | fused) s Pd pro každou třídu (pravděpodobnost detekce) při cílové Pfa (pravděpodobnost falešného poplachu), a mezera optimismu mezi rozdělením, na kterém se učilo, a rozdělením mimo něj (režim posunu rozdělení). Plus srovnání kvantového a klasického PNT (quantum-trade, src/quantum_trade.rs), které kvantifikuje přínos hodin kandidáta pro časový/inerciální holdover z křivky změřené ADEV proti klasickému základu, s upozorněním na spodní mez pro dlouhé τ neseným artefaktem a obálkou odolnosti proti času bez GNSS. Metriky vyhodnocení (AUC / matice záměn / Pd-Pmd, Pmd je pravděpodobnost nezachycené detekce) jsou ověřeny na přesnou shodu proti scikit-learn 1.9.0 – včetně skutečné telemetrie ESA OPS-SAT (datová sada detekce anomálií OPSSAT-AD, Ruszczak et al. 2025, CC BY 4,0 – Creative Commons Attribution 4,0), kde ROC AUC podle Manna–Whitneyho ve Kshana reprodukuje roc_auc_score ze scikit-learn na < 1e-9 na odložené testovací části a průhledný detektor počtu vrcholů odděluje označené anomálie při AUC ≈ 0,85 (tests/opssat_ad_reference.rs) – a numerická jádra enginu srovnávání (fit ADEV metodou NNLS – nezáporné nejmenší čtverce –, pásma konzistence χ², van-Loanovo Q hodin) proti scipy 1.17.1; čísla přínosu zařízení postavená nad tím zůstávají MODELLED provozními charakteristikami – nikdy data z terénu/IQ (vzorky ve fázi/v kvadratuře), žádný verdikt dobrý/špatný. Na zkušebním stavu staví hlubší studie mezery optimismu (src/impairment_study.rs, impairment_ml.rs, eval_stats.rs), která boduje panel 13 detektorů (energy/AGC/SQM/parity plus seedované detektory s logistickou regresí a MLP s jednou skrytou vrstvou – vícevrstvý perceptron), fituje zákony škálování pro rozdělení, na kterém se učilo, a mimo něj s permutační nulou a učí prediktor leave-one-out degradace mimo rozdělení ze statistik uvnitř rozdělení (cargo run --example optimism_study). Vstupní část softwarově definovaného přijímače (src/sdr.rs – surové IQ/IF (mezifrekvence) → odbočky korelátoru early/prompt/late → SQM) a adaptéry pro příjem reálných dat (src/realdata/ – RINEX, u-blox UBX (binární protokol u-blox), GnssLogger, JammerTest, Yunnan, SatGrid) umožňují spouštět tytéž detektory nad záznamy dodanými lokálně (žádné datové sady se nepřikládají). Mapa křížení odolnosti kvantového a klasického při nejistotě parametrů (src/crossover.rs; cargo run --bin crossover_study) znovu vytváří studie křížení inerciálních a hodinových řešení za obrázky v Results.
Demonstrátor kvantově podporovaného PNT Tři spustitelné aplikační oblasti MODELLED za otevřeným enginem, z nichž každá vydává otevřené TradeEvidence + záznam o reprezentativnosti / mezerách k letu (src/representativeness.rs): důvěryhodný kvantový přenos času (quantum-time-transfer, src/timetransfer_chain.rs – koncový rozpočet optických mřížkových hodin + fotonického spoje proti CSAC (čipové atomové hodiny) + RF dvoucestnému, s opětovně použitou časovou ochrannou úrovní, bezpečnostním FoM útoku zpožděním/přehráním (1 − P_md) a detekcí anomálií hodin + latencí CUSUM); kvantová navigace bez GNSS (quantum-gnss-free-nav, src/quantum_nav_od.rs – inerciální doběh s atomovým interferometrem proti navigačnímu INS při výpadku GNSS, s otevřeným upozorněním, že bez vnějšího určení polohy je bias akcelerometru nepozorovatelný, takže chyba stále roste); a detekce poruch/anomálií kvantových systémů (quantum-anomaly-detect, src/quantum_faults.rs – označený katalog poruch s ROC AUC s bootstrapovým CI (interval spolehlivosti) z externě ověřeného eval_stats a minimální detekovatelnou poruchou při pevné míře falešných poplachů). Podpírá je sdílená knihovna modelů chyb kvantových zařízení (src/quantum_devices.rs) a jednotná sada pro srovnání kvantového a klasického (src/qtrade.rs). Znovu se používají ověřená jádra, na nichž jedou (metriky vyhodnocení proti scikit-learn, jádra srovnání proti scipy); čísla přínosu zařízení postavená nad nimi zůstávají MODELLED – ilustrační parametry zařízení/spoje z veřejných zdrojů, modelují třídu, bez TRL / odkazu na předchozí let / certifikace, bez podpory žádné agentury.
Úsporné inženýrství a dopad na integritu Pohled nákladů na pokrytí z hlediska ROI (návratnost investice) (src/frugal.rs) – náklady na jednotku dodaného pokrytí při srovnání architektur – a mapování nezachycená detekce → dopad na integritu (src/integrity_impact.rs), které převádí míru nezachycených detekcí monitoru na jeho příspěvek k riziku integrity. MODELLED podpůrné rozpočty rozhodování, aditivní.
Výměna artefaktů Kshana Interchange Format (KIF) (src/interchange.rs) – verzovaná, samopopisná obálka obalující výsledek scénáře jeho druhem, verzí schématu a štítky MODELLED/VALIDATED, aby uložený artefakt zůstal samodokumentující a starší obálky zůstaly zpětně kompatibilně čitelné.

Každá schopnost je dosažitelná jako API v Rustu, jako spustitelný scénář kind, nebo obojí. Zralost každé schopnosti – ověřená, spustitelná nebo knihovní – se sleduje v docs/CAPABILITY.md. Strojově kontrolovaná verifikační matice (src/verification.rs) vykresluje křížový odkaz požadavek → modul → test → orákulum → stav, s jednotkově testovanými invarianty poctivosti, které povolují štítek ověřená jen tam, kde ji podpírá nezávislé vnější orákulum – a které zaznamenávají schopnosti hardwaru/PA (zajištění produktu), jež Kshana záměrně neposkytuje.

Čtyři balíčky senzorů, jak byly poprvé publikovány (výsledky)

Výsledky#

Každý scénář porovnává kvantový senzor s jeho klasickým protějškem při výpadku GNSS trvajícím ~1,8 h. Čísla jsou reprodukovatelná (scenario + seed + version).

Co kvantové senzory přinesou, když GNSS zmizí, scénář holdoveru hodin: kvantové udrží 6600 s autonomie proti 2610 s u klasického, mnohem menší časovou chybu a dostupnost 100 % proti 95,6 %
Co kvantové senzory přinesou, když GNSS zmizí – clock-holdover · seed 42 · nakresleno v enginu 0.40.0 a každá hodnota výše je při každém sestavení znovu zkontrolována proti aktuálnímu enginu pomocí tests/published_figures_still_reproduce.rs · SVG

Výhoda závisí na délce výpadku a na vibracích, s výslovným bodem zvratu, kde vyhrává klasické řešení – ukázáno otevřeně napříč žebříčkem technologické připravenosti (údaje optických hodin jsou cíle pozemních demonstrátorů; žádné optické hodiny se stronciem dosud nelétaly):

Křížení kvantového a klasického holdoveru hodin napříč žebříčkem technologické připravenosti, s pásmy spolehlivosti
Teplotní mapa inerciální výhody kvantového nad klasickým podle délky výpadku a vibrací, s vrstevnicí bodu zvratu, kde vyhrává klasické řešení
Křížení odolnosti kvantového a klasického – žebříček TRL holdoveru hodin (nahoře) · mapa inerciální výhody s vrstevnicí bodu zvratu (dole). Lze znovu vytvořit pomocí cargo run --release --bin crossover_study.

Inerciální dead-reckoning: chyba polohy při výpadku GNSS – kvantový (atomový) senzor zůstává u čáry specifikace, zatímco senzor navigační třídy se rozbíhá na desítky kilometrů
Chyba polohy dead-reckoning při výpadku GNSS: kvantový senzor (modře) zůstává plochý u specifikace; klasický senzor (červeně) se rozbíhá na desítky kilometrů. Vytvořeno Kshana z scenarios/imu-deadreckoning.toml.

Balíček Scénář Kvantové Klasické
1 – Holdover hodin clock-holdover.toml (specifikace 20 ns) optické hodiny drží celý výpadek CSAC překročí specifikaci uprostřed výpadku
2 – Inerciální dead-reckoning imu-deadreckoning.toml (specifikace 100 m) atomový: ~41 m, drží celý výpadek navigační třída: překročí za ~350 s → desítky km
3 – Přenos času (optický mezidružicový spoj) timetransfer.toml optický: ~0,3 mm měření vzdálenosti RF (TWSTFT): ~150 mm měření vzdálenosti
4 – Hybridní fúze (vrchol) hybrid-pnt.toml plná poloha + čas po celý výpadek poloha omezena na ~350 s

Vrcholný scénář ukazuje tezi o fúzi: optický mezidružicový přenos času drží uzamčené i klasické hodiny a izoluje inerciální senzor jako slabý článek klasické sestavy – tedy kvantový inerciální senzor + optické časování společně.

Holdover hodin: chyba fáze při výpadku GNSS – optické hodiny zůstávají po celý výpadek v rámci specifikace 20 ns, zatímco čipové hodiny ji uprostřed výpadku překročí
Holdover hodin při výpadku GNSS: optické hodiny (modře) zůstávají po celý doběh uvnitř specifikace 20 ns; čipové hodiny (červeně) ji částečně překročí. Vytvořeno Kshana z scenarios/clock-holdover.toml.

Další scénář, orbit-gnss-challenged.toml, odvozuje dostupnost GNSS z orbitální geometrie místo ručně zadaných oken: kosmická loď uvnitř slupky GNSS se propaguje proti konstelaci Walker podobné GPS a počet viditelných družic (přímá viditelnost, zákryt Zemí, elevační maska) určuje stav určení polohy v každém kroku. Během dne je uživatel v určení polohy jen ~59 % času; kvantové hodiny drží časové řešení 5 ns přes každou mezeru (dostupnost 1.0), čipové hodiny jen ~0.83.

Orbit GNSS-challenged: časová chyba hodin během dne pro kosmickou loď uvnitř slupky GNSS, kde se mezery v pokrytí odvozují z orbitální geometrie – optické hodiny zůstávají přes mezery v rámci specifikace 5 ns, zatímco čipové hodiny ji překročí
Časová chyba během dne s dostupností GNSS odvozenou z orbitální geometrie: počet viditelných družic (přímá viditelnost, zákryt Zemí, elevační maska) určuje stav určení polohy v každém kroku, takže hodiny musí překlenout každou mezeru – optické hodiny drží specifikaci 5 ns, zatímco čipové hodiny ji překročí. Vytvořeno Kshana z scenarios/orbit-gnss-challenged.toml.

Konstelaci lze zadat také jako skutečné dvouřádkové sady elementů (TLE). Úplné TLE (řádek 1 + řádek 2) se propaguje úplným modelem SGP4/SDP4 – včetně atmosférického odporu a hlubokovesmírných lunisolárních a 12 h / 24 h rezonančních členů, které u drah GNSS s ~12 h záleží – ověřeno proti oficiálním vektorům AIAA 2006-6753 na nejhůře ≈ 4 mm. scenarios/orbit-sgp4-gps.toml obsahuje skutečný snímek Celestrak gps-ops provozní konstelace GPS (2021-07-28, 30 družic) a vyžaduje platné kontrolní součty TLE – dvouřádkové sady elementů jsou otevřená data z katalogu US Space Force / 18th Space Defense Squadron, redistribuovaná Celestrakem (Dr T. S. Kelso, celestrak.org); obnovují se pomocí scripts/fetch_tles.sh. Blok jen s řádkem 2 zachovává analytickou dvoutělesovou propagaci (scenarios/orbit-real-tle.toml); obě formy lze v jedné konstelaci míchat. Konstelaci lze stejně tak sestavit z bloku záznamů vysílaných efemerid GPS RINEX-3 – formátu, který přijímač dekóduje – propagovaných uživatelským algoritmem IS-GPS-200 a vedených stejnou geometrií (scenarios/orbit-rinex.toml).

Co to je / není, v plném znění

Co to je / není#

Je to: deterministický engine s malými závislostmi, který pokrývá celý zásobník PNT – geometrii oběžných drah, inerciální navigaci, fúzi GNSS/INS, integritu, hodiny a časování. Spouští scénář (často výpadek GNSS), vyvíjí kalibrované modely chyb senzorů příslušným estimátorem a výsledek skóruje proti provozním ukazatelům kvality – vydává reprodukovatelný výsledek JSON (JavaScript Object Notation) a graf SVG, z knihovny v Rustu, rozhraní příkazového řádku (CLI), rozšíření pro Python, modulu WebAssembly v prohlížeči, serveru Model Context Protocol (MCP) pro agenty AI nebo pluginu pro JetBrains IDE (integrované vývojové prostředí).

Není to: letový hardware, návrh kvantového nákladu, úplný přijímač signálu GNSS, simulátor rádiofrekvenčních (RF) signálů ani zkušební stav hardware-in-the-loop, ani certifikovaný letecký produkt – a nenahrazuje MATLAB/Simulink, STK (Systems Tool Kit) ani Orekit; stojí vedle nich a vyměňuje si s nimi soubory. Věrnost kvantového hardwaru pochází z publikovaných modelů chyb, nikoli z tohoto nástroje. Podrobná zralost každé schopnosti je zdokumentována v docs/CAPABILITY.md.

Není to (zatím): úplný fyzikální engine atomové interferometrie (většina kvantových senzorů spotřebovává publikované koeficienty Allanova/šumového rozpočtu; akcelerometr CAI (atomový interferometr) má vrstvu z prvních principů – fáze Mach–Zehnder, projekční šum, pokles kontrastu a vazba vibrací, plus systematiky Coriolisovy síly a světelného posunu – ale systematiky vlnoplochy a řešení nejednoznačnosti proužků zůstávají vrstvou plánu vývoje P2 (fáze plánu 2, vrstva kvantové fyziky), viz ROADMAP.md a docs/QUANTUM-MODELS.md); certifikovaný nebo hardwarový přijímač GNSS (řeší jednobodové určení polohy PVT (poloha, rychlost a čas) ze skutečných kódových pozorování RINEX (Receiver Independent Exchange Format) – ověřeno na skutečných datech IGS (International GNSS Service) – a jeho vrstva IQ (kshana iq, od 0.31.0) softwarově zachycuje a sleduje zaznamenané nebo vygenerované vzorky v základním pásmu, jako analytický přijímač: neovládá rádiový hardware ani nevysílá, není certifikovaným přijímačem a neprovádí určování polohy z fáze nosné (RTK ani PPP)); nebo úplná sada pro návrh mise (má stavební bloky Lambert / porkchop / manévr / určování oběžné dráhy, ale je to vrstva simulace výkonu nad GMAT (General Mission Analysis Tool)/Orekit, nikoli náhrada). Přiznat si tento rozsah je záměrné. Pokud potřebujete rozpočty chyb atomového interferometru z prvních principů (např. třídy CARIOQA-PMP – Cold Atom Rubidium Interferometry in Orbit for Quantum Accelerometry, Pathfinder Mission Preparation – nebo validaci ve stylu X-37B), podívejte se na plán vývoje P2 a ozvěte se nám ohledně spolupráce.

Navigace na nízké oběžné dráze Země#

Družice na nízké oběžné dráze kolem Země (LEO) přelétají rychle a hlučně. Druh leo-pnt-chain sleduje jeden systém každou fází: signál, přelet a jeho spoj, navigační zprávu a fúzované určení polohy, rychlosti a času (PVT) a přesné určování polohy (PPP). Každá fáze předává svá čísla další. Viz docs/LEO-PNT.md.

Řetězec LEO PNT ze skutečného běhu leo-pnt-chain (leo-pnt-end-to-end.toml): fáze signálu (generic-l na 1191,795 MHz, pilot sledovaný při 10,23 Mchip/s) předává fázi přeletu (1080 km, vrchol sledovaného C/N0 58,2 dB-Hz), která předává navigační zprávě (kepler-rac, fit 300 s, reprezentační SISRE 0,91 mm RMS, 0,250 m s určováním oběžné dráhy), která napájí fúzované určení polohy (jen GNSS 1,60 m RMS 3D, GNSS plus LEO 0,43 m) a přesné určování polohy (konvergence 11,5 min jen GNSS, 7,5 min s 240 družicemi LEO). Mezi fázemi se předává 11 hodnot.Řetězec LEO PNT ze skutečného běhu leo-pnt-chain (leo-pnt-end-to-end.toml): fáze signálu (generic-l na 1191,795 MHz, pilot sledovaný při 10,23 Mchip/s) předává fázi přeletu (1080 km, vrchol sledovaného C/N0 58,2 dB-Hz), která předává navigační zprávě (kepler-rac, fit 300 s, reprezentační SISRE 0,91 mm RMS, 0,250 m s určováním oběžné dráhy), která napájí fúzované určení polohy (jen GNSS 1,60 m RMS 3D, GNSS plus LEO 0,43 m) a přesné určování polohy (konvergence 11,5 min jen GNSS, 7,5 min s 240 družicemi LEO). Mezi fázemi se předává 11 hodnot.

Každý druh scénáře podle rodiny#

Druhy scénářů enginu, zařazené do rodin. Každá rodina má stránku s jedním záznamem na druh (popis a pole enginu, ukázkový příkaz, hlavní čísla z běhu, řádky verifikační matice, které jej uvádějí, a graf, který engine sám zapisuje) a přehledový list těchto grafů; docs/KINDS.md je všechny indexuje. Tabulku zapisuje tools/gen_readme_blocks.py a stránky tools/gen_kinds_index.py a oba selžou, pokud engine získá druh, který žádná rodina nepojmenovává.

Rodina Na co odpovídá Druhy Spustit jeden
Hodiny, časování a holdover jak dlouho hodiny drží čas bez GNSS a jak si časovací systém vede proti svým maskám clock, sweep, sweep-nd, telecom-timing, slot-timing, timetransfer, time-transfer-budget, holdover-test, quantum-time-transfer kshana scenarios/clock-holdover.toml
Inerciální senzory, fúze a kvantové senzory dead reckoning a fúze senzorů při výpadku GNSS, s klasickými i kvantovými senzory inertial, hybrid, fusion, hybrid-ukf, gnss-ins, ins-trn-coast, quantum-gnss-free-nav, quantum-anomaly-detect, quantum-trade kshana scenarios/gnss-ins.toml
Alternativní PNT při nedostupnosti GPS navigace podle gravitace, terénu a dalších polí, když GNSS zmizí gravity-map, terrain-nav, terrain-slam, combined-altpnt, conflict-resilience kshana scenarios/combined-altpnt.toml
Konstelace, pokrytí a geometrie kde jsou družice, kdo je vidí a jak dobrá je geometrie, kolem Země, Měsíce nebo Marsu orbit, ephemeris, constellation-design, solar-system, body-pnt, mars-pnt, passes kshana scenarios/orbit-gnss-challenged.toml
Měření GNSS, určování polohy a integrita pseudovzdálenosti, určení polohy, ochranné úrovně a kosmické prostředí integrity, gnss-sim, pvt, araim-reference-check, space-weather, realtime-frame-eop kshana scenarios/integrity-raim.toml
Rušení (jamming), spoofing a spektrum jak interference dorazí k přijímači a zda je detekována jamming, spoof, spoof-detect, tracking-loop, spectrum, impairment-eval kshana scenarios/jamming-demo.toml
Navigace na nízké oběžné dráze Země přelet, spoj, navigační zpráva a fúzované určení polohy, fázi po fázi leo-signal, leo-pass, leo-navmsg, leo-pvt, leo-ppp, ntn-positioning, leo-pnt-chain kshana scenarios/leo-pnt-end-to-end.toml
Lunární a cislunární navigace, čas, soustavy a geodézie na Měsíci lunar-integrity, lunar-time-offset, lunar-time-budget, lunar-ascent, lunar-surface, lunar-descent, lunar-orbit-rendezvous, lunar-vlbi, lunar-vlbi-fim, lunar-joint-od-clock, lunar-frame-realisation, lunar-frame-campaign, lunar-llr-datum, moonlight-service-volume, lunar-differential-pnt, lunar-station-coverage, lunar-beacon, lunar-interop-export, cislunar-observability, cislunar-arc-recovery, lunar-attack-surface, lunar-jamming, earth-gnss-lunar, lunar-infrastructure kshana scenarios/lunar-infrastructure-od-consistency.toml
Navigace uživatelů ve vesmíru signály GNSS pro kosmické lodi nad, kolem a za drahami GNSS gnss-ssv kshana scenarios/gnss-ssv-shell.toml
Optické PNT optické spoje atmosférou a ukazatele kvality optika-plus-RF optical-atmosphere, hybrid-optical-rf kshana scenarios/optical-atmosphere-network.toml
Analýza misí, spoje a vesmírné operace start, výstup, návrat do atmosféry, orientace, spoje, plánování kontaktů a formáty souborů launch-window, ascent-losses, reentry, entry-heating, eo-coverage, eo-radiometry, attitude-budget, aocs, link-budget, acm-link, contact-schedule, aperture-duty-cycle, space-packet, oem-interop kshana scenarios/launch-window.toml
Vlákna misí rozpočet chyb navigace a času řetězce fází od startu po vstup do atmosféry mission-thread kshana scenarios/mission-thread-artemis-class.toml
Kampaně řetězené mise, přeběhy a soubory sestavené z ostatních druhů campaign kshana scenarios/campaign-jam-spoof-holdover-integrity.toml

Každý příkaz#

kshana <scenario.toml> spouští scénář; každý další příkaz je podpříkaz a kshana --help vypíše použití všech. Příkazy jsou --study, --validate, kinds, example, receiver-trust (s live a evidence), evidence (keygen, verify, attach-timestamp, round-trip), jammertest (import, score), trust-telemetry, imu-fit, nmea-scenario, interference-map (adsb, ais, daily, sensitivity, fetch-land), route-exposure, bench (spec, truth, cases, score, baseline, seal, reveal-check, manifest, verify-manifest, validate, leaderboard), bench-export, compliance-report, lunanet-afs-check, standards-pack, partner (check), osnma, iq (scene, acquire, track, sweep, labfit, campaign, conditions, frontend, monitor, inventory, info, extract, convert, decimate), sky a skyline. docs/COMMANDS.md uvádí účel každého z nich, ověřený příklad a jeho stránku v dokumentaci.

Každý povrch#

Jeden engine, tytéž výsledky všude: příkazová řádka, knihovna v Rustu, Python, JavaScript a WebAssembly, server MCP s pluginovými příkazy a dovednostmi, Kshana Studio (každá stránka běží v prohlížeči, bez instalace, nic se nenahrává), integrace ROS 2, Signal K, OpenCPN, GNSS-SDR a gnss_lib_py, nasazovací sady pro systemd, Docker a Grafanu a plugin pro JetBrains. docs/ALL-SURFACES.md je vyjmenovává i s tím, jak každou získat, a s názvy všech pluginových příkazů, dovedností a stránek Studia; docs/SURFACES.md uvádí u každého příkazu a druhu, která plocha jej nese a která ne, a proč.

Jak běh probíhá#

Scénář je soubor TOML (Tom's Obvious, Minimal Language): druh, seed a parametry. Engine jej spustí a vedle něj zapíše výsledek, graf a zprávu, spolu s exporty, o které požádáte.

Jak běh probíhá. Soubor scénáře TOML (druh, seed a jeho parametry) jde do enginu, kshana 0.40.0, přes dispečink api::run_toml nad 92 druhy scénářů, deterministicky ze scénáře, seedu a verze enginu. Engine zapisuje result.json, chart.svg, report.html a report.json, table.csv pro druhy, které ji definují, a na požádání exporty SP3, CCSDS OMM a OEM, CZML, KML, GeoJSON, STK a SigMF; sada zapisuje study.json a study.html. Tyto soubory napájejí Kshana Studio v prohlížeči, asistenta s umělou inteligencí přes server kshana-mcp a průběžnou integraci.Jak běh probíhá. Soubor scénáře TOML (druh, seed a jeho parametry) jde do enginu, kshana 0.40.0, přes dispečink api::run_toml nad 92 druhy scénářů, deterministicky ze scénáře, seedu a verze enginu. Engine zapisuje result.json, chart.svg, report.html a report.json, table.csv pro druhy, které ji definují, a na požádání exporty SP3, CCSDS OMM a OEM, CZML, KML, GeoJSON, STK a SigMF; sada zapisuje study.json a study.html. Tyto soubory napájejí Kshana Studio v prohlížeči, asistenta s umělou inteligencí přes server kshana-mcp a průběžnou integraci.

Tento přibalený scénář trvá 2 h: 10 min GNSS, poté zhruba 1,8 h s odepřeným GNSS. Ptá se, jak dlouho optické mřížkové hodiny se stronciem a čipové atomové hodiny (CSAC) udrží čas s odchylkou do 20 ns.

kshana example clock-holdover > clock-holdover.toml
kshana clock-holdover.toml
scenario 5ba83a232b94 | quantum holdover 6600s p95 1.20e-4ns integrity 1.000 security n/a (no attack) | classical holdover 2610s p95 19.7ns integrity 1.000 security n/a (no attack)
wrote clock-holdover.result.json, clock-holdover.chart.svg, clock-holdover.report.html, and clock-holdover.report.json

Optické hodiny udrží rozpočet 20 ns po celý výpadek trvající 6600 s; CSAC jej udrží 2610 s a v rozpočtu je 95,6% běhu oproti 100% u optických hodin. kshana example vypíše všechny přibalené scénáře.

Mise#

Deset odvětví klade témuž enginu deset různých otázek. Každé má přibalené scénáře, od kterých lze začít.

Odvětví Začněte s
Obrana a bezpečnost campaign-jam-spoof-holdover-integrity, spoof-meaconing
Kosmonautika, oběžná dráha Země orbit-gnss-challenged, leo-pnt-end-to-end
Měsíc, Mars a hluboký vesmír lunar-relay-constellation, mars-orbit-pnt
Letectví a drony small-uas-jammed-nav, araim-gps-galileo
Námořní maritime-strait-jamming, maritime-port-approach-coast
Silnice automotive-urban-canyon
Železnice rail-tunnel-coast
Kritická infrastruktura a časování clock-holdover, clock-ensemble
Telekomunikace a 5G (pátá generace mobilních sítí) telecom-prtc-holdover-24h, leo-vertical-5g-network-timing
Věda a výzkum sweep-clock-stability, quantum-pnt-demonstrator.suite
Otázka, kterou si každé odvětví klade
Odvětví Otázka, kterou klade Začněte s
Obrana a bezpečnost Jak dlouho zůstávají naše navigace a časování důvěryhodné při rušení (jamming) a podvrhování signálu (spoofing) a které vrstvy nás udrží ve specifikaci? campaign-jam-spoof-holdover-integrity, spoof-meaconing
Kosmonautika: oběžná dráha Země Vidí moje kosmická loď dost navigačních družic, jak dlouho její hodiny udrží čas mezi určeními polohy a co by přidala navigační vrstva na nízké oběžné dráze? orbit-gnss-challenged, leo-pnt-end-to-end
Měsíc a hluboký vesmír Získá přistávací modul, rover nebo orbiter u Měsíce, u Marsu či dál důvěryhodnou polohu a čas? lunar-relay-constellation, mars-orbit-pnt
Letectví a drony Jak dlouho zůstane můj bezpilotní letecký systém (UAS) v rámci rozpočtu polohy poté, co jammer odebere GNSS, a je na mé trase dostupná integrita? small-uas-jammed-nav, araim-gps-galileo
Námořní Jak daleko přes vodu jammer dosáhne, byl by zachycen posun polohy a jak dlouho může loď plout setrvačností do přístavu? maritime-strait-jamming, maritime-spoof-position-push, maritime-port-approach-coast
Silnice a automobilový průmysl O kolik se auto odchýlí pod nadjezdem nebo kolem jammeru u silnice? automotive-urban-canyon
Železnice Kolik sekund po vjezdu do tunelu ještě vlak pozná, na které koleji je? rail-tunnel-coast
Kritická infrastruktura a časování Pokud je čas GNSS ztracen nebo podvržen, jak dlouho udrží elektrická síť, obchodní místo nebo datové centrum dohledatelný čas? clock-holdover, clock-ensemble
Telekomunikace a 5G Pokud je ztracena časová reference GNSS, zůstanou hodiny mé sítě v rámci masek ITU-T a jak dlouho? telecom-prtc-holdover-24h, leo-vertical-5g-network-timing
Věda a výzkum Mohu výsledek PNT reprodukovat, rozšířit a citovat, až po seed? sweep-clock-stability, quantum-pnt-demonstrator.suite

Důkazy#

SGP4 ověřeno proti všem 666 referenčním vektorům AIAA 2006-6753, nejhorší chyba polohy 4,12 mm

176 z 401 schopností ověřeno proti nezávislým vnějším orákulům; 221 poctivě označeno jako modelované. Každý řádek verifikační matice uvádí schopnost, orákulum, proti němuž je ověřena, test, který kontrolu provádí, a označení, které z toho plyne. Kontinuální integrace (CI) znemožňuje označit schopnost jako VALIDATED bez nezávislého vnějšího orákula.

Jak schopnost získá své označení. Každý řádek verifikační matice uvádí schopnost, orákulum, proti němuž je ověřena, test, který kontrolu provádí v kontinuální integraci, a označení, které z toho plyne. Řádek smí být VALIDATED jen s nezávislým vnějším orákulem; jinak je MODELLED, nebo PARTNER, pokud za něj odpovídá hardwarový partner. Příklad: SGP4/SDP4, Cowell 6-DOF + poruchy, dávkové/sekvenční OD, orákulum ověřovací vektory AIAA 2006-6753 SGP4, test tests/sgp4_verification.rs, označení VALIDATED. Aktuální počty: 176 VALIDATED, 221 MODELLED, 4 PARTNER z 401 řádků. Celkem 176 schopností ověřeno proti nezávislým vnějším orákulům; dalších 221 je poctivě označeno MODELLED a 4 je ve vlastnictví partnera (PARTNER).Jak schopnost získá své označení. Každý řádek verifikační matice uvádí schopnost, orákulum, proti němuž je ověřena, test, který kontrolu provádí v kontinuální integraci, a označení, které z toho plyne. Řádek smí být VALIDATED jen s nezávislým vnějším orákulem; jinak je MODELLED, nebo PARTNER, pokud za něj odpovídá hardwarový partner. Příklad: SGP4/SDP4, Cowell 6-DOF + poruchy, dávkové/sekvenční OD, orákulum ověřovací vektory AIAA 2006-6753 SGP4, test tests/sgp4_verification.rs, označení VALIDATED. Aktuální počty: 176 VALIDATED, 221 MODELLED, 4 PARTNER z 401 řádků. Celkem 176 schopností ověřeno proti nezávislým vnějším orákulům; dalších 221 je poctivě označeno MODELLED a 4 je ve vlastnictví partnera (PARTNER).
Popisek Řádky Význam
VALIDATED 176 nezávislé vnější orákulum souhlasí: reálná data, nezávislá implementace nebo publikované referenční vektory
MODELLED 221 ověřeno proti analytické pravdě nebo vnitřní konzistenci simulace a řečeno otevřeně
PARTNER 4 odpovídá za to hardwarový partner; Kshana pro to žádné orákulum nemá

Několik kontrol: všech 666 vektorů AIAA (American Institute of Aeronautics and Astronautics) 2006-6753 SGP4 (Simplified General Perturbations 4) do 4,12 mm; silový model Cowell do 0,08 m proti Orekit 12,2; Galileo do 0,61 m a Swarm-A do 0,10 m proti skutečným přesným efemeridám Evropské kosmické agentury (ESA). Testy udržují přibližně 95 % pokrytí řádků v src/, s prahem 85 % v CI. Registrem je docs/VERIFICATION-MATRIX.md, generovaný z src/verification.rs: úplná matice o 401 řádcích a proč nemá žádný modelovaný řádek vnější orákulum, v docs/MODELLED-RATIONALE.md.

Jak funguje validace, vybraná tabulka nejdůležitějších bodů a obrázky důkazů

Validace, reprodukovatelnost a poctivost#

  • Každý šumový člen je kalibrován podle publikované, citované hodnoty a ověřen proti standardnímu vztahu (Allanova odchylka u hodin; Grovesův růst chyby dead-reckoningu u inerciálních systémů; převod časování na měření vzdálenosti u přenosu času). Stav každého členu se vede v docs/VALIDATION.md jako validated nebo not modeled: nic není prezentováno jako ověřené, co ověřené není.
  • Reprodukovatelné již konstrukcí: scenario + seed + engine version → identical bits. scripts/check-reproducible.sh to vynucuje; kvantové a klasické běhy používají nezávislé seedy, takže jejich šum není korelovaný.
  • Zralost je uvedena poctivě: údaje o optických hodinách a optických spojích jsou výsledky typu cíle / pozemního demonstrátoru, nikoli letové.

Štítek důkazů u každého čísla#

Každé číslo a každá tabulka, které běh zapíše, říká, nakolik jim lze důvěřovat a na kterých řádcích registru stojí. Výsledné JSON má klíč evidence, graf SVG řádek pod grafem (a prvek <metadata id="kshana-evidence">) a tabulka CSV na začátku řádky komentářů # evidence: (čtěte s comment='#'). Uvádí úroveň, VALIDATED, MODELLED nebo PARTNER, a identifikátory (VM- a osm hexadecimálních číslic) řádků verifikační matice, které běh použil. Úroveň je nejslabší z těchto řádků, takže běh, který se opírá o jediný modelovaný řádek, je označen MODELLED bez ohledu na to, kolik ověřených řádků leží vedle něj; štítek tedy nikdy netvrdí víc než registr. Řádky, stavy a identifikátory se čtou z matice, nepíší se ručně (docs/VERIFICATION-MATRIX.md, docs/SCHEMA.md) a tests/evidence_labels_doc_sync.rs selže, pokud číslo nemá štítek nebo štítek s maticí nesouhlasí.

Validace v kostce#

Každý řádek vynucuje pojmenovaný test v CI. Tato tabulka je vybraný výběr; úplná strojově kontrolovaná matice má 401 řádků — 176 VALIDATED, 221 MODELLED, 4 PARTNER (src/verification.rs), s úplnými důkazy (a tím, co poctivě ještě není ověřeno) v docs/VALIDATION.md a v artefaktu kshana-validation-summary.html každého vydání (generovaném pomocí cargo run --bin validation_report, s atestací SLSA — Supply-chain Levels for Software Artifacts).

Sloupec Stav uvádí druh důkazu v souladu s výše uvedeným žebříčkem validace: VALIDATED = ověřeno proti nezávislému vnějšímu orákulu (reálná data, nezávislá knihovna nebo publikované referenční vektory); MODELLED = ověřeno proti analytické pravdě nebo vnitřní konzistenci simulace (bez nezávislé vnější datové sady). VALIDATED popisuje způsob kontroly, nikoli výsledek typu splněno/nesplněno: poctivé minutí proti skutečnému vnějšímu orákulu zůstává VALIDATED, zatímco srovnání, které žádný řádek matice neuvádí jako orákulum (výše uvedené proložení LRO — Lunar Reconnaissance Orbiter), je označeno MODELLED. Řádky CI jsou procesní pojistky, nikoli ukazatele kvality. Několik ostrůvků reálných dat (měřené cesiové hodiny, Stable32 PHASE.DAT a kontroly OPS-SAT/ICGEM, kde surové vstupy nemají licenci k redistribuci) je omezeno dostupností dat: test vypíše oznámení o přeskočení a zůstane zelený, pokud vstup chybí, a veřejná referenční čísla jsou uložena v tests/fixtures/. Surové vstupy získáte příslušným scripts/fetch_*.sh.

Stav Schopnost Shoda Reference / orákulum
VALIDATED Propagace SGP4/SDP4 666/666 vektorů, nejhorší 4,12 mm AIAA 2006-6753 (Vallado tcppver.out) + přímé srovnání s nezávislým crate sgp4
VALIDATED Referenční soustavy: nutace IAU 2000A/B, řetězec CIO IAU 2006/2000A, ERA bit po bitu (X, Y na 1e-14, s na 1e-18, ERA na 1e-12) ERFA/SOFA eraXys06a · eraC2ixys · eraEra00 · eraNut00a/b
MODELLED GCRS→ITRS oproti nezávislému enginu SPICE max. 0.028″ → ≤ 0,86 m na zemi, ≤ 3,6 m na oběžné dráze GNSS ANISE (čisté Rust NAIF/SPICE), tytéž IERS finals2000A EOP, 8 epoch 2020–2023 (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
MODELLED Geopotenciál EGM2008 (stupeň/řád 70) zrychlení = ∇V s přesností < 1e-6; zonální zhroucení na ověřené J2 Koeficienty NGA EGM2008 + analytická identita ∇V
VALIDATED Syntéza gravitačních funkcionálů (gravitačně podporovaná navigační mapa bez GNSS) GRS80 Somigliana + γ_e/γ_p s přesností 3.5e-12; skutečná mapa poruch EGM2008 fyzikálně věrohodná (RMS ≈ 26 mGal, st./řád 70) Normální tíže GRS80 (Moritz 1980, IAG — International Association of Geodesy) podle Somiglianovy formule + skutečný ICGEM EGM2008 (tests/icgem_gravity_reference.rs)
VALIDATED Odhadovače Allanovy odchylky (ADEV/MDEV/TDEV/HDEV) + pásma spolehlivosti reprodukují referenční odchylky; pásma χ² souhlasí NIST SP 1065 (Riley), tabulka 31/32 s 1000 body
VALIDATED Odhadovače Allanovy odchylky na skutečně měřených cesiových hodinách OADEV/OHDEV s přesností 1e-3 (pozorováno ≤ 3e-5), 16 faktorů průměrování Stable32 na skutečném 5071A Cs vs. vodíkový maser, 556 990 bodů (tests/cs5071a_reference.rs, omezeno dostupností dat)
VALIDATED Odhadovače Allanovy odchylky na kanonickém Stable32 PHASE.DAT OADEV/MDEV/TDEV s přesností 1e-3 (pozorováno ≤ 5e-5), 139 faktorů průměrování Referenční odchylky Stable32 pro PHASE.DAT (tests/phasedat_reference.rs, omezeno dostupností dat)
MODELLED Chybový model IMU — ARW / VRW / nestabilita biasu obnoveno s přesností < 5 % (nestabilita biasu < 15 %) Datový list Analog Devices ADIS16465; referenční profil NaveGo
VALIDATED Numerický propagátor Cowell + silový model (konzervativní úrovně) nejhorší chyba polohy 0,08 m za 24 h, 278 epoch (LEO + GTO) Orekit 12,2 NumericalPropagator/DormandPrince853 (CS GROUP), tests/numerical_cowell_propagator_reference.rs
MODELLED Úroveň odporu v Cowellově modelu + absolutní vstupy efemerid Slunce/Měsíce a hustoty úroveň odporu charakterizována ≈ 333 m / 24 h; neporušený model souhlasí s Keplerovou úlohou v univerzálních proměnných pod metr, energie/moment hybnosti ~1e-9 vestavěné efemeridy s nízkou přesností + analytický Kepler
MODELLED Lambert · Ciolkovskij · porkchop zpětný průchod k pravdě dvou těles; ΔV < 0.01 % Izzo 2015 · raketová rovnice · analytický práh Hohmann
MODELLED Určování oběžné dráhy (dávkové Gauss–Newton) pod metr / mm·s⁻¹ bez šumu; ~2 m při hladině šumu 5 m dvě tělesa + J2 na oblouku RK4
MODELLED Proložení silového modelu proti přesným efemeridám Galileo (celý oblouk) 0,61 m 3D RMS, 24 h, st./řád 70, pouze silový model Finální dráha ESA/ESOC ESA0MGNFIN (E11), skutečné finals2000A EOP (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
MODELLED Proložení silového modelu proti přesným efemeridám Swarm-A (redukovaná dynamika) 0,10 m 3D RMS (mez empirické úrovně, nikoli míra) Přesná dráha ESA SW_OPER_SP3ACOM_2_ (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
MODELLED Proložení silového modelu proti lunárnímu LRO (poctivé minutí) 6,67 m s redukovanou dynamikou, nad cílem 5 m JPL Horizons LRO (NAIF −85) + GRAIL (Gravity Recovery and Interior Laboratory) GRGM660PRIM (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
MODELLED Určování dráhy v hlubokém vesmíru u Marsu (redukovaná dynamika, SRIF) ≈ 0,2 m Mars-LMO (ukazatel kvality simulace, nikoli skutečné mise) syntetické OD s uzavřenou smyčkou — validace mechanismu odhadovače
MODELLED Dynamika Marsu se Sluncem ve středu vs. JPL DE440 137 m @ oblouk 1 den (roste s obloukem = nemodelované n-těleso) JPL DE440 přes ANISE (xval/anise-mars-od, podmíněno jádry) (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
VALIDATED Určení polohy z jednoho bodu vs. zaměřená souřadnice IGS (skutečná pozorování) 5,7 m 3D RMS / 1,1 m horizontálně, dvoufrekvenční kódové SPP bez ionosféry Zaměření stanice IGS ABMF + broadcast efemeridy GPS, 2018-05-13 (tests/pvt_abmf.rs)
MODELLED Těsně vázaný GNSS/INS UKF 0,77 m RMS během 30minutového přeletu LEO včetně výpadku 120 s setrvačný let podle silového modelu, odvozeno ručně
MODELLED Navigace podle gravitační mapy bez GPS ~70 km driftu INS → obnoveno ~145 m Cíl ESA NAVISP Quantum Wayfarer
MODELLED Navigace podle terénu (TERCOM/SITAN) drift 70 km → < 500 m (mez daná rozlišením mřížky ~140 m) SRTM .hgt DEM; ručně vnesený drift (nekruhová kontrola)
MODELLED Hlavní pole IGRF-14 (stupeň/řád 13) pól ~80,7° s. š., dipól ~29,7 µT, fyzikální pásmo 22–67 µT IAGA (International Association of Geomagnetism and Aeronomy) igrf14coeffs.txt (Schmidtova semi-normalizace)
MODELLED Modulace navigačního signálu a sledování kódu BPSK vlastní SSC = 2/(3·R_c); PSD s jednotkovou plochou; jitter DLL pro C/A pod metr při 45 dB-Hz Kotvy SSC/PSD v uzavřeném tvaru + vzorec tepelného šumu DLL podle Kaplana a Hegartyho
MODELLED Diferenciální korektor halo/NRHO v CR3BP STM = konečné diference; dráha se uzavírá s přesností stroje; L2 9:2 NRHO ≈ 6,57 d / perilunium ≈ 3 250 km kontrola STM konečnými diferencemi + publikovaná jižní L2 9:2 NRHO (≈ 6,56 d / ≈ 3 370 km) — CR3BP, nikoli skutečné efemeridy Gateway
MODELLED Integrita ARAIM se dvěma konstelacemi režim poruchy celé konstelace na skutečných GPS + Galileo EU ARAIM TR (technická zpráva) / DO-316; Celestrak gps-ops 2021-07-28 (porovnáno s touto referencí; žádný řádek verifikační matice ji neuvádí jako vnější orákulum, proto není označeno VALIDATED)
VALIDATED Geometrie GNSS / DOP (GDOP/PDOP/HDOP/VDOP/TDOP) shoda na 1e-6 relativně napříč 8 geometriemi (dobře podmíněné → téměř singulární) gnss_lib_py 1.0.4 (Stanford NAV Lab) — nezávislá knihovna (tests/dop_reference.rs)
VALIDATED Metriky vyhodnocení ML detektorů (AUC/ROC/matice záměn/Pd-Pmd/preciznost/F1) přesné počty + < 1e-9 na 5 datových sadách × 24 prazích scikit-learn 1.9.0 (Pedregosa et al., JMLR — Journal of Machine Learning Research — 2011) — nezávislá knihovna (tests/eval_metrics_reference.rs)
VALIDATED ROC AUC detekce anomálií na skutečné telemetrii ESA OPS-SAT AUC reprodukuje scikit-learn s přesností < 1e-9; AUC detektoru počtu vrcholů ≈ 0.85 na označené testovací části scikit-learn roc_auc_score na testovací části OPSSAT-AD (Ruszczak et al. 2025, CC BY 4,0) — skutečná telemetrie OPS-SAT (tests/opssat_ad_reference.rs)
VALIDATED Numerická jádra kvantového obchodu (proložení ADEV metodou NNLS · pásma konzistence χ² · Q hodin podle van Loana) NNLS + Q přesně; χ² < 5e-4 při provozních stupních volnosti ≥ 48 scipy 1.17.1 — optimize.nnls / stats.chi2.ppf / linalg.expm (tests/scipy_reference.rs)
VALIDATED Telekomunikační metriky wanderu MTIE / MDEV / TDEV (ITU-T G.810/G.823/G.8261/G.811 — doporučení Telekomunikačního standardizačního sektoru Mezinárodní telekomunikační unie) MTIE (9 faktorů průměrování, bit po bitu) a MDEV + TDEV (8 faktorů, < 1e-9 relativně) na řadě NIST SP 1065 LCG (lineární kongruenční generátor) allantools 2024,06 mtie / mdev / tdev — nezávislá knihovna (tests/mtie_reference.rs, tests/mdev_tdev_reference.rs)
VALIDATED Metody obchodní studie MCDA — všechny čtyři rodiny rozhodování, devět externě ověřených agregátorů (WSM · WPM · WASPAS · MOORA · COPRAS · TOPSIS · VIKOR · PROMETHEE II · ELECTRE I) plus párové porovnávání priorit vah AHP skóre / pořadí / matice konkordance reprodukovány s přesností < 1e-9 pymcdm + pyDecision (nezávislé knihovny MCDA třetích stran) + Saaty RI (Random Index) / SciPy-LAPACK eig (tests/mcda_*_reference.rs)
VALIDATED Obálka Dopplera na LEO z dráhy a nosné Maximum Iridium v rozmezí 5 % od publikovaných ±36 kHz; Xona Pulsar X1 uvnitř publikovaných 32–34 kHz Výsledky testů RNTF LEO PNT; Leclère, Marathe & Reid, arXiv:2509,19551 (tests/leo_doppler_reference.rs)
MODELLED Konvergence PPP s doplněním o LEO 7,4 → 4,8 / 3,2 / 2,7 / 2,3 min při 60 / 96 / 192 / 288 družicích LEO, monotónně; NEES filtru uvnitř pásma χ² trend porovnán s Li et al., J. Geod. 93:749 (2019) (9,6 → 7,0 / 3,2 / 2,1 / 1,3 min); konstelace a šum nereprodukovány
MODELLED Podmíněná ochranná úroveň časování (nezachycená časová chyba omezená holdoverem při spoofingu) složení reprodukuje vícekrokovou kovarianční rekurzi clock_state; kalibrováno na skutečném zaznamenaném spoofingu Skaláry JammerTest 2024 (Zenodo 15911589) + uzavřené tvary van Loan / CUSUM (examples/tpl_jammertest)
MODELLED Hodnocení odolnosti PNT + nestabilita rozhodnutí 35 ručně odvozených testů orákula; bajtově deterministický artefakt studie (pevný seed) Mapování DHS RPCF v2.0 + uzavřené tvary Dirichlet / Kendallovo τ / Hill-N2 — syntetické architektury, nikoli certifikace
MODELLED Studie optimistické mezery způsobené RF poruchami (zákony škálování + prediktor leave-one-out) významnost oproti permutační nulové hypotéze; bajtově deterministický artefakt (5 seedů) syntetický korpus podložený parametry — metriky vyhodnocení jsou VALIDATED proti scikit-learn (výše); studie je MODELLED
CI Reprodukovatelnost napříč platformami bitově shodný vstup + tvarové golden soubory na 3 OS (operačních systémech) Matice CI Linux / macOS / Windows, golden soubory SHA-256
CI Pokrytí testy ~95 % řádků v src/ bez src/*_data.rs a src/main.rs, hranice ≥ 85 % cargo-tarpaulin (engine LLVM)

Jak schopnost získá své označení: požadavek je mapován na modul v src, na test v tests, na vnější orákulum (skutečný soubor dat, nezávislá referenční implementace nebo zveřejněné vektory) a na stav — s ochranou vynucovanou v CI, že žádná schopnost nemůže být ověřena bez vnějšího orákula. Aktuální počty: 176 ověřeno, 221 modelováno, 4 partnerské, celkem 401
Jak schopnost získá své označení — invariant vynucený v CI: žádné vnější orákulum ⇒ nemůže být ověřena · SVG

Čím je každé tvrzení podloženo: sloupec ověřených je z konstrukce 176 ze 176 ExternalDataset (vynuceno v CI); řádky vypočtené z modelu jsou poctivě označeny InternalConsistency, ReferenceImpl nebo ExternalDataset; řádky partnera nemají žádné orákulum Kshana
Nejhorší chyba polohy SGP4/SDP4 vůči referenci AIAA 2006-6753 podle režimu, logaritmická škála: každý režim je hluboko pod tolerancí AIAA, nejhorší případ 4,12 mm v hlubokovesmírném nerezonančním režimu
Nahoře: každý ověřený řádek je z konstrukce podložen vnější datovou sadou. Dole: SGP4 souhlasí s oficiální referencí v každém režimu (nejhorší 4,12 mm). SVG · SVG

Stav verifikace všech 401 schopností: 176 ověřeno (zkontrolováno proti vnějšímu orákulu), 221 modelováno, 4 ve vlastnictví partnera
176 ověřeno · 221 modelováno · 4 partnerské — SVG

Oblasti schopností#

Každá schopnost veřejné mapy podle oblasti s označením v registru (ledger). Tabulku oblastí zapisuje tools/gen_readme_blocks.py ze souboru web/capabilities.json, téhož, který čte mapa všeho ve Studiu.

Schopnosti Kshana podle oblasti a zralosti: ověřené a z modelu vypočtené veřejné schopnosti v každé oblasti, vykresleno z web/capabilities.json nástrojem tools/gen_validation_figures.pySchopnosti Kshana podle oblasti a zralosti: ověřené a z modelu vypočtené veřejné schopnosti v každé oblasti, vykresleno z web/capabilities.json nástrojem tools/gen_validation_figures.py

Úplná tabulka, oblast po oblasti se všemi schopnostmi a jejich označením, je docs/CAPABILITY-DOMAINS.md.

Instalace#

Nástroj pro příkazovou řádku získáte jedním řádkem: cargo install kshana. Každý kanál dodává v0.40.0 ze stejného označeného commitu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Kanál Instalace Příručka
Vyzkoušet v prohlížeči otevřete https://kshana.dev Průvodce Studiem
Příkazový řádek (Rust) cargo install kshana Použití příkazového řádku
Knihovna pro Rust cargo add kshana Referenční příručka API na docs.rs
Python pip install kshana Průvodce API pro Python
JavaScript a WebAssembly npm install kshana Průvodce npm a WebAssembly
Asistent s AI (server MCP, cargo) cargo install kshana-mcp Průvodce serverem MCP
Image Dockeru docker run --rm -i ghcr.io/ashfordeou/kshana-mcp Průvodce serverem MCP: Docker
Cursor (jedno kliknutí) Přidat do Cursoru (npx) · Přidat do Cursoru (Docker) · npx -y kshana-mcp@0.40.0 Všechny instalační úryvky MCP
VS Code (jedno kliknutí) Nainstalovat ve VS Code (npx) · Nainstalovat ve VS Code (Docker) · npx -y kshana-mcp@0.40.0 Všechny instalační úryvky MCP
npx npx -y kshana-mcp@0.40.0 Všechny instalační úryvky MCP
uvx / pipx uvx kshana-mcp==0.40.0 Všechny instalační úryvky MCP
Homebrew brew install ashfordeOU/tap/kshana-mcp Všechny instalační úryvky MCP
Scoop scoop bucket add ashforde https://github.com/ashfordeOU/scoop-bucket && scoop install kshana-mcp Všechny instalační úryvky MCP
winget winget install AshfordeOU.KshanaMcp Všechny instalační úryvky MCP
Předkompilovaná binárka stáhněte kshana-mcp-<target> z vydání a ověřte jej podle SHA256SUMS Všechny instalační úryvky MCP
Oficiální registr MCP hledejte io.github.ashfordeOU/kshana-mcp Všechny instalační úryvky MCP
Vzdálený (streamable HTTP), provozovaný samostatně kshana-mcp --http 127.0.0.1:8080 Průvodce vlastním provozem
Zásuvný modul JetBrains pro IDE Settings → Plugins → Marketplace → hledejte „Kshana“ (ID pluginu dev.kshana.ide) Průvodce zásuvným modulem
Zásuvný modul Signal K npm install signalk-kshana-trust Průvodce zásuvným modulem Signal K
Zásuvný modul OpenCPN stáhněte tarball pluginu z vydání Odeslání do katalogu OpenCPN
Dashboard Grafana importujte kshana-grafana-*.json z vydání Zdroj dashboardu
Image referenčního sestavení docker pull ghcr.io/ashfordeou/kshana-reference-build Námořní integrace

Kshana na JetBrains Marketplace Sestavuje se s Rustem 1,88 nebo novějším, tedy rust-version v Cargo.toml

MCP je Model Context Protocol. Vydání připnete pomocí cargo install kshana --version 0.40.0, pip install kshana==0.40.0 nebo npm install kshana@0.40.0. Sestavení ze zdrojů viz Instalace a sestavení v části Reference.

Spuštění scénáře z Pythonu a z WebAssembly
import json, kshana

toml = open("clock-holdover.toml").read()
result = json.loads(kshana.run(toml))
print(kshana.version(), result["quantum"]["fom"]["holdover_s"], result["classical"]["fom"]["holdover_s"])
# 0.40.0 6600.0 2610.0

Kromě run modul zpřístupňuje run_full (JSON, SVG a jednořádkové shrnutí najednou), run_typed, validate_toml, list_kinds / scenario_kinds a error_kind; viz docs/PYTHON_API.md.

Balíček npm je celý engine zkompilovaný do WebAssembly. V Node.js předejte binární soubor funkci initSync; v prohlížeči jej stáhne await init() (viz README.npm.md).

import { readFileSync } from "node:fs";
import { createRequire } from "node:module";
import { initSync, run, summary, version } from "kshana";

const wasm = createRequire(import.meta.url).resolve("kshana/kshana_bg.wasm");
initSync({ module: readFileSync(wasm) });

const toml = readFileSync("clock-holdover.toml", "utf8");
const result = JSON.parse(run(toml));
console.log(version(), result.quantum.fom.holdover_s, result.classical.fom.holdover_s);
// 0.40.0 6600 2610
console.log(summary(toml));

Architektura#

Uprostřed stojí jeden otevřený engine a každá plocha jej spouští: příkazová řádka, knihovna v Rustu, Python, WebAssembly a Kshana Studio, server MCP, obraz Dockeru a plugin pro JetBrains. Tentýž soubor scénáře dává na každé z nich tytéž bajty. Kshana Pro stojí nad tím jako samostatná nadstavba, která na enginu závisí a nikdy jej nevětví.

Architektura Kshana: jeden otevřený engine uprostřed, kshana 0.40.0 pod licencí AGPL-3.0, s api::run_toml, typovaným rozdělováním přes každý druh, a verifikační registr 401 schopností (176 VALIDATED, 221 MODELLED, 4 PARTNER). Kolem něj každé rozhraní spouští týž engine: příkazový řádek (cargo install kshana); knihovna Rust (cargo add kshana); Python (pip install kshana); WebAssembly + Kshana Studio (npm install kshana); server MCP (cargo install kshana-mcp); image Dockeru (ghcr.io/ashfordeou/kshana-mcp); zásuvný modul JetBrains (Marketplace: "Kshana"). Pod ním Kshana Pro, proprietární nadstavba, která na otevřeném enginu závisí jako na knihovně, nikdy jej neforkuje a nepřidává žádný fyzikální model.Architektura Kshana: jeden otevřený engine uprostřed, kshana 0.40.0 pod licencí AGPL-3.0, s api::run_toml, typovaným rozdělováním přes každý druh, a verifikační registr 401 schopností (176 VALIDATED, 221 MODELLED, 4 PARTNER). Kolem něj každé rozhraní spouští týž engine: příkazový řádek (cargo install kshana); knihovna Rust (cargo add kshana); Python (pip install kshana); WebAssembly + Kshana Studio (npm install kshana); server MCP (cargo install kshana-mcp); image Dockeru (ghcr.io/ashfordeou/kshana-mcp); zásuvný modul JetBrains (Marketplace: "Kshana"). Pod ním Kshana Pro, proprietární nadstavba, která na otevřeném enginu závisí jako na knihovně, nikdy jej neforkuje a nepřidává žádný fyzikální model.
Uvnitř enginu: doménové vrstvy a verifikační registr (ledger) Architektura Kshana po vrstvách. Pět vstupních bran (příkazový řádek, Python, JavaScript a WebAssembly, server MCP a zásuvný modul JetBrains) vede k jedinému api::run_toml, typovanému rozdělování přes 92 druhů. Pod ním je osm doménových vrstev: čas a soustavy, hodiny a časování, inerciální navigace a fúze, GNSS a integrita, astrodynamika, LEO PNT, Měsíc, Mars a hluboký vesmír a mise a studie, nad společným jádrem, vše křížově odkazované verifikačním modulem, strojově kontrolovanou maticí 401 schopností, která je jediným zdrojem pravdy pro každý štítek.Architektura Kshana po vrstvách. Pět vstupních bran (příkazový řádek, Python, JavaScript a WebAssembly, server MCP a zásuvný modul JetBrains) vede k jedinému api::run_toml, typovanému rozdělování přes 92 druhů. Pod ním je osm doménových vrstev: čas a soustavy, hodiny a časování, inerciální navigace a fúze, GNSS a integrita, astrodynamika, LEO PNT, Měsíc, Mars a hluboký vesmír a mise a studie, nad společným jádrem, vše křížově odkazované verifikačním modulem, strojově kontrolovanou maticí 401 schopností, která je jediným zdrojem pravdy pro každý štítek.

Jeden engine, mnoho vstupních bodů. Jediné jádro v Rustu (kshana) spouští každý scénář a je dostupné přes CLI, rozšíření pro Python, modul WebAssembly v prohlížeči, server MCP pro agenty AI a plugin pro IDE JetBrains — vše směřuje do jednoho rozdělovače api::run_toml. Uvnitř se balíčky senzorů připojují ke společnému rozhraní chybových modelů; vedle nich stojí vrstva referenčních soustav (precese–nutace IAU 2006/2000A a redukce GCRS↔ITRS založená na CIO), astrodynamická/numerická vrstva (analytický SGP4/SDP4 i numerický propagátor Cowell s modelem sil EGM2008/poruch, návrhem manévrů a určováním oběžné dráhy), vrstva integrity/GNSS (RAIM/ARAIM, SBAS, měřicí doména, rušení, cislunární), vrstva fúze / alt-PNT (odhadovače GNSS/INS a mapové korelátory gravitace/terénu/magnetismu), vrstva hlubokého vesmíru a Měsíce (radiometrické PNT pro Mars a lunární sada PNT, s úrovní důkazů každé části v matici — čas LTC, VLBI, společné OD + hodiny, realizace soustavy, objem služby, diferenciální PNT, interoperabilita), vrstva analýzy misí (rozpočty startu / návratu / pokrytí / zaměřování / přeletu / spojů a prostředí kosmického počasí) a otevřená vrstva studií odolnosti a strojového učení (hodnocení odolnosti RPCF, optimistická mezera RF poruch a kvantově podporovaný demonstrátor PNT), jejíž reprodukovatelné artefakty stojí na ověřených jádrech.

Vedle jádra stojí dva samostatné crates vyňaté z workspace — mcp/kshana-mcp (server MCP, postavený na SDK rmcp edice 2024) a xval/anise-frames (křížová kontrola soustav ANISE/SPICE, která stahuje závislosti pod MPL-2.0 (Mozilla Public License 2,0)) — udržované mimo graf závislostí publikovaného crate, Cargo.lock, licenční bránu a sestavení MSRV (minimum supported Rust version, nejnižší podporovaná verze Rustu) seznamem exclude v kořenovém Cargo.toml. Plugin pro JetBrains (ide/jetbrains) je samostatný projekt v Kotlinu. Úplnou sadu diagramů viz docs/ARCHITECTURE.md.

Vykreslené diagramy (tok enginu, mapa modulů, distribuce) jsou v docs/ARCHITECTURE.md.

Diagramy#

Diagramy jsou zdroje Mermaid v docs/diagrams/, vykreslené do SVG a PNG v docs/assets/diagrams/ (tools/render-diagram-chromium.sh <name> v Linuxu, ostatní dva skripty render-diagram jinde) a záznam váže každé PNG k přesnému SVG, z něhož vzniklo. Testy hlídají počty, které uvádějí. Grafy v předchozích oddílech kreslí nástroje z běhů enginu; tyto ukazují, jak do sebe části zapadají.

Systém: šest vstupních bodů (příkazová řádka, Python, WebAssembly a npm se Kshana Studiem, server MCP s pluginy a dovednostmi, plugin pro JetBrains, integrace) volá jeden rozdělovač přes všechny druhy scénářů, který spouští jeden engine ze společného jádra, balíčků senzorů a soustav a doménových modelů a zapisuje reprodukovatelný výsledek a graf
Jeden rozdělovač, jeden engine, reprodukovatelný výstup · SVG · zdroj system-overview.mmd

Plochy: jeden deterministický offline engine napájí příkazovou řádku, knihovnu v Rustu, Python, WebAssembly a npm a server MCP; Studio běží na sestavení WebAssembly, pluginové příkazy a dovednosti na serveru MCP, integrace a nasazovací sady na příkazové řádce a plugin pro JetBrains na knihovně
Každá plocha ze stejného enginu · SVG · zdroj surfaces.mmd

Uvnitř jednoho běhu: soubor scénáře se seedem a časovou osou GNSS napájí engine, který v každém časovém kroku vyvíjí chybový model, spouští odhadovač a vyhodnocuje ukazatele kvality, a zapisuje reprodukovatelný výsledek a graf
Vnitřní smyčka běhu · SVG · zdroj engine-flow.mmd

Důvěra v přijímač: záznam nebo proud z přijímače se zpracuje do pozorovatelných veličin po epochách a vlastních příznaků přijímače, projde monitory a stane se poradním skóre důvěryhodnosti s pásmem a důvody, které napájí Studio, telemetrii, podepsaný balíček důkazů, Jammertest a hodnocení bench a zprávu compliance
Od záznamu přijímače ke skóre důvěryhodnosti a co je využívá · SVG · zdroj trust-flow.mmd

Laboratorní okružní cesta: scénář se exportuje s událostmi a zkušebními podmínkami, operátor mimo Kshana přehraje soubor přes laboratorní simulátor, záznam přijímače se vyhodnotí proti uvedeným událostem a okružní cesta důkazů spojí scénář, podmínky a hashe záznamů a skóre do podepsaného balíčku
Od scénáře k podepsanému balíčku; Kshana nikdy nevytváří ani nepřehrává signál · SVG · zdroj lab-round-trip.mmd

Kshana Studio: prohlížeč spouští engine zkompilovaný do WebAssembly lokálně a nic nenahrává, bere přibalené scénáře nebo scénář či záznam, který otevřete, a zobrazuje výsledek v jednoduchém pohledu, pokročilém pohledu a na stránkách úloh, s exporty ukládanými uživatelem
Jak Studio běží, lokálně · SVG · zdroj studio-flow.mmd

Tok testů a vydání: místní brány (formátování, clippy, kontrola absence atribuce, ratchet pokrytí dokumentace a scripts/gate.sh, který spouští úplnou sadu a opakované běhy a zapisuje potvrzení, které kontroluje hook před pushem) vedou k pull requestu pouze v CI a zelenému úplnému CI; vlastník posune main fast-forwardem na zelený commit a na něj dopadne anotovaný tag po kontrole synchronizace verzí; pracovní postup vydání před zveřejněním čehokoli ověří úplnou sadu na označeném commitu, sestaví binárky se SBOM, kontrolními součty a původem sestavení, publikuje do crates.io, PyPI, npm, registru kontejnerů, registru MCP a JetBrains Marketplace, dotazuje se každého registru, dokud neservíruje novou verzi, a z tagu spustí sestavení webu; samostatná cesta pouze pro web spouští pracovní postup pages s tagem main a je odmítnuta, pokud se od posledního vydání změnilo cokoli mimo web/ a .github/
Tok testů a vydání, od místních bran po ověřené vydání a cestu pouze pro web · SVG · zdroj release-flow.mmd · docs/RELEASING.md

Mapa modulů: příkazová řádka, Python, WebAssembly, server MCP a plugin pro JetBrains volají typovaný rozdělovač přes všechny druhy, který dosahuje na společné jádro, čas a soustavy, balíčky senzorů, astrodynamiku, integritu, detekci spoofingu, fúzi, hluboký vesmír a Měsíc, odolnost a moduly rozhodčího a benchmarku, vše podložené verifikační maticí
Kde kód žije · SVG · zdroj module-map.mmd

Distribuce: jedno repozitorium dodává jádrový crate, server MCP, plugin pro IDE a křížově kontrolní crates do crates.io, PyPI, npm, GitHub Releases, hřiště na Pages, registru kontejnerů, registru MCP a JetBrains Marketplace, s archivem na Zenodo
Co se kam dodává a co to kontroluje · SVG · zdroj distribution.mmd

Asistent AI#

kshana-mcp je server MCP: váš asistent spouští skutečný engine a čte zpět jeho JSON, místo aby matematiku hádal. Každý z jeho 49 nástrojů je tenký obal veřejné funkce knihovny kshana, takže v serveru žádná simulační logika neleží.

Instalace serveru MCP#

Pouze poradní charakter, nikoli typově schválené navigační zařízení: za navigaci zůstává odpovědný provozovatel. Server běží na vašem počítači; Ashforde OÜ se nic neodesílá.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Kanál Příkaz nebo tlačítko Vyžaduje Připnutá podoba
Cursor (jedno kliknutí) npx (Node) · Docker Node, nebo Docker kshana-mcp@0.40.0 / ghcr.io/ashfordeou/kshana-mcp:0.40.0
VS Code (jedno kliknutí) npx (Node) · Docker · Insiders (npx) Node, nebo Docker kshana-mcp@0.40.0 / ghcr.io/ashfordeou/kshana-mcp:0.40.0
npx npx -y kshana-mcp@0.40.0 Node 18+ kshana-mcp@0.40.0
uvx / pipx uvx kshana-mcp==0.40.0 · pipx run kshana-mcp==0.40.0 Python 3,9+ s uv nebo pipx kshana-mcp==0.40.0
Docker docker run -i --rm ghcr.io/ashfordeou/kshana-mcp:0.40.0 Docker ghcr.io/ashfordeou/kshana-mcp:0.40.0
Homebrew brew install ashfordeOU/tap/kshana-mcp brew formule pro v0.40.0
Scoop scoop bucket add ashforde https://github.com/ashfordeOU/scoop-bucket a poté scoop install kshana-mcp Scoop (Windows) manifest pro v0.40.0
winget winget install AshfordeOU.KshanaMcp winget (Windows) --version 0.40.0
cargo cargo install kshana-mcp --version 0.40.0 Rust 1,88+ kshana-mcp 0.40.0
Předkompilovaná binárka stránka vydání: kshana-mcp (Linux x86-64), kshana-mcp-<target>[.exe], ověřeno pomocí SHA256SUMS a gh attestation verify žádné v0.40.0
Registr MCP io.github.ashfordeOU/kshana-mcp (nalezne ho klient podporující registr) klient podporující registr 0.40.0
Vzdáleně (streamable HTTP) kshana-mcp --http 127.0.0.1:8080, vlastní hosting: viz docs/deploy/mcp-http.md váš vlastní hostitel v0.40.0

kshana-mcp na Glama, skóre kvality jeho serveru MCP

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Nastavení pro jednotlivé klienty je v docs/integrations.md. Server je uveden v oficiálním registru MCP jako io.github.ashfordeOU/kshana-mcp.

49 nástrojů

Scénáře a zprávy

Nástroj Co dělá
run_scenario Spustit scénář z definice TOML (Tom's Obvious, Minimal Language)
list_scenario_kinds 92 vestavěných druhů scénářů s popisy a povinnými/volitelnými poli — aby agent mohl sestavit platný scénář
validate_scenario Předletová kontrola: zpracuje TOML a rozpozná jeho druh, bez spuštění
list_example_scenarios Přibalené referenční scénáře jako JSON
get_example_scenario Text TOML jednoho přibaleného referenčního scénáře, bajt po bajtu shodný se souborem v scenarios/
report_scenario Spustit scénář a vrátit jeho zprávu
animate_scenario Spustit scénář a vrátit jeho časovou řadu jako animaci
sky_geometry Geometrie oblohy pod horizontem závislým na azimutu: viditelné a skryté družice, DOP, kovariance východ-sever-nahoru a elipsa horizontální chyby; nebo předvolba horizontu s jejím původem

Export a interoperabilita

Nástroj Co dělá
list_export_formats Které formáty interoperability se na scénář vztahují (czml, kml, geojson, stk, sigmf), důvod, když se nevztahuje, a specifikace, kterou každý zapisovač dodržuje
export_interop Exportovat scénář jako CZML (Cesium Language), KML (Keyhole Markup Language), GeoJSON, efemeridy STK (Systems Tool Kit) .e nebo SigMF (Signal Metadata
import_route Zapsat trasu GeoJSON LineString do scénáře, který létá po bodech trasy (terrain-nav, terrain-slam, gravity-map, combined-altpnt), a vrátit nový TOML
export_sp3 Exportovat konstelaci scénáře orbit jako přesné efemeridy SP3-c (Standard Product 3, revize c)
export_omm Exportovat prvky scénáře orbit jako katalog CCSDS (Consultative Committee for Space Data Systems) 502.0-B-2 OMM (Orbit Mean-elements Message)
export_oem Exportovat řadu stavů scénáře orbit jako efemeridy CCSDS OEM (Orbit Ephemeris Message) 2,0 — polohu v TEME (true equator, mean equinox) i
export_table_csv Spustit scénář a vrátit jeho tabulku reprodukovatelnosti jako CSV (comma-separated values) — bajtově stabilní tabulku, kterou CLI (command-line interface) zapisuje jako <scenario>.table.csv
export_test_bench Pohyb vozidla a události scénáře pro laboratorní simulátor GNSS (kshana bench-export)

Důvěra v přijímač a plavidlo

Nástroj Co dělá
assess_receiver_log Posoudit důvěryhodnost záznamu skutečného přijímače GNSS (globálního družicového navigačního systému)
assess_vessel_stream Vyhodnotit omezený výňatek NMEA 0183 (nejvýše 2 MiB a 20 000 epoch
assess_vessel_log Záznam NMEA 0183 plavidla (nejvýše 4 MiB) jako dávkový běh, s TOML relace, který uvádí limity plavidla
create_evidence_pack Podepsaný balíček důkazů pro okno záznamu plavidla (kshana receiver-trust evidence)
attach_evidence_timestamp Navázat na balíček časové razítko podle RFC 3161 (base64 bajtů .tsr) v paměti (kshana evidence attach-timestamp)
verify_evidence_pack Ověřit balíček (kshana evidence verify)
generate_training_nmea Syntetické NMEA 0183 z můstku pro výcvik posádky z TOML nmea-scenario (rušení, odtažení polohy, podvržení času, zpoždění přehrání) se záznamem instruktora (kshana-nmea-training/1)
build_interference_map Mapa interference GNSS z hlášení polohy ADS-B nebo AIS jako text CSV (nejvýše 4 MiB)
route_exposure Podíl délky trasy v buňkách jedné či více map interference označených jako degradované, nedegradované, neposouzené a nepozorované, volitelně v rozmezí dat
trust_telemetry Proud důvěryhodnosti (řádky JSON) nebo výsledek receiver-trust vykreslený jako text Prometheus, řádky syslogu CEF nebo LEEF nebo náklad OTLP JSON, s kodéry kshana trust-telemetry
jammertest_import Načte zveřejněný katalog testů a plán vysílání Jammertest (NPRA/jammertest-plan, MIT) jako plánovanou pravdu (kshana jammertest import): sloty jedné testovací oblasti se stanou událostmi důvěryhodnosti přijímače s identifikátorem katalogu a rokem v každém popisku. Plánované sloty, nikoli zaznamenané časy vysílání; žádné kontaktní pole plánu se nečte. MODELLED. Viz docs/JAMMERTEST.md.
jammertest_score Ohodnotí záznam přijímače vůči tomuto plánu (kshana jammertest score): po jednotlivých testech latenci detekce, nezachycené poplachy a dobu do zotavení a falešné poplachy mimo všechny sloty. Textové záznamy jako log, binární (ubx, sbf) jako log_base64. Podepsaný balíček vyžaduje klíč: příkazová řádka. Pouze poradní; MODELLED.
fit_imu_log Parametry akcelerometru a gyroskopu scénářů hybrid a fusion odhadnuté ze záznamu stacionární IMU (CSV nebo EuRoC) pomocí Allanovy odchylky, s tabulkou [accel_classical] připravenou k vložení a s SHA-256 záznamu (kshana imu-fit). Text na vstupu, JSON na výstupu; MODELLED.

IQ GNSS (soubory v pracovním adresáři; v režimu HTTP vypnuto)

Nástroj Co dělá
iq_signals Nastavení vrstvy IQ GNSS
iq_info Popsat jeden záznam IQ (in-phase and quadrature) v pracovním adresáři bez jeho zpracování
iq_scene Vygenerovat vícedružicovou scénu IQ GNSS do pracovního adresáře (kshana iq scene)
iq_acquire Akvizice pomocí FFT (fast Fourier transform) jednoho či více PRN (pseudo-random noise codes) nad záznamem (kshana iq acquire), volitelně za stupni vstupní části
iq_track Akvizice, poté sledování bankou DLL/PLL/FLL (smyčky s uzamčením zpoždění, fáze a frekvence) (kshana iq track), se smyčkami z `kshana.loop-desig
iq_frontend Použít DSP (digital signal processing
iq_sweep Přehrát jeden záznam IQ v pracovním adresáři přes několik návrhů sledovacích smyček (kshana iq sweep)
iq_monitor Spustit monitory detekce interference a spoofingu nad záznamem IQ v pracovním adresáři (kshana iq monitor)
iq_labfit Proložit model ztráty uzamčení sledovací smyčky laboratorními běhy (kshana iq labfit) ze scénáře iq-labfit, jehož záznamy jsou vložené (text nebo base64
iq_test_conditions Ověřit soubor kshana.test-conditions/1 zadaný jako text a vrátit rozřešené podmínky s jejich hashem
iq_campaign Spustit kampaň laboratorního přehrávání (kshana iq campaign)
iq_campaign_status Průběh výstupní složky kampaně

Mapování compliance

Nástroj Co dělá
compliance_report Mapování veřejných rámců vyplněné z dokumentů výsledků zadaných jako text (kshana compliance-report)
compliance_mapping Statické mapovací tabulky (nebo s sources zdrojové dokumenty, které citují, s verzemi a URL) jako Markdown, uvedené stejným prohlášením
list_standards_packs Balíčky norem (kshana standards-pack list): hodnocené sady scénářů pro zkušební profily rámce DHS Resilient PNT, IMO MSC.1/Circ.1575 a ICAO Doc 9849 příloha F
run_standards_pack Jeden balíček spuštěný proti prahům stanoveným před během: každý test MET, NOT MET nebo NEEDS INPUT; MODELLED, žádný produkt nehodnotí
lunanet_afs_check LunaNet Augmented Forward Signal ověřený proti LNIS V5 AD1 Volume A (LSIS-AFS V1.0): kódy proti vytištěným tabulkám, nebo proud symbolů proti formátu rámce; LDPC a CRC-24Q podrámců 2 až 4 ověřeny nejsou
create_round_trip_pack Podepsaný laboratorní okružní balíček: scénář, dokument kshana.test-conditions/1, záznam přijímače a skóre spojené hashi

Benchmark

Nástroj Co dělá
score_benchmark Podání kshana-bench ohodnocené proti souboru pravdy, obojí jako text JSON (kshana bench score, bench/SPEC.md): soubor výsledků s verzí specifikace, rozdělením, hashi vstupů a metrikami úlohy. MODELLED; popisuje záznam nebo korpus, nikdy produkt.
render_leaderboard Soubory výsledků kshana-bench vykreslené jako statická stránka žebříčku (text HTML), každý předem ověřen.

Edice#

Celý engine je zdarma. Kshana Pro a studie na míru jsou pro programy, které potřebují víc, a každá placená cesta začíná zprávou: nejsou zde žádné ceny.

Zdarma Kshana Pro Studie na zakázku
Co to je celý otevřený engine, všech 92 druhů scénářů, bez omezení funkcí proprietární nadstavba nad stejným enginem, na základě smlouvy studie odolnosti PNT vašeho systému typu MODELLED, zpracovaná za vás
Licence AGPL-3.0 (GNU Affero General Public License, verze 3) nebo komerční licence proprietární smlouva
Jak začít nainstalujte nebo otevřete kshana.dev požádejte o evaluaci Pro požádejte o studii

Co je Pro, slovy docs/PRO.md:

Striktní nadmnožina otevřeného Kshana. Pro závisí na otevřeném enginu jako na knihovně a nikdy jej nevětví. Každý otevřený druh scénáře běží v Pro beze změny a otevřený scénář běží v Pro bez jakékoli licence.

Žádná nová fyzika. Pro nepřidává žádný fyzikální model a žádný nemění. Každé číslo z Pro pochází z běhů otevřeného enginu, takže údaj z Pro je tak důvěryhodný, jako druh otevřeného scénáře, z něhož pochází, a nikdy důvěryhodnější.

Pro odpovídá na další otázky programu: který návrh létat (optimalizátor návrhu a jeho Paretova fronta), jak jistá je odpověď (nejistota a citlivost) a zda mise splňuje své požadavky (dossier mise, trasovatelnost požadavků, obchodní studie, kontrola regrese scénářů, digitální dvojčata hodin, dossier studie a služba v místní infrastruktuře). Také sleduje kampaň ukazatelů a shodí pipeline, když se některý zhorší, testuje kandidátní plány signálů proti otevřeným družicovým navigačním signálům v obou směrech (koexistence spektra) a řadí studie do fronty ve službě úloh v místní infrastruktuře s hashově řetězeným registrem (ledger) dodávek. Každá z těchto funkcí je popsána, včetně toho, co vytváří a co nedělá, v docs/PRO.md. Nic, co Pro vytvoří, není certifikace, a ani studie na míru není certifikace.

Co Kshana Pro čte z otevřeného enginu a podpora od Ashforde® OÜ

Na čem Kshana Pro stojí. Každá část Pro pracuje z otevřeného enginu a nechává jej beze změny:

  • Optimalizátor návrhu, studie nejistoty a dossier mise spouštějí scénáře otevřeného enginu přes veřejné rozhraní enginu a každé číslo počítají z výsledků běhů. Každý výstup si ponechává úroveň VALIDATED, MODELLED nebo PARTNER, kterou otevřený engine dal každému údaji, nikdy vyšší.
  • Digitální dvojčata hodin používají model hodin otevřeného enginu a jeho odhadovač Allanovy odchylky: dvojče se kalibruje podle publikovaného Allanova rozpočtu zařízení a poté se zkontroluje odhadem Allanovy odchylky dvojčete otevřeným odhadovačem.
  • Obchodní studie spouštějí každou architektonickou variantu jako scénář otevřeného enginu, beze změny, a řadí varianty podle ukazatele kvality načteného z výsledku každého běhu.
  • Sledování kampaně čte své ukazatele z výsledků běhů scénářů v balíčku na otevřeném enginu a porovnává je s předchozím úspěšným během.
  • Koexistence spektra čte každé fyzikální číslo z běhů otevřeného enginu druhů leo-signal a constellation-design a přidává jen součet přes družice v dohledu a řazení plánů.
  • Služba úloh v místní infrastruktuře spouští otevřené scénáře i scénáře Pro týmž enginem a každý výsledek ukládá tak, jak jej běh vrátil.
  • Balíčky důkazů zaznamenávají pro každý běh hash scénáře, který otevřený engine vtiskne do výsledku, takže údaj v balíčku lze reprodukovat opětovným během jeho scénáře.
  • Nástroje systémového inženýrství a programů. Nástroje Kshana Pro pro systémové inženýrství založené na modelech (MBSE) a programy kontrolují požadavky programu proti během otevřeného enginu: importují požadavky jako hodnoty oddělené čárkami (CSV) nebo jako zdokumentovanou podmnožinu Requirements Interchange Format (ReqIF) či textu Systems Modeling Language verze 2 (SysML v2), vyhodnocují každé přejímací kritérium s jeho jednotkou proti hodnotám, které běh zapsal, a vytvářejí matici křížových odkazů verifikace (VCRM), model SysML v2, zprávu o dopadu změn a offline balíček důkazů. Nic znovu nespouštějí ani nepřepočítávají a čtou jen to, co otevřený engine zveřejňuje: result.json každého běhu (pole, která kritérium uvádí, jejich jednotky, otisk reprodukovatelnosti ve složení hash scénáře, seed, verze enginu a verze schématu a označení běhu a úrovně údajů), jeho report.json (druh, záznam reprodukovatelnosti a označení schopností), soubor scénáře (jeho hash, druh, seed a parametry), schéma jednotek polí (jednotka, původ a úroveň důkazů každého pole) a verifikační matici (označení VALIDATED, MODELLED nebo PARTNER každé schopnosti).

Podpora a profesionální služby#

Kshana je zdarma a open source pod AGPL-3.0 a profesionálně vyvíjen a udržován společností Ashforde® OÜ (Estonsko). Otevřený engine je úplný a použitelný sám o sobě. Organizacím, které potřebují víc, Ashforde® OÜ nabízí:

  • Komerční podpora a integrace — zabudování Kshana do vašeho řetězce nástrojů, scénáře na míru a prioritní opravy.
  • Modely senzorů na míru — kalibrované pro váš hardware, včetně modelů odolnosti citlivých na export, udržovaných v soukromé nadstavbě.
  • Kshana Pro — proprietární nástroje pro systémové inženýrství založené na modelech (MBSE) a programy, které kontrolují požadavky programu proti během otevřeného enginu a vytvářejí matici křížových odkazů verifikace (VCRM), model Systems Modeling Language verze 2 (SysML v2), zprávu o dopadu změn a offline balíček důkazů. Nic znovu nespouštějí a čtou jen zveřejněné výstupy enginu: result.json a report.json každého běhu, soubor scénáře, schéma jednotek polí a označení verifikační matice (úplný seznam je v části Edice).
  • Nástroje Kshana Pro pro návrh, nejistotu a mise — Paretova fronta návrhového prostoru, nejistota a citlivost přes tisíce běhů a dossier mise jedním příkazem s verifikační maticí a PDF; viz docs/PRO.md.
  • Sledování kampaně, koexistence spektra a služba úloh v Kshana Pro — pipeline, která selže, když se sledovaný ukazatel zhorší, plány signálů testované proti otevřeným družicovým navigačním signálům v obou směrech a fronta úloh v místní infrastruktuře s hashově řetězeným registrem (ledger) dodávek; viz docs/PRO.md.
  • Školení a poradenství k analýze výkonu kvantového/klasického PNT.

Toto je model open-core: engine je a zůstane pod otevřenou licencí; udržitelný byznys tvoří odbornost, podpora a proprietární rozšíření — nikoli licenční poplatky. Kontakt contact@ashforde.org · ashforde.org.

Výzkum#

Studie postavené na otevřeném enginu jsou publikovány na arXiv. Každá uvádí příkaz enginu, který za ní stojí, takže její čísla lze znovu vygenerovat z potvrzeného příkladu scénáře nebo studie.

Výzkum postavený na otevřeném enginu: šest článků na arXiv, každá karta uvádí článek, jeho datum a kategorii a příkaz enginu, který jeho čísla znovu vygeneruje. Týchž šest článků s odkazy a příkazy je v tabulce níže.Výzkum postavený na otevřeném enginu: šest článků na arXiv, každá karta uvádí článek, jeho datum a kategorii a příkaz enginu, který jeho čísla znovu vygeneruje. Týchž šest článků s odkazy a příkazy je v tabulce níže.
Článek Co ukazuje Příkaz enginu
Anticipating the Optimism Gap: Predicting Distribution-Shift Degradation of RF-Impairment Detectors from In-Distribution Statistics
arXiv:2606,22054 · doi:10.48550/arXiv.2606.22054
Pokles skóre detektoru interference GNSS po změně podmínek lze předpovědět pouze ze statistik v rámci rozdělení, na otevřeném syntetickém zkušebním prostředí a poté na otevřených terénních záznamech. cargo run --release --example optimism_study -- paper-artifacts/optimism-study.json
A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing
arXiv:2606,24210 · doi:10.48550/arXiv.2606.24210
Časovací přijímač GNSS pod spoofingem nemá žádnou konečnou nepodmíněnou mez nezachycené časové chyby, proto článek uvádí podmíněnou, kalibrovanou na zaznamenaném podvržení vysílaném éterem z veřejné kampaně JammerTest 2024. cargo run --release --example tpl_jammertest
How Stable Is a PNT Resilience Score? Decision-Instability of Single-Number Resilience Ratings under Framework-Aligned Weighting
arXiv:2607,05415 · doi:10.48550/arXiv.2607.05415
Jediné souhrnné skóre odolnosti je stabilním základem rozhodnutí jen tam, kde jeden návrh dominuje; kde návrhy soutěží, může vítěze změnit už samotné převažení. cargo run --release --example resilience_report -- paper-artifacts/resilience-study.json
Earth-baseline VLBI restores the observability of a lunar surface station in joint orbit-and-clock determination
arXiv:2607,02566 · doi:10.48550/arXiv.2607.02566
Měření vzdálenosti uvnitř lunární konstelace ponechává absolutní polohu povrchové stanice nepozorovatelnou; zpoždění z interferometrie s velmi dlouhou základnou (VLBI) ze Země ji obnoví, když je konstelace řídká, a zpřesní, když je bohatá. druh lunar-joint-od-clock: kshana example lunar-joint-od-clock > s.toml && kshana s.toml
The Cost of Lunar South-Polar Geometry, and Surface Beacons as the Efficient Fix: A Dilution-of-Precision Analysis
arXiv:2607,06212 · doi:10.48550/arXiv.2607.06212
Plánované konstelace o čtyřech až šesti družicích dávají na lunárním jižním pólu špatnou geometrii a několik povrchových měřicích majáků ji napraví mnohem levněji než další družice. druh lunar-beacon: kshana example lunar-beacon > s.toml && kshana s.toml
Cislunar navigation is an observability problem: arc-length thresholds, Gramian conditioning, and the Doppler lever
arXiv:2610,23871 · doi:10.48550/arXiv.2610.23871
Faktor DOP (zhoršení přesnosti) je pro cislunární sledování pouze podle vzdálenosti nedefinovaný, protože rychlost je v okamžiku jednoho snímku nepozorovatelná, a proto článek používá Gramián pozorovatelnosti na čtyřech rovinných vzdálených retrográdních drahách: měření pouze vzdálenosti má v okamžiku snímku hodnost 2 ze 4 a k plné pozorovatelnosti potřebuje oblouk dlouhý zhruba 2,09 h, přičemž podmíněnost se s délkou oblouku zlepšuje; měření rychlosti změny vzdálenosti (Doppler) dává hodnost 4 okamžitě; a společný odhad stanice se stavy družic a hodinami zůstává o jedničku hodnostně deficitní, pokud se nepřidá vnější interferometrická veličina. Požadavky patří do rozpočtů délky oblouku, podmíněnosti a typu měření, nikoli do DOP. druh cislunar-observability: kshana scenarios/cislunar-observability.toml (jeho sourozenec cislunar-arc-recovery testuje práh nezávislým odhadovačem konečných diferencí)

Tři příklady studií zapisují bajtově deterministické artefakty (pevné seedy), které zaznamenávají verzi enginu, seedy a hash konfigurace. Tři lunární a cislunární články stojí na lunární sadě (úroveň důkazů každé části je ve verifikační matici); jejich tvrzení o geometrii a zhoršení přesnosti jsou navíc křížově kontrolována proti samostatným orákulům v tests/validate_p*.rs. Více v části Reprodukovatelné artefakty studií v Referenci.

Citace#

Pokud používáte Kshana v akademické nebo technické práci, citujte prosím verzi, kterou jste použili, se scénářem a seedem. CITATION.cff obsahuje strojově čitelná metadata a GitHub z něj zobrazuje tlačítko „Cite this repository“. Každé vydání je archivováno na Zenodo; koncepční DOI (Digital Object Identifier) 10.5281/zenodo.20528627 vždy odkazuje na nejnovější verzi.

Baweja, C. (2026). Kshana — a PNT-resilience simulator with quantum-sensor performance models. Ashforde OÜ. https://doi.org/10.5281/zenodo.20528627

Výše uvedené články:

Baweja, C. (2026). Anticipating the Optimism Gap: Predicting Distribution-Shift Degradation of RF-Impairment Detectors from In-Distribution Statistics. arXiv:2606,22054. https://doi.org/10.48550/arXiv.2606.22054

Baweja, C. (2026). A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing. arXiv:2606,24210. https://doi.org/10.48550/arXiv.2606.24210

Baweja, C. (2026). How Stable Is a PNT Resilience Score? Decision-Instability of Single-Number Resilience Ratings under Framework-Aligned Weighting. arXiv:2607,05415. https://doi.org/10.48550/arXiv.2607.05415

Baweja, C. (2026). Earth-baseline VLBI restores the observability of a lunar surface station in joint orbit-and-clock determination. arXiv:2607,02566. https://doi.org/10.48550/arXiv.2607.02566

Baweja, C. (2026). The Cost of Lunar South-Polar Geometry, and Surface Beacons as the Efficient Fix: A Dilution-of-Precision Analysis. arXiv:2607,06212. https://doi.org/10.48550/arXiv.2607.06212

Baweja, C. (2026). Cislunar navigation is an observability problem: arc-length thresholds, Gramian conditioning, and the Doppler lever. arXiv:2610,23871. https://doi.org/10.48550/arXiv.2610.23871

Licence#

Kshana má duální licenci: GNU AGPL-3.0-only (LICENSE), nebo komerční licenci od Ashforde® OÜ pro uzavřenou integraci, které AGPL nevyhovuje. LICENSING.md vysvětluje, která platí. Příspěvky jsou licencovány příchozí licencí AGPL a zároveň udělují Ashforde® OÜ právo zahrnout je do komerční edice; každý commit podepište pomocí git commit -s (viz CONTRIBUTING.md). „Kshana“ a její značky jsou ochranné známky Ashforde® OÜ: licence se vztahuje na kód, nikoli na název, proto forky prosím přejmenujte.

Reference#

Dlouhý materiál, sbalený. Každý dokument je uveden v Dokumentaci.

Instalace a sestavení ze zdrojů

Instalace a sestavení#

Vyžaduje toolchain Rustu (≥ 1,88, tedy rust-version v Cargo.toml; vyvíjeno na 1,93).

git clone https://github.com/ashfordeOU/kshana
cd kshana
cargo build --release
cargo test          # all tests pass
Použití: příkazová řádka v plném rozsahu

Použití#

Spusťte libovolný scénář; CLI se řídí polem kind scénáře a vedle něj zapíše <scenario>.result.json, <scenario>.chart.svg, <scenario>.report.html a <scenario>.report.json — plus <scenario>.table.csv pro druhy, které publikují tabulku. Zpráva (stránka HyperText Markup Language (HTML) a dokument JSON se stejným obsahem) obsahuje shrnutí pro vedení, každý vstup s jeho jednotkou, výsledky a grafy, u kampaně tabulky průchodu, Monte Carlo nebo řetězců, časovou osu událostí, označení VALIDATED / MODELLED / PARTNER a zdroj každé schopnosti, kterou běh použil, co není modelováno a záznam reprodukovatelnosti (verze enginu, výtahy Secure Hash Algorithm 256-bit (SHA-256), seed, platforma a přesný příkaz). Z prohlížeče se vytiskne do čistého souboru PDF (Portable Document Format) na papír A4 nebo Letter; engine žádné PDF nezapisuje. Viz docs/REPORTS.md.

cargo run -- scenarios/clock-holdover.toml
cargo run -- scenarios/imu-deadreckoning.toml
cargo run -- scenarios/timetransfer.toml
cargo run -- scenarios/hybrid-pnt.toml
cargo run -- scenarios/orbit-gnss-challenged.toml
cargo run -- scenarios/orbit-sgp4-gps.toml
cargo run -- scenarios/orbit-rinex.toml
cargo run -- scenarios/integrity-raim.toml

# Export a propagated constellation to an SP3-c precise-ephemeris file:
cargo run -- scenarios/orbit-sgp4-gps.toml --export-sp3 gps.sp3

# Export the constellation's mean elements to a CCSDS OMM catalogue (one OMM
# message per TLE-defined satellite, with its real NORAD id / COSPAR designator):
cargo run -- scenarios/orbit-sgp4-gps.toml --export-omm gps.omm

# Export the velocity-carrying state to a CCSDS OEM 2.0 ephemeris (GMAT/Orekit/STK):
cargo run -- scenarios/orbit-sgp4-gps.toml --export-oem gps.oem

# Export the geometry for a globe, a map or a mission-analysis tool: CZML, KML,
# GeoJSON, STK .e, or SigMF for the spectrum kind (every format that applies):
cargo run -- scenarios/jamming-demo.toml --export all

--export <czml|kml|geojson|stk|sigmf|all|list> zapisuje vedle scénáře záznamy CZML (Cesium Language), KML (Keyhole Markup Language), GeoJSON (Request for Comments 7946), efemeridy Ansys STK (Systems Tool Kit) .e a SigMF (Signal Metadata Format) a --import-route <route.geojson> vkládá čáru GeoJSON do druhů, které létají po trase. Každý formát se ověřuje proti své publikované specifikaci a scénář, na který se formát nevztahuje, uvede proč: viz docs/INTEROP.md.

Další režimy CLI — kontrola scénáře (lint), vkládání skutečných dat o orientaci Země nebo spuštění celé sady:

# Lint a scenario without running it (checks the kind + required fields):
cargo run -- --validate scenarios/integrity-raim.toml

# Feed a real IERS Earth-orientation file (finals2000A) for frame precision:
cargo run -- scenarios/orbit-sgp4-gps.toml --eop tests/fixtures/agency/eop/finals2000A_2022001.txt

# Run a SUITE of scenarios into one aggregated, stamped study artifact
# (writes <suite>.study.json + <suite>.study.html next to the manifest):
cargo run -- --study scenarios/quantum-pnt-demonstrator.suite.toml

# Animate a run's time series: an animated SVG, a self-contained HTML player, and a
# numbered SVG frame sequence with manifest.json (see docs/ANIMATION.md):
cargo run -- scenarios/campaign-jam-spoof-holdover-integrity.toml --animate all

Export animace. --animate svg|html|frames|all zapisuje <scenario>.animation.svg (klíčové snímky Cascading Style Sheets (CSS), bez skriptu), <scenario>.animation.html (přehrát, pozastavit, posouvat, rychlost a synchronizované panely, bez vnějších prostředků) a <scenario>.frames/ (frame_0000.svg, … plus manifest.json s počtem snímků za sekundu a trváním). Kampaň přehraje své fáze a poplachy, běh spektra svůj vodopád; téma se řídí prefers-color-scheme a prefers-reduced-motion zobrazí hotový obraz. Vykresluje vlastní vzorky běhu, při opakovaném běhu bajtově shodné, a nepřidává žádné důkazy. Viz docs/ANIMATION.md.

Manifest sady je malý soubor TOML (Tom's Obvious, Minimal Language) — title a pole scenarios = [ … ] cest ke scénářům — který engine spouští postupně a všechny výsledky (s jejich označeními MODELLED / VALIDATED) skládá do jednoho samopopisného artefaktu studie. Viz scenarios/quantum-pnt-demonstrator.suite.toml.

Role v interoperabilitě. Kshana je vrstva simulace výkonu, která stojí vedle toolchainu pro následné zpracování, nikoli jako jeho náhrada: jeho výstup RINEX předejte RTKLIB nebo gLAB pro řešení polohy a jeho výstup SP3 použijte jako produkt přesné dráhy pro nástroje jako Ginan — Kshana odpovídá na otázku, jakou odolnost daná architektura PNT přinese, dříve než máte skutečné signály, a to ve formátech, které tyto nástroje už přijímají (--export-sp3 nebo export_sp3 = true ve scénáři orbit zapíše <scenario>.sp3). Tatáž dráha může být publikována jako střední elementy CCSDS OMM ze standardizační linie (--export-omm nebo export_omm = true zapíše <scenario>.omm) — jedna zpráva OMM 502,0 KVN (keyword = value notation) na družici definovanou v TLE, nesoucí skutečné katalogové číslo NORAD (North American Aerospace Defense Command), mezinárodní označení COSPAR (Committee on Space Research) a epochu každého objektu, pro každého spotřebitele znalého OMM místo svérázného dvouřádkového souboru elementů.

Ukázkový výstup (holdover hodin — všimněte si, jak jsou uváděny ukazatele kvality Integrita a Bezpečnost):

scenario 5ba83a232b94 | quantum holdover 6600s p95 1.20e-4ns integrity 1.000 security n/a (no attack) | classical holdover 2610s p95 19.7ns integrity 1.000 security n/a (no attack)
wrote scenarios/clock-holdover.result.json, scenarios/clock-holdover.chart.svg, scenarios/clock-holdover.report.html, and scenarios/clock-holdover.report.json

95. percentil (p95) časové chyby optických hodin je 1.20e-4 ns: shrnutí vypisuje malé hodnoty se platnými číslicemi, místo aby je zaokrouhlovalo na 0.0. security ukazuje n/a (no attack), protože tento scénář nenastavuje žádný útok, takže není co detekovat. Výsledek JSON přesto nese u každých hodin analytickou mez detekovatelnosti spoofingu v fom.security (0,997 pro optické hodiny, 0,000 pro čipové atomové hodiny, jejichž vlastní šum v monitorovacím okně přesahuje specifikaci 20 ns) a jeho blok figure_tiers označuje tento údaj applicable: false. Druh scénáře spoof hodnotí detekci proti vnesenému útoku. figure_tiers také každému uvedenému údaji přiřazuje jeho verifikační úroveň — VALIDATED (ověřeno proti vnějšímu orákulu) nebo MODELLED — a řádek verifikační matice, z něhož se úroveň čte. Scénář orbit navíc uvádí blok geometrie — podíl vzorků s určením polohy a nejlepší/mediánový faktor DOP polohy (PDOP) a přesnost polohy — vedle výsledku hodin.

Tato dvě čísla čtěte pozorně. security je analytická mez detekovatelnosti spoofingu odvozená ze stability každých hodin — má smysl pouze vůči nakonfigurovanému scénáři spoofingu a není vícedružicovým detektorem RAIM. integrity je zde vnitřní konzistence filtru (podíl vzorků výpadku uvnitř jeho vlastní meze k-sigma), nikoli ukazatel integrity HPL/VPL pro letectví. Viz docs/INTEGRITY.md.

Pro skutečnou integritu autonomní v přijímači spouští druh scénáře integrity (scenarios/integrity-raim.toml) skutečný snímkový RAIM a RAIM s oddělením řešení (ve stylu ARAIM) nad propagovanou geometrií konstelace: pro každou epochu počítá horizontální/vertikální ochranné úrovně (HPL/VPL) a uvádí podíl epoch, které splňují nakonfigurované meze poplachu, se Stanfordovým diagramem integrity pro klasifikaci chyba vs. PL (ochranná úroveň).

Reprodukovatelné artefakty studií

Čtyři otevřené studie z jediného příkazu znovu vygenerují bajtově deterministický artefakt (pevný seed) — čísla za studiemi křížení kvantového a klasického přístupu, optimistické mezery RF poruch, hodnocení odolnosti PNT a ochranné úrovně časování:

# Quantum-vs-classical resilience crossover map (writes paper/crossover/*.json):
cargo run --release --bin crossover_study -- paper/crossover

# RF-impairment optimism-gap study (13-detector panel, scaling laws, LOO predictor):
cargo run --release --example optimism_study -- paper-artifacts/optimism-study.json

# Framework-aligned PNT-resilience scoring + decision-instability study:
cargo run --release --example resilience_report -- paper-artifacts/resilience-study.json

# Conditional Timing Protection Level, calibrated on a real recorded spoof:
cargo run --release --example tpl_jammertest

Každý artefakt zaznamenává verzi enginu, seedy a hash konfigurace a nese poctivé označení MODELLED/VALIDATED. Sondy na skutečných datech (*_probe) spouštějí tentýž řetězec nad záznamy, které dodáte lokálně; v repozitáři se žádné datové sady nedodávají. Studie optimistické mezery RF poruch je popsána v preprintu arXiv:2606,22054 a podmíněná ochranná úroveň časování (tpl_jammertest výše) v preprintu arXiv:2606,24210 (viz Citace).

Publikované studie lunárního PNT (arXiv:2607,06212 DOP povrchových majáků, arXiv:2607,02566 pozorovatelnost VLBI a arXiv:2610,23871 pozorovatelnost cislunární délky oblouku) mají svá tvrzení o geometrii, zhoršení přesnosti, předpovědi soustavy / parametrů orientace Země (EOP) v reálném čase, vzdálených retrográdních drahách a měření vzdálenosti RF nezávisle křížově zkontrolována v tests/validate_p*.rs proti samostatným orákulům (scipy.special.j1, nezávislé řešení DOP v NumPy (HᵀH)⁻¹, nové zpracování týchž řádků IERS finals2000A v NumPy a Three-Body Periodic Orbit Database NASA/JPL). Jde o dodatečné regresní kontroly nad z modelu vypočtenou lunární sadou; nemění strojově kontrolovaný počet v matici.

Formát scénáře

Formát scénáře#

Scénáře jsou deklarativní TOML. Pole kind na nejvyšší úrovni vybírá balíček — celkem padesát (clock je výchozí, pokud chybí): inertial, timetransfer, hybrid, hybrid-ukf, fusion, gnss-ins, orbit, ephemeris, gnss-sim, integrity, lunar-integrity, lunar-time-offset, spoof, spoof-detect, jamming, sweep, sweep-nd, gravity-map, terrain-nav, terrain-slam, combined-altpnt, pvt, mars-pnt, impairment-eval (zkušební prostředí pro vyhodnocení detekce RF poruch strojovým učením — označený syntetický korpus + harness ROC/AUC nezávislý na detektoru + optimistická mezera uvnitř/vně rozdělení), quantum-trade (srovnání kvantového a klasického PNT s načtením měřené ADEV + obálka odolnosti bez GNSS; MODELLED), space-weather (sluneční/geomagnetické indexy + exosférická teplota Jacchia-71 + termosférická hustota řízená aktivitou nad statickou atmosférou; MODELLED), oem-interop (most pro import/zpětný průchod CCSDS OEM pro efemeridy GMAT/Orekit/STK; MODELLED), trojice analýzy misí launch-window (dvoutělesový azimut startu / změna roviny / příležitosti), reentry (balistický koridor návratu podle Allena-Eggerse), eo-coverage (geometrie šířky záběru EO / GSD / přístupu / revisitu), space-packet (rámcování Space Packet CCSDS 133,0 TM/TC — telemetrie/telekomandy — přesné bitové rozvržení, ověřený zpětný průchod) a attitude-budget (3-DOF gravitačně-gradientní moment + rozpočet chyby zaměření RSS), passes (předpověď přeletů nad pozemní stanicí, východ/západ — AOS/TCA/LOS, maximální elevace, přístup) a link-budget (jednosměrná rovnice spoje CCSDS/DSN — FSPL / Eb·N₀ / rezerva / uzavření); telecom-timing (časová chyba holdoveru, MTIE a TDEV zkontrolované proti maskám ITU-T); spectrum (celé pásmo L GNSS jako jedna spektrální hustota výkonu: vodopád frekvence a času pod skriptovanou časovou osou rušiče s nepřetržitou vlnou, úzkopásmového, čirpového nebo shodného šumu, poměr rušiče k signálu po pásmech a efektivní hustota nosné k šumu ze součinitele spektrální separace a vstup a výstup záznamu Signal Metadata Format (SigMF) s Welchovými spektrálními odhady; signálová spektra VALIDATED proti učebnicovým hodnotám, scénář rušiče MODELLED; viz docs/SPECTRUM.md; týž druh kreslí panely pásem UHF, S a C s navrženými signály na nízké oběžné dráze Země); leo-signal (návrhy signálů určování polohy, navigace a času na nízké oběžné dráze Země pro libovolný systém: pásmově omezená spektra, jitter sledování kódu a přesnost měření vzdálenosti, akvizice a doba hledání, spektrální separace vůči GPS a Galileo, odolnost vůči rušiči a srovnání pásem UHF až C, z veřejných předvoleb jako Xona Pulsar, Iridium, Starlink a CentiSpace nebo z vložených návrhů; uzavřené tvary a Doppler LEO VALIDATED, návrhy MODELLED; viz docs/LEO-SIGNAL.md); solar-system (Slunce, planety, Pluto, Měsíc a sedm velkých měsíců v jedné epoše — polohy, konstanty, světelné doby a dráhy; polohy planet VALIDATED proti JPL Horizons) a body-pnt (určování polohy kolem kteréhokoli z těchto těles s místní navigační konstelací a spojem z hlubokého vesmíru od Země; MODELLED); campaign (existující druhy složené do řetězené časové osy mise se stavem předávaným mezi fázemi, průchodu parametrů, seedovaného souboru Monte Carlo nebo několika scénářů za jedné sdílené podmínky; MODELLED, viz docs/CAMPAIGNS.md); constellation-design (vzory Walker delta a star, seznamy elementů a vícevrstvé návrhy s předvolbami GPS, Galileo, BeiDou a GLONASS a pokrytí a zhoršení přesnosti nad mřížkou zeměpisné šířky/délky; generátor a globální DOP GPS VALIDATED proti publikovaným servisním dokumentům, viz docs/CONSTELLATION-DESIGN.md); leo-pass (přelet družice určování polohy, navigace a času (PNT) na nízké oběžné dráze Země (LEO) a její rozpočet spoje pásmo po pásmu, z libovolné konstelace a libovolného návrhu signálu: úhly pohledu, Doppler a rychlost jeho změny, ztráty ITU-R deštěm, plyny, scintilací a průnikem do budov, hustota nosné k šumu vůči družicím GNSS na MEO v dohledu, ionosféra prvního řádu a dvojice bez ionosféry, rozpočet určení polohy s nízkou energií, sondování ionosféry z každé dvojice pásem a monitory spoofingu podle konzistence Dopplera a geometrie přeletu a podle konzistence mezi pásmy; členy ITU-R a obálka Dopplera pro statického uživatele VALIDATED, přelet MODELLED, viz docs/LEO-PASS.md); leo-navmsg (vysílaná zpráva efemerid a hodin družice PNT na nízké oběžné dráze Země (LEO), pro libovolnou dráhu a nosnou: prokládač z integrované pravdivé dráhy do keplerovské sady Galileo, tato sada s polynomy oprav v podélném, příčném a radiálním směru, 22parametrový model Liu et al. 2025 nebo polynom ECEF ATOMIC s nulovými hodinami; chyba rozsahu signálu ve vesmíru (SISRE) vs. interval proložení a perioda aktualizace, kontrola návaznosti aktualizace uprostřed přeletu, vlastní zdokumentovaný binární rámec Kshana s cyklickým redundančním kontrolním součtem CRC-24Q a rozpočet kvantizace a blok ve stylu RINEX-4 označený jako rozšíření Kshana; váhy SISRE, uživatelský algoritmus Galileo a CRC-24Q VALIDATED, proložení MODELLED; volitelné předvolby pro Xona Pulsar, Iridium, Starlink, CentiSpace, reprezentativní systém v pásmu C, ATOMIC a Celeste IOD; viz docs/LEO-NAVMSG.md); trojice fúzovaného PNT MEO + LEO leo-pvt (Dopplerovo určování polohy z rychlosti změny vzdálenosti družic na nízké oběžné dráze Země (LEO), společná určení polohy z pseudovzdáleností GNSS + LEO s mezisystémovými biasy a DOP vůči počtu družic LEO, polární a arktické pokrytí a přenos času LEO do UTC — přes libovolnou konstelaci, s volitelnými předvolbami, jako jsou signály příležitosti Xona Pulsar, Iridium a Starlink; obálka Dopplera LEO VALIDATED proti publikovaným údajům Iridium a Xona), leo-ppp (konvergence přesného určení polohy samotného bodu jen s GNSS a s doplněním o LEO, porovnáno s Li et al. 2019) a ntn-positioning (určování polohy v 5G neterestrických sítích z Cramérovy–Raovy meze šířky pásma signálu), MODELLED kromě této obálky, viz docs/LEO-PNT-FUSION.md; leo-pnt-chain (jeden systém LEO-PNT od začátku do konce: návrh leo-signal nesený pásmem leo-pass, C/N0 přeletu a chyba rozsahu signálu ve vesmíru navigační zprávy předané fúzovanému určení leo-pvt a konvergenci leo-ppp, každé předání uvedeno; MODELLED, viz docs/LEO-PNT.md, který je zároveň přehledem každého druhu a scénáře LEO-PNT, včetně kampaní odolnosti, jednoho scénáře na každou zaměřenou oblast experimentu a jednoho na každou koncovou vertikálu); sada lunárního PNT lunar-vlbi, lunar-joint-od-clock, lunar-frame-realisation, moonlight-service-volume, lunar-differential-pnt, lunar-interop-export; demonstrátor kvantově podporovaného PNT quantum-time-transfer, quantum-gnss-free-nav, quantum-anomaly-detect; a výzkumné druhy zabezpečení signálu, cislunární a vrstvené odolnosti lunar-attack-surface, realtime-frame-eop, lunar-time-budget, hybrid-optical-rf, cislunar-observability, conflict-resilience — trojice analýzy misí i tyto pozdější druhy jsou všechny MODELLED (každý s ověřeným jádrem v uzavřeném tvaru; viz matice). Společná pole: seed, mřížka [time], časová osa dostupnosti [gnss] (řídicí výpadek) a bloky jednotlivých senzorů s řetězci provenance citujícími zdroj každého údaje. Příklad (hodiny):

seed = 42
threshold_ns = 20.0
[time]
step_s = 10.0
duration_s = 7200.0
[gnss]
windows = [
  { t0 = 0.0,   t1 = 600.0,  state = "nominal" },  # 10 min GNSS sync
  { t0 = 600.0, t1 = 7200.0, state = "denied"  },  # ~1.8 h outage
]
[clock_quantum]
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (arXiv:1503.08457)"
y0 = 5.0e-17
q_wf = 1.0e-30   # white FM:  q_wf = sigma_y(1s)^2
q_rw = 0.0       # random-walk FM
drift = 0.0      # linear aging (per second)
[clock_classical]
id = "csac-sa45s"
provenance = "Microchip SA65 / SA.45s CSAC datasheet sigma_y(1s)=3e-10"
y0 = 5.0e-10
q_wf = 9.0e-20
q_rw = 0.0
drift = 0.0

Volitelná pole (bez nich vypnuto): hodiny mohou přidat flicker_floor (práh Allanovy odchylky 1/f FM — frekvenční modulace); inerciální senzor může přidat gyro_bias a q_arw (bias gyroskopu a úhlová náhodná procházka) a bias_instability a q_aa (práh nestability biasu podle Allana a náhodná procházka zrychlení) — dohromady jednoosý (1-DOF) rozpočet chyby akcelerometru (VRW/ARW — rychlostní/úhlová náhodná procházka — a nestabilita biasu). To je rozpočet chyb, který spouští dodávaná sada scénářů inertial. Zvlášť knihovna nově nese ověřený 3osý strapdown navigátor (src/inertial/{attitude,mechanization,imu_errors}.rs): kvaternionovou orientaci s kompenzací coning/sculling, plnou mechanizaci NED (členy rychlosti Země a transportní rychlosti, tíže WGS-84 podle Somiglianovy formule) a deterministický chybový model IMU, ve kterém jsou modelovány činitel měřítka, nesouosost, g-citlivost, kvantizace a rychlostní rampa (IEEE Std 952-1997, norma IEEE pro specifikaci a zkušební postup gyroskopů, §A.2; Groves 2013 §4,3). Tato 3osá cesta je nyní zapojena do spustitelné volně vázané sady GNSS/INS (kind = "gnss-ins"): 15stavový chybový EKF disciplinuje strapdown řešení vůči zašuměným určením polohy, dokud GNSS funguje, a poté setrvačně pokračuje výpadkem a uvádí fúzovanou horizontální chybu proti volné setrvačné extrapolaci INS s otevřenou smyčkou. K dispozici je také těsně vázaná aktualizace pseudovzdáleností (tvoří inovaci v oblasti vzdáleností, takže opravuje i při méně než čtyřech družicích). Scénář holdoveru hodin může přidat runs (> 1) pro spuštění souboru Monte Carlo — každý ukazatel kvality se pak uvádí jako střední hodnota s rozptylem 5.–95. percentilu a graf zastíní pásmo spolehlivosti chyby (viz scenarios/clock-ensemble.toml).

Scénář fusion (stejné bloky jako hybrid) spouští dva nezávislé Kalmanovy odhadovače — jeden pro stav hodin, jeden pro stav polohy — disciplinované GNSS a podporované optickým přenosem času a uvádí kombinovaný ukazatel kvality holdoveru. Oba bloky nesdílejí žádnou kovarianci: jde o naskládanou dvojici chybových rozpočtů, nikoli o skutečný spřažený společný filtr hodiny + poloha (kovariance mezi bloky je položka plánu). Viz scenarios/fusion-pnt.toml.

Scénář spoof vnáší časový spoofing — jeden ze čtyř druhů [attack.shape] (linear_ramp, step_jump, meaconing, replay; holé rate_ns_per_s se stále přijímá jako lineární rampa) — a spouští detektor spoofingu každých hodin. Detektor je oboustranný test energie χ²₁ / Neyman–Pearson nad monitorovací statistikou podporovanou hodinami: práh se určuje z cílového rozpočtu falešného poplachu target_pfa a pravděpodobnost nezachycené události P_md se uvádí jak v uzavřeném tvaru, tak metodou Monte Carlo (mc_runs pokusů na hypotézu — obě se shodují na několik ×1/√N). Ukazatel kvality Bezpečnost je 1 − P_md při provozně škodlivé (specifikační) velikosti, takže tichý hodinový zdroj, který zachytí spoofing o velikosti specifikace, získá ≈ 1 a hlučný, který jej často mine, méně (viz scenarios/spoof-attack.toml, scenarios/spoof-meaconing.toml).

Scénář gnss-sim je simulace v měřicí doméně: pro každou viditelnou družici syntetizuje pseudovzdálenost ρ = geometric range + c·δt_rx − c·δt_sv + I + T + noise + multipath a Doppler na L1, s jednofrekvenční ionosférou Klobuchar ([iono], IS-GPS-200 §20.3.3.5.2.5) a zenitovou troposférou Saastamoinen promítnutou mapovací funkcí Niell (1996) ([tropo]). Rezidua napájejí snímkový RAIM pro HPL/VPL po epochách a pseudovzdálenost, Doppler, C/N₀ a korekce iono/tropo každé družice se vysílají v poli JSON gnss_measurements. Je to dopředný simulátor (vytváří měření ze známé pravdy), nikoli přijímač/řešitel — běh s nulovým šumem reprodukuje geometrii plus korekce na úrovni pod milimetr (viz scenarios/gnss-sim-raim.toml).

Scénář jamming modeluje RF interferenci jako rozpočet spoje: [jammer] (poloha ECEF, vysílací power_dbw, typ) zvyšuje poměr rušiče k signálu u [receiver], který sleduje Walkerovu [constellation]. Z geometrie (ztráta šířením ve volném prostoru a zisk přijímací antény v každém směru) počítá J/S každé družice, efektivní C/N₀ podle standardní rovnice odolnosti proti rušení (zisk zpracování rozprostřením × činitel spektrální separace Q; Kaplan & Hegarty §9,4) a hlásí ztrátu uzamčení pod nastavitelným prahem sledování — a uvádí ukazatel kvality availability_under_jamming. Širokopásmový jammer o výkonu 10 W ve vzdálenosti 1 km přijímač zcela vyřadí (J/S ≈ 72 dB); tentýž jammer ve vzdálenosti 100 km spoje jen zhorší (viz scenarios/jamming-demo.toml).

Scénář sweep spouští obchodní studii: mění jeden parameter (threshold_ns, duration_s, quantum_q_wf nebo classical_q_wf) od start do stop v steps bodech na škále lin nebo log (scale), zaznamenává metric (např. holdover_s) pro oba hodinové zdroje a vykresluje obě křivky. Základní scénář patří pod [base] (viz scenarios/sweep-clock-stability.toml).

Scénář sweep-nd to zobecňuje na libovolný balíček a libovolný počet os: mění tečkované klíče TOML scénáře [base] (libovolného kind) přes kartézský součin [[axes]], znovu spouští každý uzel mřížky a zaznamenává metrics zadané jako tečkované cesty JSON do výsledku (např. classical.fom.holdover_s). Funguje pro každý balíček, protože pracuje na rozhraní TOML/výsledek; nativní běhy vyhodnocují mřížku paralelně (bez další závislosti, wasm se vrací k sekvenčnímu režimu) a výstup je deterministický a řazený po řádcích (viz scenarios/sweep-nd-inertial.toml).

Scénář orbit odvozuje časovou osu [gnss] z geometrie, místo aby ji zadával — uveďte oběžnou dráhu [user], [constellation], elevační mask_deg a dva bloky hodin. Z geometrie družic také uvádí přesnost polohy; volitelné sigma_uere_m (1-sigma ekvivalentní chyba vzdálenosti uživatele, výchozí 1 m) převádí faktor DOP polohy na sigma polohy. Dráha uživatele může být excentrická pomocí eccentricity a argp_deg a j2 = true přidává sekulární drift způsobený zploštěním Země (viz scenarios/orbit-molniya.toml). Konstelace může být místo toho skutečná: dejte [constellation] blok tle s dvouřádkovými sadami elementů a družice se z něj zpracují (viz scenarios/orbit-real-tle.toml). Přidejte jeden či více bloků [[constellations]] pro multi-GNSS (např. GPS + Galileo; viz scenarios/orbit-multignss.toml):

kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 10.0
sigma_uere_m = 1.0           # optional; position sigma = position-DOP * this
[time]
step_s = 60.0
duration_s = 86400.0
[user]                       # spacecraft (altitude in km, angles in deg)
altitude_km = 8000.0
inclination_deg = 0.0
[constellation]              # Walker-delta GNSS (GPS-like)
altitude_km = 20180.0
inclination_deg = 55.0
planes = 6
sats_per_plane = 4
phasing_f = 1.0
[clock_quantum]  # ... as above
[clock_classical]  # ... as above

Druhy alt-PNT bez GPS navigují zcela bez GNSS a porovnávají naměřenou polní posloupnost s mapou přes časticový filtr. Scénář gravity-map letí po trati sférickým harmonickým polem gravitačních anomálií a obnovuje ji z údaje gravimetru se studenými atomy (scenarios/gps-denied-gravity-nav.toml); scénář terrain-nav totéž dělá proti výškovému modelu SRTM (TERCOM/SITAN, scenarios/terrain-nav.toml); a scénář combined-altpnt slučuje gravitaci + magnetické pole IGRF + terén v jednom filtru (scenarios/combined-altpnt.toml).

Scénář lunar-integrity hodnotí cislunární PNT: spouští přelet s ochrannou úrovní ARAIM na lunárním jižním pólu proti sadě relé LunaNet/LNIS a poctivě uvádí mezeru v integritě — lunární σ_URE ~30 m žene ochrannou úroveň hluboko nad mez poplachu 50 m, takže služba je podle pravidel integrity ve stylu letectví nedostupná (scenarios/lunanet-araim.toml).

Scénář lunar-time-offset uvádí relativistickou rychlost chodu hodin Země–Měsíc — základ časové škály Lunar Coordinate Time (LTC/TCL). Identita post-newtonovského řádu z prvních principů sčítá rozdíl vlastních potenciálů (potenciál geoidu IAU L_G mínus vlastní potenciál povrchu Měsíce) a kinetický člen Měsíce (Dopplerův člen druhého řádu) na sekulární rychlost ≈ 57 µs/den, uváděnou spolu s publikovaným pásmem 56–59 µs/den; dává také nahromaděný posun LTC−TT za horizont a soubor s inverzním rozptylem (lunární papírové hodiny). MODELLED — hlavní údaj závisí na referenci (geoid Země vs. selenoid Měsíce, okno průměrování), a proto se uvádí pásmo, nikoli jediné certifikované číslo (scenarios/lunar-time-offset.toml).

V scenarios/ najdete alespoň jeden vzorový příklad každého druhu (92 druhů, 193 souborů scénářů .toml + 1 manifest sady — některé druhy mají více než jeden příklad). Ne každý druh má soubor pojmenovaný podle sebe: lunar-integrity → scenarios/lunanet-araim.toml a gravity-map → scenarios/gps-denied-gravity-nav.toml jsou dva z několika takových případů. Dispečovatelné druhy lze kdykoli vypsat pomocí chyb cargo run -- --validate <file>, Pythonu list_kinds() nebo nástroje MCP list_scenario_kinds.

Výstup

Výstup#

Artefakt výsledku je verzovaný, samopopisný JSON: časové řady po krocích, hodnocené ukazatele kvality, aktivní specifikace modelů (s původem), seed, hash scénáře — aby šel každý graf reprodukovat ze souboru — a pro každé hodiny adev_curve ([{tau_s, adev, n_samples, noise, edf, ci_lo, ci_hi}]): překrývající se Allanova odchylka napříč oktávově rozloženými dobami průměrování — standardní způsob čtení stability hodin — nyní s 95% pásmem spolehlivosti specifickým pro typ šumu v každém bodě (mocninný typ záznamu se určí ze sklonu modifikované Allanovy odchylky a interval χ² používá odpovídající efektivní stupně volnosti podle NIST SP 1065). Hřiště v prohlížeči jej vykreslí jako log-log graf „Stabilita hodin (ADEV)“. (MDEV, TDEV a HDEV jsou k dispozici jako odhadovače knihovny; exportovaná křivka výsledku je překrývající se ADEV.) Každé pole, s jednotkami a odkazem na zdroj, je zdokumentováno v docs/SCHEMA.md.

Každý graf je samopopisný. Hřiště v prohlížeči, export *.chart.svg z CLI i výsledková karta HTML (HyperText Markup Language) opatřují každý obrázek grafu patičkou ve tvaru Kshana v<version> · scenario <hash> · kshana.dev. scenario <hash> je prvních 12 hexadecimálních znaků hashe scénáře běhu — výtahu SHA-256 (256bitový Secure Hash Algorithm) z kanonické definice scénáře (seed, prahy, parametry modelů, okna GNSS, …); zprávy o integritě a lunární zprávy, které nenesou vlastní hash, se vracejí k SHA-256 zdroje scénáře. Je to tentýž otisk, který ukazuje jednořádkové shrnutí a JSON výsledku, takže uložený nebo vložený graf vždy nese svou verzi, přesný scénář, který jej vytvořil (pro reprodukci bit po bitu), a zdroj — změňte jakýkoli vstup a hash se změní.

Ukazatele kvality sledují standardní provozní ukazatele kvality PNT:

Ukazatel kvality Jak jej Kshana počítá
Časový výkon (balíčky hodin/oběžných drah) RMS chyby fáze hodin + 95. percentil za dobu výpadku v nanosekundách (timing_rms_ns) — časová metrika, nikoli poloha
Polohový výkon (balíčky inerciální/hybridní) 1-DOF RMS chyby polohy + 95. percentil za dobu výpadku v metrech (pos_rms_m); jednoosé. Jediný běh je označen monte_carlo: false; nastavte runs = N pro soubor Monte Carlo, který uvádí u každé metriky střední hodnotu, rozptyl a bootstrapový 95% CI (interval spolehlivosti). Stále není 2D CEP/2DRMS (kruhová pravděpodobná chyba / dvojnásobek odmocniny ze střední kvadratické vzdálenosti) ani přesnost vážená DOP (ty vyžadují 3osý model — plán)
Autonomie doba holdoveru — čas ve specifikaci po ztrátě GNSS (kvantováno mřížkou: dolní mez)
Odolnost sklon růstu chyby během výpadku
Dostupnost podíl běhu s řešením ve specifikaci
Integrita vnitřní konzistence filtru — podíl vzorků výpadku, jejichž chyba zůstává uvnitř vlastní meze k-sigma Kalmanova filtru. Není ukazatelem integrity HPL/VPL/RAIM pro letectví (viz docs/INTEGRITY.md)
Zabezpečení analytická mez detekovatelnosti spoofingu ze stability hodin — jak malý/pomalý časový spoofing by mohl označit monitor konzistence jedněch hodin. Má smysl pouze s nakonfigurovaným útokem; není vícedružicovým detektorem RAIM

Jsou vám tyto pojmy nové? Každý je vysvětlen prostým jazykem ve slovníčku.

Struktura repozitáře

Struktura repozitáře#

kshana/
├── src/                                       # the kshana core crate (library + CLI)
│   ├── api.rs · main.rs · lib.rs              # typed dispatch (92 kinds) + CLI + crate root
│   ├── python.rs · wasm.rs                    # optional PyO3 / wasm-bindgen bindings
│   ├── types.rs · scenario.rs · allan.rs      # shared core (time grid, GNSS timeline, Allan)
│   │
│   ├── models.rs · estimator.rs · kalman.rs   # Pack 1 — clock holdover + integrity
│   ├── security.rs · detection.rs · spoof.rs · spoof_monitors.rs  # spoof detection
│   ├── filter_health.rs · fom.rs · fom_label.rs · report.rs · chart.rs · run.rs  # health · FoM scoring + labelling · output
│   ├── suite.rs · study.rs                     # scenario suites + aggregated multi-scenario study artifacts (`--study`)
│   ├── inertial/                              # Pack 2 — strapdown INS (attitude · mechanization · imu_errors · quantum_imu)
│   ├── timetransfer.rs · timetransfer_adv.rs · timegeo.rs  # Pack 3 — TWSTFT/CV/PPP/optical, Sagnac
│   ├── hybrid.rs · ensemble.rs · sweep.rs     # Pack 4 — fused PNT, Monte-Carlo, trade sweeps
│   │
│   ├── timescales.rs · jd2.rs · ephem.rs      # time systems, two-part JD, Sun/Moon ephemeris
│   ├── precession.rs · nutation.rs · cio.rs   # IAU 2006/2000A precession-nutation + CIO GCRS↔ITRS
│   ├── frames.rs · *_data.rs                  # TEME↔ECEF + generated nutation/CIO/EGM2008/IGRF tables
│   │
│   ├── orbit.rs · sgp4.rs · tle.rs · walker.rs   # geometry, SGP4/SDP4, TLE, Walker design
│   ├── propagator.rs · forces.rs · gravity_sh.rs · integrator.rs  # Cowell + perturbations (EGM2008 d/o70, GR) + RK4/DOPRI
│   ├── maneuver.rs · batch_ls.rs · orbit_determination.rs  # burns/Lambert/porkchop, Gauss-Newton, OD
│   ├── cr3bp.rs · lunar.rs · lunar_frame.rs · lunar_od.rs  # Earth–Moon CR3BP + halo/NRHO STM corrector, cislunar/LunaNet ARAIM, MCI↔MCMF, lunar OD
│   ├── lunar_time.rs · lunar_vlbi.rs · lunar_combination.rs · lunar_frame_realise.rs · lunar_service.rs · lunar_dpnt.rs · lunar_interop.rs  # tiers per piece in the matrix lunar PNT suite — LTC time · geodetic VLBI · joint OD+clock · frame realisation · Moonlight service-volume · differential PNT · LunaNet/IOAG interop export
│   ├── body.rs · mars_frame.rs · ephem_provider.rs · radiometric.rs · ccsds_tdm.rs  # deep-space: multi-body · Mars frame · ephemeris seam · radiometric obs + CCSDS-TDM
│   ├── deepspace_od.rs · clock_state.rs · mars_atmos.rs · mars_pnt.rs · linkbudget.rs · gse_sim.rs  # SRIF OD · onboard clock · Mars drag · relay-PNT · link budget · GSE sim
│   │
│   ├── fusion/                                # GNSS/INS — EKF · UKF · tightly_coupled(17) · coupled · closed_loop
│   ├── raim.rs · sbas.rs                      # RAIM/ARAIM HPL/VPL, SBAS DO-229E PLs + L1/L5 iono-free
│   ├── gnss_sim.rs · ionex.rs · pvt.rs · jamming.rs  # measurement domain · ionosphere maps · single-point positioning · jamming
│   ├── navsignal.rs                            # nav-signal PSD (BPSK-R/BOC) · spectral-separation → anti-jam Q · DLL code-tracking jitter · multipath envelope
│   ├── gravimeter.rs · igrf.rs · mapmatch.rs · particle_filter.rs · altpnt/  # gravity/magnetic/terrain alt-PNT
│   ├── rinex.rs · rinex_obs.rs · glonass.rs · sp3.rs · oem.rs · omm.rs · permalink.rs  # interop formats
│   ├── launch.rs · reentry.rs · eo_payload.rs · attitude_budget.rs · passes.rs · space_packet.rs  # mission-analysis budgets + CCSDS Space Packet
│   ├── space_weather.rs · holdover.rs · tpl.rs   # space-weather environment · GNSS-denied clock-holdover calculator · conditional Timing Protection Level (under spoofing)
│   ├── resilience/                              # framework-aligned PNT-resilience scoring + decision-instability study (RPCF · Dirichlet · Kendall-τ · diversity collapse · assurance report)
│   ├── impairment_eval.rs · impairment_study.rs · impairment_ml.rs · eval_stats.rs  # Machine-learning RF-impairment eval testbed · optimism-gap study · LR/MLP detectors · bootstrap/DeLong/Spearman stats
│   ├── sdr.rs · realdata/                       # software-defined-receiver front end (IQ/IF → E/P/L taps → SQM) + real-data ingest adapters (RINEX · UBX · GnssLogger · JammerTest · Yunnan · SatGrid)
│   ├── crossover.rs · quantum_trade.rs · frugal.rs · integrity_impact.rs  # quantum-vs-classical crossover map · PNT trade · cost-per-coverage ROI · integrity impact
│   ├── quantum_devices.rs · quantum_faults.rs · quantum_nav_od.rs · qtrade.rs · timetransfer_chain.rs · representativeness.rs  # Quantum-Enabled PNT demonstrator — device error models · fault catalogue · GNSS-free quantum OD · unified trade harness · quantum time-transfer chain · representativeness / gaps-to-flight ledger
│   ├── interchange.rs · verification.rs          # KIF artifact envelope · machine-checked verification matrix
│   └── bin/crossover_study.rs · bin/validation_report.rs  # crossover-study artifact generator · release validation-summary HTML
│
├── mcp/kshana-mcp/        # standalone, workspace-EXCLUDED crate — the MCP server (+ Dockerfile, server.json)
├── ide/jetbrains/         # standalone Kotlin/Gradle IntelliJ-Platform plugin
├── xval/                  # standalone, workspace-EXCLUDED external cross-checks: anise-{frames,lunar-od,mars-od,service-geometry} (Rust ANISE/SPICE DE440) + orekit-passes (Java Orekit)
│
├── examples/            # reproducible study generators: tpl_jammertest · resilience_report · optimism_study + real-data probes (jammertest_probe · yunnan_probe · satgrid_probe · texbat_probe · ingest_realdata)
├── paper-artifacts/     # byte-deterministic study artifacts, regenerable from examples/ (optimism-study.json · resilience-study.json); raw datasets stay out
├── scenarios/            # one cited .toml per kind + geometry-driven + GPS-denied
├── scripts/              # reproducibility + repo-hygiene + SBOM guards
├── docs/                 # CONCEPTS, ARCHITECTURE, CAPABILITY, VALIDATION, PROVENANCE, GLOSSARY, …
├── web/                  # the WebAssembly playground + kshana.dev site
├── tools/                # table generators (EGM2008 · IGRF · nutation · CIO) + fetch_tles.sh
├── .github/workflows/    # ci · release · publish · wheels · pages · mcp-publish · jetbrains-plugin · frame-xval
├── pyproject.toml        # Python packaging (maturin)
├── CHANGELOG.md          # Keep a Changelog + SemVer
└── CITATION.cff · ROADMAP.md · CONTRIBUTING.md · SECURITY.md
FAQ (často kladené otázky)

FAQ#

Musím rozumět kvantové fyzice, abych to mohl používat? Ne. Pokud umíte spustit příkaz v příkazové řádce, umíte spustit Kshana. Začněte populárním úvodem; pojmy hledejte ve slovníčku.

Je to návrh kvantového hardwaru, nebo letový software? Ne. Je to simulátor výkonu. Věrnost kvantového hardwaru pochází z publikovaných chybových modelů, nikoli z tohoto nástroje. Viz Co to je / není.

Jsou kvantové výsledky realistické, nebo marketing? Každý parametr je citován z datového listu nebo článku, každý model je ověřen proti učebnicovému vztahu a zralost je poctivě označena v VALIDATION.md — včetně toho, že žádné optické hodiny se stronciem dosud nelétaly. Engine je neutrální: kvantový a klasický přístup jsou týž kód s různými publikovanými čísly.

Mohu se spolehnout, že se dva běhy shodnou? Ano — běhy jsou deterministické: scenario + seed + engine version → bit-identical output, vynuceno scripts/check-reproducible.sh.

Mohu to používat z Pythonu nebo v prohlížeči? Ano — viz Instalace: příklady pro Python a WebAssembly jsou pod ní. Oba volají tentýž engine.

Jak namodeluji vlastní senzor? Napište scénář .toml s publikovanými údaji svého senzoru v polích provenance. Viz Formát scénáře a příklady v scenarios/.

Je to zdarma pro komerční použití? Ano — pod AGPL-3.0, včetně komerčního prostředí, pokud dodržujete copyleft licence AGPL (zejména: pokud Kshana upravíte a nabízíte jej přes síť, musíte těmto uživatelům nabídnout svůj upravený zdroj). Pokud vám to nevyhovuje — např. potřebujete Kshana zabudovat do proprietárního produktu nebo provozovat uzavřenou síťovou službu — je u Ashforde® OÜ k dispozici komerční licence; viz LICENSING.md a Podpora.

Řešení problémů

Řešení problémů#

cargo build selže na starém toolchainu. Kshana potřebuje Rust ≥ 1,88. Aktualizujte pomocí rustup update.

Sestavení rozšíření pro Python se na macOS nepodaří slinkovat (Undefined symbols … _Py…). Rozšíření pro Python řeší své symboly při načtení. maturin nastaví správný příznak linkeru automaticky — použijte maturin develop --features python místo holého cargo build.

Sestavení pro Python si stěžuje, že interpret je novější, než PyO3 zná. Nastavte PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 (kola abi3 jsou dopředně kompatibilní napříč verzemi CPythonu).

Sestavení WebAssembly nenajde cíl. Nainstalujte jej jednou pomocí rustup target add wasm32-unknown-unknown a poté wasm-pack build --target web -- --features wasm.

Kam se poděl můj výstup? Každý běh zapíše <scenario>.result.json, <scenario>.chart.svg, <scenario>.report.html a <scenario>.report.json vedle vstupního .toml a u druhů, které publikují tabulku, také <scenario>.table.csv. Všechny jsou záměrně ignorovány gitem.

Verzování a vydání

Verzování a vydání#

Kshana se řídí sémantickým verzováním. Před verzí 1.0 se může veřejné schéma scénáře/výsledku ještě měnit; zásadní změny jsou výslovně uvedeny v CHANGELOG.md. Každý výsledek je reprodukovatelný z scenario + seed + engine version.

Každý tag vX.Y.Z publikuje všechny kanály automaticky, v jednom pořadí — nejprve se na označeném commitu spustí úplná testovací sada, dokud neprojde, nic se nepublikuje, a poté pipeline zkontroluje, že každý registr skutečně servíruje novou verzi (docs/RELEASING.md). Kanály:

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Pasáž uvádějící klienty AI třetích stran je zde vynechána; je v README.md na GitHubu.

Kanál Instalace / získání Obsah
crates.io cargo install kshana · kshana = "0.35" Knihovna v Rustu + CLI
crates.io cargo install kshana-mcp server MCP
PyPI (Python Package Index) pip install kshana kola abi3 (Linux/macOS/Windows) + sdist (zdrojová distribuce)
npm npm install kshana modul WebAssembly + obal JS
ghcr.io docker run -i ghcr.io/ashfordeou/kshana-mcp víceplatformní obraz OCI (Open Container Initiative) — není třeba toolchain
npm npx -y kshana-mcp@0.40.0 spouštěč: stáhne binárku vydání, ověří SHA256SUMS a spustí ji
PyPI uvx kshana-mcp==0.40.0 · pipx run kshana-mcp==0.40.0 týž spouštěč pro Python
Homebrew · Scoop · winget brew install ashfordeOU/tap/kshana-mcp · scoop install kshana-mcp · winget install AshfordeOU.KshanaMcp binárka kshana-mcp, generovaná z SHA256SUMS každého vydání
oficiální registr MCP automaticky nalezeno klienty MCP io.github.ashfordeOU/kshana-mcp (obraz OCI, balíčky npm a PyPI)
JetBrains Marketplace IDE → Plugins → hledejte „Kshana“ plugin pro IDE Kshana — PNT simulator
Zenodo DOI citovatelný archiv každého vydání
kshana.dev otevřít v prohlížeči Kshana Studio, aplikace WebAssembly v prohlížeči, znovu sestavená z každého tagu vydání (takže verze, kterou ukazuje, je verze, kterou spouští)

Verze crate / obrazu / registru serveru MCP sleduje engine (zahrnuje knihovnu); plugin pro JetBrains je verzován nezávisle (volá nainstalovanou binárku kshana přes shell).

Plán

Plán#

Viz ROADMAP.md pro fázový plán, CHANGELOG.md pro historii vydání a docs/CAPABILITY.md pro plán po jednotlivých schopnostech. Pořadí priorit je: nejprve důkazy o časování a holdoveru pro kritickou infrastrukturu (telekomunikační masky, delší holdover se stárnutím a flicker šumem, načítání měřených dat hodin); na druhém místě neutrální metoda srovnání kvantového a klasického přístupu (výsledky označené MODELLED, dokud je nepovýší měřená data partnera); a lunární / cislunární navigace a navigace v hlubokém vesmíru je udržována, nikoli rozšiřována jako hlavní směr. Přesná redukce soustav ITRF je nyní dodána — úplný řetězec GCRS↔ITRS IAU 2006/2000A založený na CIO (pohyb pólu + nutace pod obloukovou vteřinu), ověřený bit po bitu proti SOFA/ERFA a nezávisle křížově zkontrolovaný proti ANISE (čisté Rust SPICE) na ≤ 3,6 m na oběžné dráze GNSS. Mezi blízké položky patří těsně vázaná fúze fáze nosné a zpřístupnění volně/těsně vázaného navigátoru GNSS/INS ve více balíčcích; engine radiometrické navigace v hlubokém vesmíru / u Marsu přistál ve verzi v0.17.0 (ověřeno simulací). Kvantová fyzikální vrstva je položka P2: akcelerometr CAI je nyní simulován z prvních principů (fáze Mach–Zehnder, projekční šum, pokles kontrastu, vazba vibrací), zatímco senzory hodin/přenosu času stále řídí publikované koeficienty Allanova/šumového rozpočtu. TEME&harr;ECEF založené na GMST, časové soustavy IERS s přestupnými sekundami (UTC/TAI/TT/UT1), propagace oběžných drah SGP4/SDP4 (v0.7.0, ověřeno proti vektorům AIAA 2006-6753) a spustitelný balíček fúze gnss-ins byly všechny dodány a inerciální rychlost je zpřístupněna dále. Na main přistály aktivní stochastický detektor časového spoofingu (test energie Neyman–Pearson / χ²₁ s Monte-Carlo P_fa/P_md a ukazatelem kvality Bezpečnost 1−P_md), model rušení rozpočtem spoje (J/S → efektivní C/N₀ → ztráta uzamčení), dostupnost více konstelací, jednoosý (1-DOF) chybový rozpočet IMU, dva nezávislé Kalmanovy odhadovače (hodiny + poloha) uváděné jako kombinovaný ukazatel kvality, skutečná geometrie konstelace z TLE, zpráva ve formě výsledkové karty HTML, dostupnost GNSS odvozená z geometrie i faktor DOP z keplerovských drah s excentricitou a driftem J2, pásma spolehlivosti Monte Carlo, průchody parametrů v obchodních studiích, hřiště WebAssembly v prohlížeči a volitelné vazby pro Python (PyO3) a WebAssembly (wasm-bindgen).

Přispívání

Přispívání#

Viz CONTRIBUTING.md. Ve zkratce: testy projdou (cargo test), projdou oba ochranné skripty, Conventional Commits a záznam [Unreleased] v CHANGELOG.md pro každou změnu viditelnou uživateli. Účast se řídí naším Kodexem chování. Bezpečnostní problém nahlásíte podle Bezpečnostní politiky — u zranitelností prosím neotevírejte veřejný issue.

Dokumentace: každý dokument a pro koho je

Dokumentace#

Dokument Pro koho Co obsahuje
Přehled konceptů pro všechny, začněte zde co Kshana dělá a proč, od nuly po fyziku
Kshana Studio pro všechny spusťte engine v prohlížeči (WebAssembly); poznámky k sestavení a nasazení
Slovník pojmů pro všechny definice všech pojmů prostým jazykem
Druhy scénářů pro všechny každý druh, který engine rozdělovačem spouští: co dělá, jeho pole, příklad příkazu, jeho řádky registru (ledger) a graf, který pro něj engine zapisuje
Data partnerů laboratoře a výrobci, kteří mají naměřená data které řádky MODELLED by mohl povýšit naměřený záznam hodin nebo IMU, formáty, jak se podání kontroluje (kshana partner check), hodnotí a připisuje
Architektura vývojáři / recenzenti mapa modulů, řetězec enginu, rozdělovač a diagramy
Stav validace recenzenti / citující co je validated vs. not modeled, s důkazy
Verifikační matice recenzenti / citující strojově kontrolovaný registr důkazů (ledger) — každý řádek schopnosti s jeho stavem, modulem, testem a vnějším orákulem, generovaný z src/verification.rs
Odůvodnění řádků vypočtených z modelu recenzenti proč nemá žádný z modelu vypočtený řádek vnější orákulum, uvedeno řádek po řádku
Původ recenzenti / citující každý parametr senzoru, model a datová sada vysledované k publikovanému zdroji, v jedné citovatelné tabulce
Reprodukovatelnost a původ recenzenti / balíčkáři záruky determinismu, pevné golden soubory, SBOM (software bill of materials), původ sestavení
Platformní tagy kol balíčkáři matice kol abi3 pro Python — na který platformní tag se pip install kshana rozřeší
Umístění hodnotitelé kde Kshana stojí vůči RTKLIB/gLAB (doplňuje je) a úroveň bez instalace v prohlížeči
Kshana Pro hodnotitelé / vedoucí programů co proprietární nadstavba Pro přidává nad týž engine: optimalizátor návrhu, nejistota a citlivost, dossier mise, sledování kampaně, koexistence spektra, služba úloh v místní infrastruktuře, trasovatelnost požadavků; co každá vytváří a co nedělá
Technická zpráva · Článek JOSS recenzenti / citující / hodnotitelé úplný rozšířený výzkumný článek — architektura, modely po doménách, validace, případové studie a omezení — plus stručné podání JOSS (Journal of Open Source Software)
Validace SGP4 recenzenti / citující shoda s referencí AIAA 2006-6753 (666 stavů, ~4 mm) a přímé srovnání s nezávislým crate sgp4 (shoda pod mikrometr / 4,12 mm)
Validace silového modelu recenzenti / citující engine s plným silovým modelem (src/precise_od.rs) proložený agenturními efemeridami — metodika a ověřená rezidua
Příručka ke skutečným TLE uživatelé řízení scénářů ze skutečných TLE konstelací Celestrak / Space-Track (oproti přibalené syntetické sadě Walker)
Ukazatel kvality Integrita hodnotitelé co znamenají ukazatele integrity / security — a čím nejsou oproti HPL/VPL pro letectví
Reference ARAIM recenzenti / integrátoři otevřená implementace ochranné úrovně ARAIM MHSS — projekce nominálního biasu b_k, σ_URA vs. σ_URE a apriorní pravděpodobnosti režimů poruch
Kvantové modely · podrobnosti recenzenti fyzikální vrstva studeného atomového interferometru a kde se koeficienty stále vyhledávají
Compliance hodnotitelé rozsah algoritmů DO-229E / DO-316 a co není tvrzením o shodě
Námořní důvěra námořníci / integrátoři skóre důvěryhodnosti GNSS 0–100 pro NMEA plavidla, jeho monitory a meze (poradní charakter, nikoli typově schválené navigační zařízení)
Tréninkové proudy NMEA námořní instruktoři syntetické NMEA z můstku se skriptovaným rušením a podvrhováním a záznamem instruktora; pouze text, nikdy pro živou navigaci
Mapa interference analytici / námořníci kde letadla a lodě hlásily zhoršená navigační data a kolik z trasy se jich dotýká
Balíčky důkazů provozovatelé / pojišťovny podepsané technické záznamy o události důvěryhodnosti a jak ji ověřit
Telemetrie důvěryhodnosti provozní / bezpečnostní týmy proud důvěryhodnosti jako metriky Prometheus, události SIEM a OpenTelemetry, s dashboardem Grafany
Námořní integrace majitelé lodí / integrátoři plugin Signal K, režim brány OpenCPN a referenční sestavení
Test bench výrobci přijímačů přehrání exportovaného scénáře přes laboratorní simulátor a vyhodnocení záznamu přijímače
Mapování compliance hodnotitelé veřejné rámce odolnosti namapované na výstupy Kshana, se zdroji a mezerami; kshana compliance-report
Notebooky uživatelé spustitelné tutoriály s jejich vykresleným textem
Normy a interoperabilita integrátoři výměnné formáty GNSS / letové dynamiky / agentur, které Kshana čte a zapisuje (RINEX, SP3, CCSDS OEM/OMM/TDM/Space-Packet, …)
Fúze LEO PNT uživatelé / hodnotitelé fúzované určování polohy, navigace a času MEO + LEO: Doppler, společná pseudovzdálenost, konvergence PPP, 5G NTN, polární pokrytí a přenos času LEO přes libovolnou konstelaci; volitelné předvolby a jejich veřejné zdroje
Kampaně uživatelé / hodnotitelé skládání scénářů: řetězené časové osy misí, průchody parametrů, soubory Monte Carlo a běhy za sdílené podmínky, s identitami skládání, které testy hlídají
Katalog scénářů uživatelé / integrátoři každý dostupný druh s jeho povinnými a volitelnými poli TOML — generováno z api::list_scenario_kinds()
Schéma výsledku integrátoři každé pole JSON výsledku, s jednotkami a odkazem na zdroj
API Pythonu uživatelé Pythonu vazební plocha PyO3 — volání enginu, typy scénáře/výsledku a příklady
Tvrzení vs. skutečnost recenzenti registr uzavření nadsazených tvrzení + pojistka v CI (tests/no_overclaims.rs), která jej udržuje vyřešený
Plán pro všechny fázový plán — co je dodáno a co následuje
Server MCP · Plugin pro JetBrains agenti / uživatelé IDE spouštějte Kshana z asistenta s umělou inteligencí nebo z IDE JetBrains
Příručka pro agenty · Plochy agenti / integrátoři který nástroj odpovídá na kterou otázku, co si ke každé odpovědi uchovat; kde je každá schopnost dostupná (CLI, Rust, Python, WASM, MCP, plugin, JetBrains, notebooky) a proč je buňka N/A
Seznam změn pro všechny historie vydání (Keep a Changelog + SemVer, sémantické verzování)
Přispívání přispěvatelé sestavení, pojistky, disciplína testů/citací, DCO (Developer Certificate of Origin)
Správa projektu přispěvatelé / komunita jak je Kshana řízen — kdo rozhoduje, jak, a hranice otevřeného/uzavřeného
Kodex chování komunita očekávané chování (Contributor Covenant)
Bezpečnostní politika oznamovatelé jak nahlásit zranitelnost; poznámka o dvojím užití
Klíčové reference

Klíčové reference#

Validační orákula a normy — vnější autority, ke kterým jsou kontroly Kshana ukotveny:

  • Vallado, Crawford, Hujsak & Kelso — Revisiting Spacetrack Report #3 (AIAA 2006-6753; testovací data): ověřovací sada SGP4/SDP4, s níž Kshana souhlasí na 4,12 mm, a dopracované příklady soustav, proti nimž se kontroluje řetězec TEME→ITRF.
  • IAU SOFA / ERFA — rutiny pro referenční čas a soustavy, proti nimž jsou nutace IAU 2000A a redukce CIO GCRS↔ITRS ověřeny bit po bitu.
  • Petit & Luzum (eds.) — IERS Conventions (2010), IERS TN (Technical Note) 36 (standardy pro orientaci Země, pohyb pólu a referenční soustavy).
  • Riley — Handbook of Frequency Stability Analysis, NIST SP 1065 (vztahy pro Allanovu odchylku a referenční řada NBS14; NBS = bývalý americký Národní úřad pro standardy).
  • Pedregosa et al. — scikit-learn: Machine Learning in Python, JMLR 12 (2011): referenční implementace ROC/AUC, matice záměn a precision/recall/F1, s nimiž se testovací prostředí pro hodnocení RF-impairment přesně shoduje (tests/eval_metrics_reference.rs).
  • Virtanen et al. — SciPy 1,0, Nature Methods 17 (2020): optimize.nnls, stats.chi2 a linalg.expm — referenční rutiny, proti nimž jsou ověřeny NNLS fit naměřené ADEV v kvantové obchodní studii, pásma konzistence χ² a kovarianční matice procesního šumu hodin podle van Loana (tests/scipy_reference.rs).
  • Knowles, Kanhere, Neamati & Gao — gnss_lib_py, SoftwareX 27 (2024): používá se jednak jako otevřená předchozí práce (viz Srovnání a otevřená předchozí práce níže), jednak jako nezávislé orákulum DOP, s nímž se výpočet GDOP/PDOP/HDOP/VDOP/TDOP shoduje na 1e-6 (tests/dop_reference.rs).
  • Montenbruck & Gill — Satellite Orbits: Models, Methods and Applications (Springer): silové modely, na nichž stojí fit silového modelu k přesným efemeridám agentur.
  • Howell — Three-dimensional, periodic, halo orbits, Celestial Mechanics 32(1) (1984), doi:10.1007/BF01358403; Zimovan-Spreen, Howell & Davis — Near rectilinear halo orbits and nearby higher-period dynamical structures, Astrodynamics 6 (2022), doi:10.1007/s42064-021-0125-x (rodiny drah halo/NRHO, které diferenciální korektor CR3BP reprodukuje).

Fyzika zařízení a metod — citované zdroje za modely senzorů:

  • Origlia, Schiller, Bongs et al. — arXiv:1503,08457 (optické hodiny se stronciem v optické mřížce, cíl pro použití ve vesmíru).
  • Oelker et al., Nature Photonics (2019) — doi:10.1038/s41566-019-0493-4 (laboratorní hodiny se Sr, 4,8×10⁻¹⁷).
  • Templier et al., Science Advances (2022) — arXiv:2209,13209 (hybridní kvantová trojice akcelerometrů).
  • Groves, Principles of GNSS, Inertial, and Multisensor Integrated Navigation — tutoriál IEEE AESS (Aerospace and Electronic Systems Society) (repozitář University College London Discovery) (růst chyby při dead reckoningu).
  • Giorgetta et al., Nature Photonics 7, 434 (2013) — arXiv:1211,4902; Deschênes et al., Phys. Rev. X 6, 021016 (2016) — APS (American Physical Society) (optický dvoucestný přenos času a frekvence; optická mezidružicová linka podle nich modeluje svůj rozpočet nereciprocity).
  • Betz — Binary Offset Carrier Modulations for Radionavigation, NAVIGATION 48(4) (2001), doi:10.1002/j.2161-4296.2001.tb00247.x (modulace BOC a teorie spektrální separace, na nichž stojí src/navsignal.rs).
  • Kaplan & Hegarty (eds.) — Understanding GPS/GNSS: Principles and Applications (3. vyd., Artech House, 2017): rovnice efektivního C/N₀ při potlačení rušení a tepelný šum jitteru kódového sledování early–late DLL, které používají modely navigačního signálu a rušení.

Srovnání a otevřená předchozí práce — nástroje a přehledy, vůči nimž je Kshana vymezena:

  • Humphreys et al. — TEXBAT (Texas Spoofing Test Battery; ION — Institute of Navigation — GNSS 2012): parametry testovací baterie spoofingu, vůči nimž je vícevrstvý detektor charakterizován.
  • González et al. — NaveGo (2017): otevřené, ověřené profily chyb inerciální navigace použité jako klasický základ.
  • Iiyama, Casadesús Vila & Gao — LuPNT (ION GNSS+ 2023, Stanford NavLab): otevřený simulátor lunárního PNT.
  • Knowles, Kanhere, Neamati & Gao — gnss_lib_py, SoftwareX 27 (2024), doi:10.1016/j.softx.2024.101811: otevřená analýza dat GNSS.
  • Li, Zaminpardaz, Kealy & Greentree — Quantum sensors for enhanced positioning and navigation: a comprehensive review, GPS Solutions 30(1):62 (2026), doi:10.1007/s10291-026-02030-y.
  • Bertone et al. — Earth and Space Science 8(6) (2021), doi:10.1029/2020EA001454: reduced-dynamic OD pro GRAIL, empirická hranice zrychlení, kterou fit LRO reprodukuje.