Maskinoversettelse, ikke gjennomgått av en morsmålsbruker. Engelsk er referansen.

Sider for scenariotyperRediger på GitHubKilde: docs/kinds/by-kind/leo-navmsg.md

leo-navmsg (scenariotype)

Scenariotype i motoren v0.40.0, familie Navigasjon i lav jordbane. Veiledende: analyseresultat fra et forsknings- og ingeniørverktøy, ikke typegodkjent navigasjonsutstyr og ikke en safety-of-life-tjeneste. Hver etikett her kommer fra motoren eller verifikasjonsmatrisen; en type er MODELLED med mindre matrisen sier noe annet (hvordan en etikett oppnås: avsnittet Evidence i README).

Hva den gjør#

LEO-navigasjonsmelding: den kringkastede efemeriden og klokken til en satellitt for posisjonering, navigasjon og tidssynkronisering i lav jordbane (LEO), for enhver bane, bærebølge og modell, med valgfrie navngitte forhåndsinnstillinger (Xona Pulsar, Iridium, Starlink, CentiSpace, et representativt C-bånd-system, ATOMIC-modellen uten klokke, Celeste IOD). INNHOLD: hjelpedata (SVID, datautgave, bånd, signalhelse), synkronisering (uke, ukesekund, et andregrads klokkepolynom af0-af2 om toc), efemeride i en av fire modeller -- Galileo OS SIS ICD-settet med 16 keplerske parametere; det settet pluss korreksjonspolynomer langs banen, på tvers og radialt; modellen med 22 parametere fra Liu et al. 2025; et ECEF-polynom uten klokkeledd (ATOMIC uten klokke) -- og andre tjenester (et Klobuchar-sett i kringkastingen, NeQuick-G ai0-ai2 med effektivt ioniseringsnivå, og parametere fra systemtid til UTC med ICD-logikken for skuddsekund). TILPASNING: en sannhetsbane integrert med sonal J2-J6- eller EGM2008-gravitasjon til valgt grad og drag, og en seedet fri eller styrt klokke; Levenberg-Marquardt-tilpasning av det keplerske settet på ikke-singulære elementer, deretter lineære minstekvadraters korreksjonspolynomer; klokken tilpasset netto av det relativistiske leddet brukeren legger til. ANALYSER: fit-interval-trade (signal-in-space range error, SISRE, med globalt gjennomsnittlige vekter for banehøyden, mot tilpasningsintervall og oppdateringsperiode, kun bane og med klokke), model-comparison (fire modeller, antall parametere, kodede biter og Kshanas tilpasning ved Liu et al.-høydene ved siden av de publiserte tallene), midpass-update (den høyeste passeringen over en bruker, hver meldingsbyttes hopp i posisjon, klokke og brukeravstand, hopp ved verste geometri, PASS/FAIL mot en kontinuitetsterskel), encode-decode (Kshanas egen dokumenterte binære ramme med CRC-24Q, et kvantiseringsbudsjett på et halvt trinn per felt, en kontroll av ødelagt ramme, en eksport og import av poster i RINEX-4-stil merket som en Kshana-utvidelse, og en CSV-tabell). VALIDATED: SISRE-vektene mot den publiserte MEO/GEO-tabellen (Montenbruck et al. 2018); Galileo-brukeralgoritmen mot RTKLIB på virkelige Galileo-kringkastede efemerider; CRC-24Q mot sin katalogkontrollverdi og eksempelrammen RTCM 1005. MODELLED: hver tilpasnings- og SISRE-verdi er representasjonsfeil mot en sannhet integrert av Kshana (ingen banebestemmelses- eller prediksjonsfeil); sammenligningen med Liu et al. bruker andre baner; kodings- og tekstformatene er Kshanas egne.

Én kjøring av scenarios/leo-navmsg-celeste-iod.toml oppsummeres slik: LEO navigation message — 510 km, 97,4 deg, gravity degree 20, model kepler-rac SISRE weights: w_R 0,459, w_AC^2 1/2.53 (mask 0 deg) encode-decode: kepler-rac model, frame 152 bytes (1156 payload bits, 891 ephemeris+clock bits), CRC-24Q 0x58ADF2 quantisation: largest position change 0,52 mm, clock 0,09 mm; SISRE exact 0,0013 m, quantised 0,0013 m corrupted frame rejected: true; RINEX round trip 4.43e-6 m; CSV round trip 0.00e0 m fit-interval trade over 1800 s (usage period = fit interval): kepler16 60 s SISRE orbit RMS 0,0003 m max 0,0015 m with clock RMS 0,0006 m kepler16 120 s SISRE orbit RMS 0,0003 m max 0,0015 m with clock RMS 0,0007 m kepler16 300 s SISRE orbit RMS 0,0036 m max 0,0141 m with clock RMS 0,0037 m kepler16 600 s SISRE orbit RMS 0,0293 m max 0,1023 m with clock RMS 0,0293 m kepler16 900 s SISRE orbit RMS 0,1073 m max 0,3812 m with clock RMS 0,1075 m kepler-rac 60 s SISRE orbit RMS 0,0000 m max 0,0000 m with clock RMS 0,0005 m kepler-rac 120 s SISRE orbit RMS 0,0001 m max 0,0002 m with clock RMS 0,0007 m kepler-rac 300 s SISRE orbit RMS 0,0005 m max 0,0021 m with clock RMS 0,0012 m kepler-rac 600 s SISRE orbit RMS 0,0097 m max 0,0395 m with clock RMS 0,0096 m kepler-rac 900 s SISRE orbit RMS 0,0388 m max 0,1143 m with clock RMS 0,0390 m Det keplerske settet med 16 parametere forverres fra 0,0003 m ved 60 s til 0,1073 m ved 900 s: ett keplersk sett med harmoniske to ganger per omløp kan ikke følge de høyfrekvente gravitasjonsleddene og draget fra en LEO-bue i mer enn noen få minutter, og minstekvadraters residualen svinger over vinduet. Polynomene langs/på tvers/radialt, av høyere grad enn det keplerske settet spenner over, absorberer det som er igjen, og gir 0,0388 m ved 900 s.

Inndata#

Fra skjemaet (kshana kinds --json):

  • Påkrevde felt: ingen
  • Valgfrie felt: name, description, seed, analysis, preset, orbit, clock, message, trade, comparison, midpass

Eksemplet scenarios/leo-navmsg-celeste-iod.toml setter blant annet:

Felt Verdi Enhet
analysis [encode-decode, fit-interval-trade] ikke oppgitt
kind leo-navmsg tekst
message.csv_schema celeste-iod tekst
name Celeste IOD-melding (forhåndsinnstilling workshop) tekst
preset celeste-iod tekst
seed 15 ikke oppgitt
trade.fit_intervals_s [60, 120, 300, 600, 900] s
trade.models [kepler16, kepler-rac] ikke oppgitt
trade.span_s 1800 s
trade.update_fit_interval_s 300 s
trade.update_periods_s [60, 150, 300] s

Kjør den#

kshana scenarios/leo-navmsg-celeste-iod.toml

5 medfølgende scenarioer bruker denne typen; de andre ligger i scenarios/.

Hva den gir#

Skalarresultatene fra den kjøringen, med enhetene motoren oppgir:

Resultat Verdi Enhet
encode_decode.corrupted_frame_rejected true flagg
encode_decode.crc24q 0x58ADF2 tekst
encode_decode.crc24q_check_value_123456789 0xCDE703 tekst
encode_decode.csv_round_trip_max_pos_m 0 m
encode_decode.csv_schema celeste-iod tekst
encode_decode.ephemeris_clock_bits 891 bit
encode_decode.frame_bytes 152 byte
encode_decode.model kepler-rac tekst
encode_decode.payload_bits 1156 bit
encode_decode.quantised_max_clock_m 9.4929e-5 m

Resultatetikett (motorens): MIXED — VALIDATED byggeklosser, MODELLED resultater. SISRE-vektene gjengir den publiserte MEO/GEO-tabellen (Montenbruck et al. 2018), Galileo ICD-brukeralgoritmen gjengir RTKLIB på virkelige Galileo-kringkastede efemerider, og CRC-24Q gjengir sin katalogkontrollverdi og eksempelrammen RTCM 1005

Diagrammet motoren skriver for scenarios/leo-navmsg-celeste-iod.toml, typen leo-navmsg

Evidens#

MODELLED 5 · VALIDATED 6: radene i verifikasjonsmatrisen som nevner denne typen.

  • VALIDATED leo_navmsg::sisre::sisre_weights: den radiale vekten w_R og den kvadrerte tverrvekten w_AC^2 som gjennomsnitt av cos^2 og halvparten av sin^2 av siktlinjens nadirvinkel over brukere jevnt fordelt på den synlige jordkalotten over en elevasjon
  • VALIDATED leo_navmsg::elements::kepler_point: Galileo OS SIS ICD-evalueringen av keplerske elementer (Keplers ligning, andreharmoniske korreksjoner, jordfast node) skrevet separat fra motorens RINEX-evaluator, som returnerer posisjonen med argumentet Tester: leo_navmsg_reference.rs.
  • VALIDATED leo_navmsg::codec::crc24q: generatorpolynom 0x1864CFB, startverdi 0, ingen refleksjon, ingen sluttlig XOR, kontrollen Kshana LEO-rammen bærer over hver foregående byte
  • VALIDATED Tilpasningen og avveiningen for typen leo-navmsg: en sannhetsbane integrert med sonal J2-J6- eller EGM2008-gravitasjon til valgt grad og drag, og en seedet fri eller styrt klokke; en Levenberg-Marquardt-tilpasning av det keplerske Galileo-settet på ikke-singulære
  • og 7 til i matrisen.

Radene kjøringen selv brukte, med den uavhengige referansen matrisen gir hver (de offentlige kildene er navngitt der):

  • MODELLED Deterministisk, scenariohashet, SBOM + gates med gylne verdier på tvers av plattformer. Uavhengig referanse (ExternalDataset): SBOM-overensstemmelse med det offisielle CycloneDX 1,5 JSON Schema (+ gyldige SPDX-identifikatorer), en ekstern publisert standard, null valideringsfeil over hele avhengighetsgrafen; delen om FoM-determinisme / byte-reproduserbarhet er fortsatt en festet selvkonsistenssjekk, så raden forblir MODELLED
  • VALIDATED leo_navmsg::sisre::sisre_weights: den radiale vekten w_R og den kvadrerte tverrvekten w_AC^2 som gjennomsnitt av cos^2 og halvparten av sin^2 av siktlinjens nadir. Uavhengig referanse (ExternalDataset): Den publiserte tabellen med SISRE-vektingsfaktorer fra Montenbruck, Steigenberger og Hauschild (2018), Multi-GNSS signal-in-space range error assessment - Methodology and results, Advances in Space Research 61(12):3020-3038, doi 10.1016/j.asr.2018.03.041: GPS 0,98 og 1/49, GLONASS 0,98 og 1/45, Galileo 0,98 og 1/61, BeiDou MEO 0,98 og 1/54, BeiDou IGSO/GEO 0,99 og 1/126. Det samme gjennomsnittet evaluert ved LEO-radier gir
  • VALIDATED leo_navmsg::elements::kepler_point: Galileo OS SIS ICD-evalueringen av keplerske elementer (Keplers ligning, andreharmoniske korreksjoner, jordfast node) skrevet separ. Uavhengig referanse (ExternalDataset): RTKLIB 2.4.2-p13 eph2pos ECEF-posisjoner (en uavhengig implementasjon av den samme ICD-algoritmen) for virkelige BKG/IGS-kringkastingsposter fra 2024-09-10, begge innsjekket med opphav i tests/fixtures/rinex_sp3_interop (NOTICE, rinex_ecef_reference.txt, brdc_multignss_slice.rnx). Dette validerer den keplerske brukeralgoritmen; korreksjonene langs/på tvers/radialt som er lagt oppå dekkes av egne rader, og Liu-leddene b
  • VALIDATED leo_navmsg::codec::crc24q: generatorpolynom 0x1864CFB, startverdi 0, ingen refleksjon, ingen sluttlig XOR, kontrollen Kshana LEO-rammen bærer over hver foregående. Uavhengig referanse (ExternalDataset): CRC-katalogens kontrollverdi for disse parameterne (reveng.sourceforge.io CRC catalogue, CRC-24/LTE-A: bredde 24, poly 0x864CFB, init 0, kontroll 0xCDE703), som er CRC-24Q-parameterne til RTCM 10403 og Galileo OS SIS ICD, og eksempelrammen for meldingstype 1005 trykt i RTCM 10403
  • VALIDATED Tilpasningen og avveiningen for typen leo-navmsg: en sannhetsbane integrert med sonal J2-J6- eller EGM2008-gravitasjon til valgt grad og drag, og en seedet fri eller styrt. Uavhengig referanse (ExternalDataset): Virkelige presise vitenskapsbaner som sannhet (TU Graz IfG/ITSG operasjonelle redusert-dynamiske baner, frie til all bruk med kildeangivelse; SHA-256-verdier i fixture-NOTICE) tilpasset med settet på 16 parametere over buer på 20 og 30 min, mot statistikken Liu et al. 2025 (Remote Sensing 17(16):2894, CC BY 4,0) publiserer for de samme satellittene og dagene: RMS langs, på tvers og radialt hver innenfor 1.5x (målt 0,804 til 1,087), SISR

Begrensninger#

Hva kjøringens egen rapport sier ikke er modellert eller ikke er validert:

  • SISRE er meldingens representasjonsfeil mot sannheten den ble tilpasset til; feil i banebestemmelse og banepredikering er ikke modellert. (resultat limitations[0])
  • Sannhetsbanen er en numerisk integrasjon i Kshana (sonal eller EGM2008-gravitasjon, statisk eksponentielt drag), ikke den presise banen til en virkelig satellitt; ingen tredjelegemer, solstrålingstrykk eller tidevann. (resultat limitations[1])
  • Det binære formatet er Kshanas egen dokumenterte koding modellert etter de publiserte meldingskomponentene; det er ikke bitoppsettet til Celeste eller noe annet system (ingen er offentlige). (resultat limitations[2])
  • RINEX-lignende blokken er en dokumentert Kshana-utvidelse; RINEX 4,02 definerer ingen LEO-navigasjonsposter. (resultat limitations[3])
  • NeQuick-G-koeffisienter bæres og det effektive ioniseringsnivået beregnes, men NeQuick-integrasjonen av elektrontettheten som gjør det om til en forsinkelse er ikke implementert; Klobuchar-forsinkelsen er det, skalert til bærebølgen med 1/f^2 uten korreksjon for en satellitt som flyr inne i ionosfæren. (resultat limitations[4])
  • Leddene med 22 parametere fra Liu et al. 2025 følger artikkelens brukeralgoritme (ligning 1-7) og tilpasningsstrategi (avsnitt 2,3); dens SISRE-mot-høyde-tall brukte virkelige presise baner, så denne sammenligningen på en bane integrert av Kshana er MODELLED, ikke VALIDATED (sammenligningen med virkelig bane er tests/leo_navmsg_fit_real_orbit_oracle.rs). (resultat limitations[5])
  • MIXED — VALIDATED byggeklosser, MODELLED resultater. SISRE-vektene gjengir den publiserte MEO/GEO-tabellen (Montenbruck et al. 2018), Galileo ICD-brukeralgoritmen gjengir RTKLIB på virkelige Galileo-kringkastede efemerider, og CRC-24Q gjengir sin katalogkontrollverdi og eksempelrammen RTCM 1005. Hver tilpasnings-, SISRE-, kontinuitets- og kvantiseringsverdi er MODELLED: representasjonsfeilen til en melding mot en (resultat label)
  • MODELLED: hver tilpasnings- og SISRE-verdi er representasjonsfeil mot en sannhet integrert av Kshana (ingen banebestemmelses- eller prediksjonsfeil); Liu et al. (typekatalog (kshana kinds --json))

Se også#