Maskinöversättning, inte granskad av en modersmålstalare. Engelska är referensen.

BanorRedigera på GitHubKälla: docs/AGENCY-ORBIT-VALIDATION.md

Validering av kraftmodeller genom efemerispassning — metodik och validerade residualer

Kshanas fullständiga kraftmotor (src/precise_od.rs) anpassad till verkliga precisa banprodukter från rymdorganisationer, med ärliga, citerbara residualer stämplade med commit-hash. Detta är valideringsunderlaget för färdplansmilstolpen P4 ("Precise astrodynamics: high-order gravity, SRP (solar-radiation pressure), validation vs agency datasets").

Vad en validerad residual betyder här#

En residual rapporteras bara när allt av följande gäller (utformning docs/design/2026-06-09-precise-astrodynamics-design.md):

  1. Kraftmodellen innehåller varje störning som spelar roll vid målnoggrannheten: EGM2008 (Earth Gravitational Model 2008) geopotential av hög grad (avkortad vid en angiven grad och ordning, d/o), fasta, oceaniska och atmosfäriska tidvatten (src/tides.rs, IERS (International Earth Rotation and Reference Systems Service) Conventions 2010 kap. 6), tredjekroppsinverkan från Solen och Månen, kanonkule-SRP med konisk skugga och skattad C_R, luftmotstånd (endast LEO (låg omloppsbana)), samt allmänna relativitetsteorins (GR) termer av Schwarzschild och Lense–Thirring (src/forces.rs).
  2. Skattaren är en verklig Gauss–Newton-batchminstakvadratanpassning med en variationell tillståndsövergångsmatris (korskontrollerad mot ändlig differens över hela bågen till < 1e-6), 1/σ²-viktning av observationer och redigering av n-sigma-avvikare.
  3. Referenssystem och tid använder verkliga IERS finals2000A jordorienteringsparametrar (EOP) (UT1 (Universal Time 1, jordrotationstid)−UTC (Coordinated Universal Time), polrörelse; src/eop.rs) genom den validerade kedjan IAU (International Astronomical Union) 2006/2000A CIO (Celestial Intermediate Origin) (src/cio.rs). SP3 (Standard Product 3, formatet för precisa banor) GPS-tid (Global Positioning System) → TT (Terrestrial Time) via den fasta förskjutningen 51,184 s (timescales::gps_to_tt).
  4. Residualerna rapporteras i RTN (radiellt/längs banan/tvärs banan) och i 3D, med och utan empiriska accelerationer, tillsammans med den råa överlappningen (utan anpassning).
  5. Varje tal är reproducerbart (grind med öppna data i CI (kontinuerlig integration)) och citerbart (commit-hash + datamängdsreferens + fixturens SHA-256 (SHA: Secure Hash Algorithm)).

Metod, per datamängd#

  1. Tolka den precisa SP3-banan; för den valda satelliten, ta varje ITRF-positionsbestämning (International Terrestrial Reference Frame).
  2. Konvertera SP3:s GPS-epok → TT; bestäm (UT1, xₚ, yₚ) ur finals2000A vid den epoken.
  3. Rotera varje ITRF-positionsbestämning till GCRS (Geocentric Celestial Reference System) genom CIO-kedjan med dessa EOP — de tröghetsbaserade positionsobservationerna. Dynamiken använder samma EOP för geopotentialens jordfasta rotation, så att observationer och krafter delar ett referenssystem.
  4. Initiera epokens tillstånd (position = första positionsbestämningen; hastighet = ändlig differens av 2:a ordningen) och batchanpassa [r, v, C_R] (nivå 1), därefter dessutom de 9 empiriska RTN-accelerationerna per varv (CPR, cycle-per-revolution) (nivå 2, med a priori-begränsning).
  5. Rapportera RTN- och 3D-RMS (root mean square) efter anpassning för båda nivåerna och den råa överlappningen.

Resultat#

Galileo, medelhög jordbana — GREEN (< 5 m tröskel)#

  • Datamängd: slutlig multi-GNSS-bana från ESA/ESOC (ESA: European Space Agency; ESOC: European Space Operations Centre) (GNSS: global navigation satellite system) ESA0MGNFIN, ITRF, 5 minuters sampling, satellit E11 (GSAT0101, Galileo In-Orbit Validation (IOV), nominell MEO (medelhög jordbana)), 2022-01-01.
  • Öppen källa (ingen inloggning): spegel hos ESA Navigation Office, navigation-office.esa.int/products/gnss-products/2190/. EOP: IERS datacenter.iers.org/data/9/finals2000A.all.
  • Valideringscommit: 66da3ff (tests/agency_galileo.rs).
  • Fixturer (SHA-256): SP3 e7297f4c…d3a24a3; EOP 6b781d36…cb2ed00f (tests/fixtures/agency/NOTICE.md).
Kör Båge d/o n_obs 3D-RMS RTN (R, T, N) C_R Anteckningar
CI-fixtur, nivå 1 (kraft + C_R) 8 h 12 97 0,133 m 0,105, 0,067, 0,047 m 1.174 rå överlappning 78,7 km
CI-fixtur, nivå 2 (+ empirisk CPR) 8 h 12 97 0,070 m 0,048, 0,044, 0,027 m — halverar residualen
Utskick av hela bågen, nivå 1 (före rättning†) 24 h 12 289 0,611 m 0,276, 0,381, 0,390 m 1.244 workflow_dispatch

CI-fixturernas tal ovan spelades in på nytt i 0,36 efter S2-rättningen av lufttidvattnet (xval/s2-air-tide-fix/): Galileo nivå 1 flyttades 0,132 → 0,133 m (C_R 1,1744 → 1,1743), N-komponenterna för Swarm-A med 1–2 mm; talen för utskicket av hela bågen kördes inte om. † Före rättning: talet för utskicket av hela bågen spelades in före S2-rättningen av lufttidvattnet i 0,36 och har inte körts om på den rättade koden (heldagsprodukterna hämtas av utskicksarbetsflödet och fanns inte tillgängliga i den session som gjorde rättningen). På CI-fixturerna flyttade rättningen Galileos 3D-RMS med mindre än 1 mm och Swarm-A:s komponenter med 1–2 mm, så en ändring av samma storleksordning förväntas; nästa körning av workflow_dispatch spelar in den på nytt.

MEO-fältet är gravitationsmässigt konvergerat vid grad 8 (nivå 1-resultatet för 8 h är identiskt vid d/o 8, 10 och 12 på millimetern när), så CI-fixturens avkortning vid d/o 12 är försumbar; utskicksjobbet kör hela d/o 70. Anpassningen över 8 h når 13 cm med ren kraft och 7 cm med den empiriska nivån; hela bågen på 24 h (mer SRP- och förmörkelsebelastning, längre dynamiskt tidsspann) ger 61 cm — långt inom tröskeln på 5 m.

Swarm-A LEO — GREEN (< 5 m tröskel)#

  • Datamängd: ESA Swarm nivå 2, precis vetenskaplig bana med reducerad dynamik SW_OPER_SP3ACOM_2_ (RDOD_AR, GPS-härledd, ITRF / IGb14, ~2 cm, bearbetning vid Delft University of Technology), satellit Swarm-A (SP3-id L47, ~430 km LEO), 2022-01-01.
  • Öppen källa (ingen inloggning): ESA:s Swarm-distributionsserver https://swarm-diss.eo.esa.int/ → Level2daily/Latest_baselines/POD/RD/Sat_A/ (öppen enligt ESA Data Policy). EOP: samma IERS-serie finals2000A 2022-001.
  • Valideringscommit: ceea70a (tests/agency_swarm.rs).
  • Fixtur (SHA-256): SP3 6cd84b78…acb733e (tests/fixtures/agency/NOTICE.md).

En LEO-båge lägger till atmosfäriskt luftmotstånd i kraftmodellen. Eftersom densitetsmodellen är en statisk styckvis exponentiell anpassas banan i två nivåer: en dynamisk nivå (skatta endast epokens tillstånd; C_R hålls vid 1, eftersom luftmotståndet dominerar i LEO och SRP är dåligt separerbart över en kort båge), och en nivå med reducerad dynamik som lägger till de empiriska accelerationerna per varv som bär det omodellerade luftmotståndet — den operativt meningsfulla LEO-banan.

Kör Båge d/o n_obs 3D-RMS RTN (R, T, N) Anteckningar
CI-fixtur, dynamisk (C_R=1) 3 h 70 181 2,687 m 0,925, 2,522, 0,045 m residualen ≈ ren längs banan (luftmotstånd)
CI-fixtur, reducerad dynamik (+empirisk) 3 h 70 181 0,098 m 0,026, 0,092, 0,025 m det empiriska absorberar luftmotståndet

Den dynamiska anpassningen klarar tröskeln på 5 m med residualen nästan helt längs banan — den klassiska luftmotståndssignaturen på ~430 km. Den empiriska nivån absorberar felet längs banan (2,52 → 0,09 m) och ger en anpassning med reducerad dynamik på ~10 cm mot ESA:s egen bana på ~2 cm. Körningen över hela dygnet med full grad är det ignorerade swarm_full_arc_dispatch (distributionsservern levererar produkten genom sin filbläddrarsession, så grundaren laddar ner dygnets SP3 och pekar KSHANA_SWARM_SP3 på den). NRLMSISE-00 (NRLMSISE: Naval Research Laboratory Mass Spectrometer and Incoherent Scatter Radar Extended atmosphere model) med rymdvädersdrivare är den noterade uppgraderingen som skulle skärpa den dynamiska nivån ytterligare.

LRO lunar — validated, över tröskeln på 5 m (ärligt) (P4 W4b)#

  • Datamängd: den verkliga rekonstruerade banan för NASA/JPL (NASA: National Aeronautics and Space Administration; JPL: Jet Propulsion Laboratory) Lunar Reconnaissance Orbiter (LRO; NAIF (Navigation and Ancillary Information Facility) −85) från JPL Horizons, geometriska månscentrerade tillståndsvektorer i ICRF (International Celestial Reference Frame), 2022-01-01, ~98 km höjd, 1 minuts sampling (241 epoker, 4 h, ~2 varv). Att använda Horizons textvektorer kräver ingen SPK/SPICE-läsare (SPK: planetefemeridkärna; SPICE: Spacecraft, Planet, Instrument, C-matrix, Events).
  • Gravitation: GRGM660PRIM-fältet från GRAIL (Gravity Recovery and Interior Laboratory) (NASA Goddard Space Flight Center, grad 660), avkortat till d/o 150 och anpassat vid d/o 100, utvärderat i månens kroppsfasta huvudaxelsystem.
  • Öppen källa (ingen inloggning): Horizons-API:t (application programming interface) ssd.jpl.nasa.gov/api/horizons.api; gravitation via ICGEM (International Centre for Global Earth Models) icgem.gfz-potsdam.de.
  • Valideringscommit: 4fb82bb (tests/agency_lro.rs).
  • Fixturer (SHA-256): LRO 574e3518…d100f0; GRGM 0ff04184…f029977ae (tests/fixtures/agency/NOTICE.md).

Detta är månscentrerad dynamik — en särskild kraftmodell (src/lunar_od.rs): GRGM-fältet i månens kroppsfasta system (IAU:s 2015 orientering för medeljord src/lunar_frame.rs sammansatt med den fasta förskjutningen DE421 (Development Ephemeris 421) medeljord → huvudaxel (ME→PA)), plus jorden (den dominerande störningen i månbanor) och solen som tredje kroppar, anpassad genom samma generiska precisa Gauss–Newton-skattare som jorddatamängderna använder (egenskapen precise_od::ForceModel).

Kör Båge d/o n_obs 3D-RMS RTN (R, T, N) Anteckningar
CI-fixtur, dynamisk (endast tillstånd) 4 h 100 241 12,05 m 2,91, 10,11, 5,88 m rå överlappning 39,9 m
CI-fixtur, reducerad dynamik (+empirisk 1+2/varv) 4 h 100 241 6,67 m 3,41, 4,58, 3,44 m empiriska 1 och 2 per varv absorberar felet längs banan

Rättning i 0,36: fram till 0,36 tillämpades förskjutningen ME→PA i DE421 i fel riktning (och med fel Euler-ordning), vilket gjorde att det analytiska PA-systemet hamnade omkring 208″ från PA i stället för på det. Den är nu transkriberad så som SPICE definierar den (kontrollerad mot pxform('MOON_ME','MOON_PA') till 2.6e-16 rad, tests/lunar_me_pa_offset_spice_oracle.rs; docs/design/evidence/fut05b-me-pa-offset-sign/). Talen ovan gäller efter rättningen; före den var de 53,8 m rått, 12,6 m dynamiskt (3,07, 10,19, 6,81 m) och 6,65 m med reducerad dynamik (3,49, 4,56, 3,35 m).

Dessa residualer ligger över tröskeln på 5 m som Galileo (0,13 m) och Swarm-A (0,10 m) klarar, och rapporteras ärligt.

Vad som egentligen sätter golvet — en korsvalidering på DE-nivå (och en rättelse)

Vi antog att den begränsande faktorn var noggrannheten i den analytiska månorienteringen och efemeriden (IAU:s librationsserie, noggrann till tiotals bågsekunder jämfört med JPL:s DE (Development Ephemeris) numeriskt integrerade MOON_PA, och Montenbruck–Gills efemerid för jorden och solen, ~0,3° jämfört med en DE/SPICE-kärna). För att pröva det direkt byter den arbetsytsexkluderade korsvalideringskratet xval/anise-lunar-od ut enbart dessa två indata mot sådana på DE-nivå — DE440:s (Development Ephemeris 440) orientering av månens huvudaxlar (moon_pa_de440_200625.bpc) och DE440-efemeriden (de440s.bsp), lästa genom ANISE (Attitude, Navigation, Instrument, Spacecraft, Ephemeris — en ren Rust-läsare av SPICE-kärnor) — och kör om samma skattare (commit ae96a29, kärnans SHA-256 c1c7fee… / 60cd55a…):

Nivå analytisk DE-grade
rå överlappning 53,8 m 41,5 m
dynamisk 12,6 m 12,0 m
reducerad dynamik (1+2/varv) 6,65 m 6,67 m

Anmärkning för 0,36: det mesta av vinsten på den dynamiska nivån nedan berodde på förskjutningsfelet, inte på indata på DE-nivå. Med den rättade förskjutningen ME→PA ger den analytiska stacken 39,9 m rått, 12,05 m dynamiskt och 6,67 m med reducerad dynamik, mot 41,5, 12,0 och 6,67 m på DE-nivå: de analytiska anpassningarna och de på DE-nivå stämmer nu överens på varje nivå. Avläsningen 0,30 i tabellen nedan följer av detta och är kvar så som den skrevs.

Hypotesen stämmer bara till hälften, och huvudpåståendet behövde rättas. Orientering och efemerid på DE-nivå förbättrar den råa överlappningen (53,8 → 41,5 m) och den dynamiska anpassningen (12,6 → 12,0 m) — så felet i den analytiska orienteringen och efemeriden är verkligt och begränsar de nivåerna. Men de lämnar residualen med reducerad dynamik i stort sett oförändrad (6,65 → 6,67 m): den empiriska nivån med 1+2 per varv absorberade redan felet i orientering och efemerid, så det operativa golvet på ~6,6 m sätts av något annat — en residual som basen med cykler per varv inte kan absorbera och som referenssystem på DE-nivå inte tar bort. Den mest samstämmiga förklaringen är omodellerad icke-gravitationell dynamik hos LRO (termisk återstrålning, avgasning) över den korta bågen på 4 h; fältets grad är utesluten (identisk vid d/o 100 och 150) och integratorns tolerans är utesluten (identisk vid atol 1e-6 mot 1e-9). Den konstruktiva slutsatsen: Kshanas slimmade, kärnfria analytiska månstack matchar redan noggrannheten på DE-nivå för den operativa månbanan med reducerad dynamik — standardinställningen med enbart koefficienter lämnar ingenting oanvänt där. Att passera 5 m skulle kräva modellering av LRO:s icke-gravitationella krafter (en rymdfarkostspecifik box-wing-/termisk modell och en längre anpassning över flera bågar), inte bättre referenssystem.

Ärlighetskontrakt#

  • Den "gröna" tröskeln på < 5 m är uppnådd för Galileo MEO (0,13 m dynamiskt) och Swarm-A LEO (2,69 m dynamiskt / 0,10 m med reducerad dynamik). LRO lunar publiceras som den är med 12,05 m dynamiskt / 6,67 m med reducerad dynamik (1+2 empiriska per varv) — över tröskeln (0,36, efter rättningen av förskjutningen ME→PA; 12,6 / 6,65 m före den). En korsvalidering på DE-nivå (ovan) prövade och rättade påståendet om den begränsande faktorn: golvet med reducerad dynamik är inte den analytiska orienteringen och efemeriden (DE440-kärnor lämnar det oförändrat vid 6,67 m), så det stängs inte av bättre referenssystem utan genom modellering av LRO:s icke-gravitationella dynamik — den ärliga, uppdaterade vägen till meternivå.
  • För LEO rapporteras nivåerna dynamisk (endast tillstånd, statisk densitet) och reducerad dynamik (med empiriska accelerationer) alltid var för sig, så att läsaren ser vad de empiriska termerna absorberar; nivån med reducerad dynamik är den operativa banan. Samma uppdelning gäller för MEO:s empiriska nivåer och nivåer med ren kraft.
  • Varje residual har sin commit-hash, datamängdsreferens och fixturens kontrollsumma angivna ovan.
  • Datamängder validerade mot verklig referens från rymdorganisationer: 3 av 3 (Galileo MEO, Swarm-A LEO, LRO lunar). Når tröskeln < 5 m: 2 av 3 (Galileo ✓, Swarm-A ✓; LRO vid 6,67 m, ärligt över den).