Proveniens — varje parameter kan spåras till en publicerad källa
Kshanas centrala ärlighetsprincip är att varje sensorparameter, fysikalisk modell och valideringsdatamängd kan spåras till en publicerad källa — ett datablad, en referentgranskad artikel, en ICD för signal i rymden (gränssnittsspecifikation) eller en standard. Det här dokumentet samlar dessa provenienssträngar i en enda citerbar referenstabell.
Proveniens är inte bara dokumentation: varje sensortabell i ett scenario (till exempel [clock_quantum] och [clock_classical]) har en provenance-sträng (ModelSpec i src/types.rs; with_provenance i src/inertial/imu_errors.rs för felmodellen för tröghetsmätenheten (IMU)) som följer med in i resultat-JSON (JavaScript Object Notation) som quantum.spec.provenance och classical.spec.provenance, så varje körning bär sina egna parameterhänvisningar. Resultatets units-block märker dessutom varje numeriskt fält med en proveniensklass (input, computed, closed-form, internal-consistency, …). Tabellerna nedan är det sammanställda, läsbara registret över dessa strängar, plus proveniensen för algoritmer och validering från källkodens kommentarer.
Mognadsgraden anges ärligt genomgående: flygkvalificerad (har flugit), markbaserat labb / sondraket (demonstrerad, inte flugen) eller rymdmål på markbaserad hårdvara (ett ambitionsmål för hårdvara som inte har flugit — framför allt varje värde för strontium-klockor med optiskt gitter). Se VALIDATION.md för etiketterna per värde (validated / modelled / not modeled) och QUANTUM-MODELS.md för diskussionen om mognad hos markbaserat labb jämfört med flyg.
1. Parametrar för klockor och frekvensreferenser#
| Sensor | Nyckelvärde | Källa | Mognad |
|---|---|---|---|
| Microchip (Microsemi) SA.45s / SA65 CSAC (atomklocka i chipformat) | σ_y(1 s) = 3,0×10⁻¹⁰ | Tillverkarens datablad | flygkvalificerad (använd kommersiell komponent) |
| Strontium-klocka med optiskt gitter (rymdmål) | σ_y(1 s) = 1×10⁻¹⁵ | Origlia, Schiller, Bongs m.fl., arXiv:1503,08457 | rymdmål på markbaserad hårdvara — ingen optisk Sr-klocka har flugit |
| Strontium-klocka med optiskt gitter (laboratorierekord) | σ_y(1 s) = 4,8×10⁻¹⁷ | Oelker m.fl., Nature Photonics (2019) | endast markbaserat labb |
| ACES/PHARAO (Atomic Clock Ensemble in Space / Projet d'Horloge Atomique par Refroidissement d'Atomes en Orbite; referens på ISS (Internationella rymdstationen)) | storleksordningen 1×10⁻¹⁶ efter integrering över flera dygn | ESA (Europeiska rymdorganisationen) ACES/PHARAO, i drift på ISS sedan april 2025 (hänvisa till ESA:s publicerade resultat) | flygkvalificerad (mikrovåg/maser, inte optisk) |
Allans vitfrekvenskoefficient som holdover-modellen använder är q_wf = σ_y(1 s)²; flickerfrekvensmodulering (flicker FM) och åldring modelleras bara där en flicker_floor anges uttryckligen (se VALIDATION.md), annars modelleras de inte.
2. Parametrar för tröghetssensorer#
| Sensor | Nyckelvärden | Källa | Mognad |
|---|---|---|---|
| Exails hybrida kvantaccelerometertriad | biasstabilitet 6×10⁻⁸ g = 5,88×10⁻⁷ m/s² (24 h); brus 22 µg/√Hz = 2,16×10⁻⁴ (m/s²)/√Hz | Templier m.fl., Science Advances (2022), arXiv:2209,13209 | ground-lab |
| Honeywell QA-2000, kvartsaccelerometer i navigeringsklass | biasstabilitet ~160 µg = 1,57×10⁻³ m/s²; brus ~20 µg/√Hz; biasinstabilitet ~1 µg | Tillverkaren / Groves AESS (Aerospace and Electronic Systems Society) Tutorial | flight-qualified |
| Felmodell för IMU (skalfaktor, feljustering, g-känslighet, kvantisering, rampfel) | fem systematiska kategorier | IEEE (Institute of Electrical and Electronics Engineers) Std 952-1997 §A.2; Groves 2013 §4,3, tabell 4,1 | modell |
| Strapdown-mekanisering (NED, nord-öst-ned; coning/sculling) | kvaternionbaserad attityd §2,2, §5,5; NED-mekanisering §5,4; gravitation §2,4 | Groves, Principles of GNSS (global navigation satellite system), Inertial, and Multisensor Integrated Navigation Systems, 2:a uppl. | modell |
3. Parametrar för överföring av tid och frekvens#
| Länk | Nyckelvärde | Källa |
|---|---|---|
| Tvåvägs optisk länk i fritt rum (mellan satelliter) | laboratoriegolv ~1 fs; 1 ps som mål som är trovärdigt i omloppsbana | Giorgetta m.fl. (2013, Nature Photonics); Deschênes m.fl. (2016, Physical Review X) |
| TWSTFT (tvåvägsöverföring av tid och frekvens via satellit, Ku-band) | en enskild session ~0,5 ns | BIPM (Internationella byrån för mått och vikt) / PTB (Physikalisch-Technische Bundesanstalt, Tysklands nationella metrologiinstitut) / NIST (National Institute of Standards and Technology) |
4. Modeller för bana, tidssystem och referenssystem#
| Modell | Ekvation / standard | Referens (källkommentar) |
|---|---|---|
| Propagering med SGP4/SDP4 (SGP4: Simplified General Perturbations 4; SDP4: Simplified Deep-space Perturbations 4) | SGP4-modellen WGS-72 (WGS: World Geodetic System) | Vallado m.fl., "Revisiting Spacetrack Report #3", AIAA (American Institute of Aeronautics and Astronautics) 2006-6753 (2006) |
| Skottsekunder / tidssystem (UTC/TAI/TT/UT1 (UTC: koordinerad universell tid; TAI: internationell atomtid; TT: terrester tid; UT1: universell tid 1, jordrotationstid)) | regim med heltalsskottsekunder från 1972-01-01 | IERS (International Earth Rotation and Reference Systems Service) Conventions (2010); skottsekundshistorik från IERS Bulletin C |
| Jordrotationsvinkel | θ(Tu) = 2π(0.7790572732640 + 1.00273781191135448·Tu) |
IAU (Internationella astronomiska unionen) 2000, resolution B1.8 |
| Position och klocka för SV (rymdfarkost, alltså en satellit) ur sänd efemerid | användaralgoritm, relativistisk F·e·√A·sin Eₖ, TGD |
IS-GPS-200 (IS: Interface Specification; GPS: Global Positioning System) §20.3.3.4.3.1 / §20.3.3.3.3.1 |
| Efemeriskonstanter för Galileo / QZSS (Japans Quasi-Zenith Satellite System) / BeiDou (μ, Ω̇ₑ, C̄₂₀) | ICD:er för signal i rymden (gränssnittsspecifikationer) per system | Galileo OS (Open Service) SIS ICD; BeiDou OS SIS ICD (CGCS2000, China Geodetic Coordinate System 2000); GLONASS (Rysslands globala satellitnavigeringssystem) ICD (PZ-90 (PZ: Parametry Zemli, det ryska geodetiska datumet)) |
5. Modeller för GNSS i mätdomänen och för resiliens#
| Modell | Ekvation / standard | Referens |
|---|---|---|
| Klobuchars jonosfär för en frekvens | semicirkelalgoritm | IS-GPS-200 §20.3.3.5.2.5 |
| Saastamoinens zenittroposfär | hydrostatisk + våt zenitfördröjning | Davis m.fl. (1985); Groves §9,4 |
| Niells avbildningsfunktioner | hydrostatisk och våt, avbildning över elevation | Niell (1996) |
| Länkbudget för anti-jam | [1/(C/N₀) + (J/S)/(Q·Rc)]⁻¹ (C/N₀ är förhållandet mellan bärvåg och brusdensitet, J/S förhållandet mellan jamming och signal, Q spektralseparationsfaktorn, Rc chiphastigheten) → effektivt C/N₀ → förlorad låsning |
Kaplan & Hegarty, Understanding GPS/GNSS, 3:e uppl., §9,4 |
| Spoof- / energidetektering | Neyman–Pearson / tvåsidigt χ²₁-energitest; Φ⁻¹ enligt Acklam; erf enligt Abramowitz & Stegun 7.1.26 | klassisk detektionsteori |
| Stabilitet i Allan-familjen (ADEV/MDEV/TDEV/HDEV (ADEV: Allan-deviation; MDEV: modifierad Allan-deviation; TDEV: tidsdeviation; HDEV: Hadamard-deviation)) | med konfidensintervall | NIST SP (Special Publication) 1065 (Riley); Kasdin, Proc. IEEE (1995) |
| RAIM (autonom integritetsövervakning i mottagaren) / integritet (HPL/VPL (HPL: horisontell skyddsnivå; VPL: vertikal skyddsnivå), ARAIM (avancerad autonom integritetsövervakning i mottagaren) med lösningsseparation) | ögonblicksbild och lösningsseparation | se INTEGRITY.md |
6. Valideringsdatamängder#
Policy för medföljande data. Vi checkar in en ordagrann kopia av varje valideringsdatamängd vars licens tillåter vidaredistribution och vars storlek ryms bekvämt i git, så att en klon kan återskapa valideringen offline utan nätverk och utan döda länkar. En datamängd är hämtningsspärrad (nedladdad av en hjälpare scripts/fetch_*.sh till den git-ignorerade realdata-cache/, där bara de små härledda referensvärdena checkas in) endast när licensen inte tydligt tillåter vidaredistribution eller när den är för stor för git. Varje spärrad datamängd anger sin särskilda orsak nedan; ingenting spärras av bekvämlighet.
| Datamängd | Användning | Licens | Status i repot |
|---|---|---|---|
| AIAA 2006-6753, testvektorer för SGP4 (alla 666) | Numerisk validering av SGP4 — sämst 4,12 mm | Publicerade referensvektorer (Vallado, AIAA) | Medföljer tests/fixtures/sgp4/ |
| ⁸⁸Sr, ADEV σ_y(τ) för optisk klocka (Norcia m.fl., Science 366:93, 2019) | validering av anpassning till uppmätt stabilitet för optisk klocka | CC-BY-4.0 (Creative Commons Attribution 4,0; Zenodo 10.5281/zenodo.3382347) | Medföljer tests/fixtures/optical_clock_adev/ |
| NASA/USGS (NASA: National Aeronautics and Space Administration; USGS: United States Geological Survey) SRTM (Shuttle Radar Topography Mission) v3, höjdruta N36W117 (Death Valley, decimerad till 6 bågsekunder, 722 KB) | validering av läsare för terräng-DEM (DEM: digital höjdmodell) .hgt på verklig reliefs (Badwater Basin ≈ −86 m) |
Allmän egendom (NASA/USGS SRTM v3; via AWS (Amazon Web Services) Open Data elevation-tiles-prod) |
Medföljer tests/fixtures/terrain/N36W117_sub6.hgt |
| Exempel i CCSDS 502.0/503.0 Blue Book för OEM/TDM (OEM: Orbit Ephemeris Message; TDM: Tracking Data Message) | validering av tur-och-retur för CCSDS-tolkaren | Publicerade standardexempel (CCSDS) | Medföljer tests/fixtures/ccsds/ |
| IGS (International GNSS Service) SP3 (Standard Product 3, formatet för precisa banor), precis bana + navigeringsprover i RINEX (Receiver Independent Exchange Format) | validering av bananpassning och integritet | Öppna data från IGS (fria för all användning, med angivande av källa) | Medföljer tests/fixtures/igs/ |
Ögonblicksbilder av Celestrak TLE (tvåradiga elementmängder) (gps-ops, galileo) |
scenarier med verkliga konstellationer | Celestraks villkor (angivande av källa; TLE:er (tvåradiga elementmängder) med ursprung hos den amerikanska staten) | Medföljer tests/fixtures/celestrak/ + live scripts/fetch_tles.sh |
| Referensutdata från scipy / scikit-learn / filterpy | validering av numeriska kärnor och estimatorer | Genererade lokalt från bibliotek under BSD/MIT (BSD: Berkeley Software Distribution-licensen) | Medföljer tests/fixtures/scipy/ (+ generatorskript) |
| Referensdeviationer från Stable32 (ADEV/HDEV-stegar per dekad) | paritet för Allan-estimatorer | Härledda sammanfattningsvärden (små) | Medföljer tests/fixtures/cs5071a/, tests/fixtures/phasedat/ |
| Rå fasserie från en 5071A-cesiumklocka (556 990 punkter, 12 MB) | överlappande ADEV/HDEV på en verklig Cs-klocka | Oklart — allantools står under LGPL-3.0 (GNU Lesser General Public License, en programvarulicens) utan uttryckligt tillstånd att vidaredistribuera data; filen är undantagen från PyPI-distributionen (Python Package Index) |
Fetch-gated scripts/fetch_cs5071a.sh; härledda stegar incheckade |
| rå PHASE.DAT (regressionsserie med 1000 punkter) | Serie för estimatorparitet med Stable32 | Oklart — distribueras med den kommersiella Stable32 (Hamilton Technical Services); NIST SP 1065 är allmän egendom men skriver inte ut värdena | Fetch-gated scripts/fetch_phasedat.sh; härledda stegar incheckade |
| JammerTest 2024, inspelning av jamming/spoofing för GNSS (1,4 GB) | kalibrering av scenarier för resiliens/avvikelser | GPL-3.0-or-later (GNU General Public License; Zenodo 10.5281/zenodo.15910563) — vidaredistribution tillåten, men storleken överstiger GitHubs filgräns på 100 MB och GPL:s copyleft står i konflikt med AGPL-trädet (Affero General Public License) | Hämtningsspärrad; hänvisa till DOI (digital objektidentifierare) |
Licensstatusen för varje hämtningsspärrad datamängd undersöktes mot den ursprungliga rättighetshavaren; de två "oklara" klockdatamängderna förblir spärrade i väntan på ett uttryckligt tillstånd till vidaredistribution (vi checkar redan in de värden vi har licens att publicera), och JammerTest-mängden är spärrad på grund av storlek/copyleft trots sin öppna licens.
7. Nyare områden — varifrån deras parametrar kommer#
De typer som lagts till sedan tabellerna ovan följer samma regel. Varje rad anger källan och verifieringsmatrisens status för förmågan som bygger på den (VERIFICATION-MATRIX.md har hela raden).
| Område | Parametrar | Källa | Status |
|---|---|---|---|
Telekomtidssynkronisering (telecom-timing) |
synkroniseringsmasker | ITU-T-rekommendationer (Telecommunication Standardization Sector of the International Telecommunication Union), varje gräns med sin tabell eller klausul, förtecknade i TELECOM-TIMING.md |
MODELLED (avskrift) |
| Telekomtidssynkronisering | förinställningar för oscillatorer ocxo, rubidium, caesium, csac |
fyra datablad från Microchip, dokumentnummer i TELECOM-TIMING.md |
MODELLED |
| Telekomtidssynkronisering | Estimatorer för MTIE (största tidsintervallfel) och TDEV (tidsdeviation) | allantools 2024,06 på tests/fixtures/telecom_timing/ |
VALIDATED |
Solsystemet (solar-system, body-pnt) |
planetpositioner ur JPL:s (Jet Propulsion Laboratory) keplerska Standish-element | kontrollerade mot tillståndsvektorer från JPL Horizons DE441 (Development Ephemeris 441) i tests/fixtures/solar_system/ |
VALIDATED; Uranus, Neptunus, Pluto och månarna MODELLED |
| Solsystemet | gravitationsparametrar, radier och rotation för varje himlakropp | JPL Horizons-poster för himlakroppar och JPL:s tabell över fysikaliska parametrar för satelliter | MODELLED (avskrift) |
Utformning av konstellationer (constellation-design) |
nominella positioner för GPS, Galileo och GLONASS | Galileo Open Service Service Definition Document 1,1; GPS Standard Positioning Service Performance Standard, 5:e utgåvan | VALIDATED |
PNT för LEO (låg omloppsbana runt jorden) (leo-signal, leo-pass, leo-pvt) |
förinställningar för namngivna system | de angivna offentliga siffrorna, varje förinställning med sin källa | MODELLED |
Navigeringsmeddelande för LEO (leo-navmsg) |
vikter för avståndsfel i signal i rymden | Montenbruck, Steigenberger och Hauschild (2018), Advances in Space Research | VALIDATED |
| LEO-navigeringsmeddelande | efemeridmodell med 22 parametrar | Liu m.fl. (2025), Remote Sensing 17(16):2894 | MODELLED |
Proveniensfot för diagram#
Varje diagram som Kshana ritar — i lekplatsen i webbläsaren, i exporten *.chart.svg från kommandoraden (CLI) och i diagrammet i den utskrivbara rapporten *.report.html (HTML, HyperText Markup Language) — stämplas nere till höger med:
Kshana v<version> · scenario <hash> · kshana.dev
scenario <hash> är de första 12 hexadecimala tecknen i körningens scenario-hash: en SHA-256 (SHA: Secure Hash Algorithm) över den kanoniska scenariodefinitionen (frö, trösklar, modellparametrar, GNSS-fönster och så vidare). Det är samma fingeravtryck som syns i körningens enradiga sammanfattning och i fältet scenario_hash i resultat-JSON. (Typer vars resultatdokument saknar scenario_hash, till exempel rapporterna om integritet och om månen, faller tillbaka på en SHA-256 av scenariots TOML-källa (Tom's Obvious, Minimal Language), så att varje diagram ändå har ett stabilt fingeravtryck.)
Eftersom hashen är deterministisk och känslig för indata är en sparad eller inklistrad diagrambild självidentifierande: den anger motorversionen, det exakta scenariot som gav den (för bit-för-bit-reproduktion) och källan — och varje ändrad parameter ger en annan hash, så ett felmärkt diagram kan upptäckas.
Så citerar och reproducerar du#
Varje resultat kan reproduceras utifrån scenario + seed + engine version. Citera motorn via CITATION.cff / Zenodos övergripande DOI 10.5281/zenodo.20528627, och citera parameterkällorna ovan för de värden som en viss körning beror på — de följer med i resultat-JSON:s provenance-fält, så ett publicerat resultat dokumenterar sig självt.
Där ett värde är ett rymdmål på markbaserad hårdvara (varje siffra för strontium-klockor med optiskt gitter) eller en demonstration i markbaserat labb (kall-atom-accelerometer) säger det här dokumentet och resultatets proveniens det uttryckligen. Kshana presenterar inte labb- eller målvärden som flugen prestanda.