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

Validace a důkazyUpravit na GitHubuZdroj: docs/STANDARDS.md

Normy a interoperabilita

Kshana mluví standardními výměnnými formáty komunit GNSS (globálního družicového navigačního systému), letové dynamiky a časování, takže může stát vedle RTKLIB (open-source knihovny pro kinematické určování polohy v reálném čase), gLAB, Ginan, GMAT (General Mission Analysis Tool), Orekit a nástrojů analytických center IGS (International GNSS Service), a nikoli na soukromém ostrově. Tato stránka mapuje výměnné formáty, které engine parsuje nebo vydává, na modul, který každý z nich implementuje, a na autoritativní specifikaci.

Je vymezena na formáty — věci se směrem čtení/zápisu. Signálové a algoritmické normy, které engine implementuje, nikoli parsuje (IS-GPS-200 (IS: Interface Specification; GPS: Global Positioning System), IEEE (Institute of Electrical and Electronics Engineers) 1139, RTCA (dříve Radio Technical Commission for Aeronautics) DO-229E, IGRF-14 (IGRF: International Geomagnetic Reference Field), reference ARAIM (pokročilé autonomní monitorování integrity přijímačem) WG-C (WG: pracovní skupina), CCSDS (Consultative Committee for Space Data Systems) 401/DSN (DSN: Deep Space Network)), jsou doloženy řádek po řádku místo toho v VERIFICATION-MATRIX.md.

Formáty, kterými engine mluví#

Norma Směr Modul Specifikace / autorita Poznámky
CCSDS OEM (Orbit Ephemeris Message) čtení i zápis src/oem.rs CCSDS 502.0-B Orbit Data Messages, forma KVN (zápis klíč–hodnota) Tabelární efemeridy stavových vektorů, které přijímají GMAT, Orekit, STK (Systems Tool Kit). parse_oem je čte zpět; ověřeno obnovením doslovného příkladu z Blue Book CCSDS 502.0-B-3, obrázek G-11 (tests/ccsds_reference.rs). Nepovinný kovarianční blok polohy/rychlosti 6×6 (COVARIANCE_START … COVARIANCE_STOP, serializace KVN dolního trojúhelníku o 21 prvcích s nepovinným COV_REF_FRAME) se zapisuje (covariance_block_kvn) i čte (parse_covariance_block), zpáteční převod je symetrický (testy src/oem.rs).
CCSDS OMM (Orbit Mean-Elements Message) zápis src/omm.rs CCSDS 502.0-B-2, forma KVN Publikace středních elementů SGP4/TLE na standardní dráze (SGP4: Simplified General Perturbations 4; TLE: dvouřádková sada elementů) (střední pohyb, e, i, Ω, ω, M, BSTAR (člen odporu orbitálního propagátoru)). Dosažitelné z CLI (CLI: rozhraní příkazové řádky) u scénáře orbit přes --export-omm <out.omm> nebo export_omm = true (jeden OMM na každou družici definovanou TLE, s jejím skutečným identifikátorem NORAD (North American Aerospace Defense Command), označením COSPAR (Committee on Space Research) a epochou; tests/sp3_export_roundtrip.rs). Forma XML (Extensible Markup Language) a čtečka jsou na řadě později.
CCSDS TDM (Tracking Data Message) čtení i zápis src/ccsds_tdm.rs CCSDS 503.0-B Tracking Data Message, forma KVN Záznamy sledování vzdálenosti / Dopplera / úhlu, které přelet nad DSN/ESTRACK (ESTRACK: evropská síť pro sledování kosmických těles) dodává systému OD (určování oběžné dráhy). Ověřeno obnovením doslovného příkladu z Blue Book CCSDS 503.0-B-2, obrázek E-9 (tests/ccsds_reference.rs).
CCSDS Space Packet (133,0) čtení i zápis src/space_packet.rs CCSDS 133.0-B-2 Space Packet Protocol Rámování primární hlavičky TM/TC (TM: telemetrie; TC: telekomando) o 6 oktetech, které si vyměňují pozemní systémy. Kodér reprodukuje publikované bajtové testovací vektory nezávislé knihovny spacepackets-py (testy src/space_packet.rs).
SP3-c (SP3: Standard Product 3, formát přesných drah) / SP3-d (přesné efemeridy) čtení i zápis src/sp3.rs IGS Standard Product 3 (c/d) Časová řada polohy v zemském pevném systému (ECEF) + času hodin. Zpáteční převod ověřen na < 0,5 m na skutečném snímku gps-ops (tests/sp3_export_roundtrip.rs).
RINEX (Receiver Independent Exchange Format) 3 (broadcast navigace) čtení src/rinex.rs RINEX 3.x NAV (IS-GPS-200, Galileo ICD (interface control document), BeiDou ICD, GLONASS (ruský globální družicový navigační systém) ICD) Načítání multi-GNSS NAV (GPS LNAV (starší navigační zpráva), Galileo F/NAV, QZSS (japonský kvazizenitální družicový systém), BeiDou MEO/IGSO (MEO: střední oběžná dráha Země; IGSO: nakloněná geosynchronní dráha), stavový vektor GLONASS); použitelné jako plnohodnotný zdroj pro Propagator.
TLE / 3LE (dvouřádkové / třířádkové elementy) čtení src/tle.rs NORAD / Celestrak, AIAA (Americký institut pro letectví a kosmonautiku) 2006-6753 Propagováno ověřeným jádrem SGP4/SDP4 (SDP4: zjednodušené poruchy v hlubokém vesmíru 4) (4,12 mm oproti 666 oficiálním vektorům AIAA).
RINEX 3.0x (observační) čtení src/rinex_obs.rs RINEX 3.0x OBS (4,00 se očekává jako zpracovatelný, na souboru 4,00 nikdy nevyzkoušeno) Druhá polovina RINEX: vlastní záznamy kódu, nosné, Dopplera a SNR (SNR: poměr signálu k šumu) přijímače (parse_obs). Je to vstup, který řešič určení polohy z jednoho bodu pvt zpracovává spolu s vysílaným navigačním souborem (tests/pvt_abmf.rs, skutečná stanice IGS ABMF).
IONEX (formát pro výměnu map ionosféry; globální mapy TEC (celkový obsah elektronů)) čtení src/ionex.rs IONEX 1.x (produkt IGS o ionosféře) parse_ionex čte globální mřížky celkového obsahu elektronů IGS — měřenou alternativu k vysílané Klobucharově korekci — s bilineární prostorovou a časovou interpolací a převodem šikmosti na zpoždění v šikmém směru.
IERS (Mezinárodní služba rotace Země a referenčních systémů) finals2000A / Bulletin B (orientace Země) čtení src/eop.rs, src/frame_eop.rs Konvence IERS; IERS EOP (parametry orientace Země) 14 C04 / finals2000A.all UT1 (světový čas 1, čas rotace Země)−UTC (koordinovaný světový čas) a pohyb pólu z oficiálního produktu včetně předpovězených řádků, takže redukci soustavy lze provést v reálném čase a růst chyby předpovědi lze rozpočtovat (tests/operational_eop_predictor_reference.rs).
KIF (Kshana Interchange Format) čtení i zápis src/interchange.rs tento repozitář — viz SCHEMA.md Neutrální, verzovaná obálka, do které lze zabalit libovolný artefakt: format / schema_version / kind / engine_version / payload, s výslovným verdiktem o kompatibilitě hlavní a vedlejší verze pro spotřebitele. Nejde o externí standard; je zde popsána, protože ji cizí nástroj musí rozpoznat.
lunární výměna LunaNet / IOAG (Poradní skupina pro meziagenturní operace) zápis (časová metadata se rovněž čtou) src/lunar_interop.rs specifikace interoperability LunaNet / architektura lunární komunikace IOAG nad CCSDS 502,0 Lunární soustava, lunární časová stupnice a lunární efemeridy vydávané ve formách CCSDS slaďovaných s LunaNet/IOAG (export_lunar_oem, export_kif_lunar, export_lunar_time_metadata), s kontrolou polí na vydaném OEM (tests/lunar_interoperability_export_reference.rs).
CZML (Cesium Language) zápis src/interop/czml.rs formát paketů CZML pro CesiumJS Proud JSON (JavaScript Object Notation) časově označených paketů pro globus CesiumJS; pohybující se objekty zapsané v GCRS (INERTIAL). --export czml u každého druhu, který umisťuje objekty na Zemi.
KML (Keyhole Markup Language) zápis src/interop/kml.rs OGC (Open Geospatial Consortium) KML 2,2 Zeměpisná délka, šířka a výška vázané na Zemi pro Google Earth a nástroje GIS (geografický informační systém). --export kml.
GeoJSON zápis i čtení (trasa) src/interop/geojson.rs IETF (Internet Engineering Task Force) RFC 7946 Geometrie vázaná na Zemi pro webové mapy a nástroje GIS (--export geojson); LineString se čte zpět jako vstup přímé trati pro druhy, které ji létají (--import-route <route.geojson>).
Efemeridy STK (.e, EphemerisTimePosVel) zápis src/interop/stk.rs formát souboru efemerid Ansys STK Inerciální (ICRF) poloha a rychlost pro STK a nástroje, které čtou jeho formát efemerid. --export stk.
SigMF (Signal Metadata Format) čtení i zápis src/sigmf.rs specifikace SigMF Komplexní záznamy v základním pásmu plus metadata JSON: druh spectrum zapisuje své syntetizované vzorky IQ (in-phase/quadrature) (--export sigmf) a záznam čte přes blok [recording].
Text navigační zprávy LEO (ve stylu RINEX-4 a CSV (hodnoty oddělené čárkami)) čtení i zápis src/leo_navmsg/text.rs rozvržení navigační zprávy RINEX 4, upravené Vysílané efemeridy a hodiny druhu leo-navmsg pro družici na nízké oběžné dráze Země (LEO), exportované a znovu importované; zdokumentovaná úprava, nikoli registrovaný typ zprávy RINEX (MODELLED ve verifikační matici).

Referenční soustavy a čas#

Soustava, kterou engine vydává, je explicitní, nikoli implicitní. Redukce IAU (Mezinárodní astronomická unie) 2006/2000A založená na CIO (CIO: Celestial Intermediate Origin, nebeský střední počátek) (src/cio.rs) a redukce TEME (rovník okamžitý, rovnodennost střední) založená na rovnodennosti/GMST (GMST: greenwichský střední hvězdný čas) (src/frames.rs, src/nutation.rs) jsou ověřeny bit po bitu proti referenčním vektorům SOFA/ERFA (SOFA: Standards of Fundamental Astronomy; ERFA: Essential Routines for Fundamental Astronomy) (viz VALIDATION.md).

Rámec Realizace Poznámky
TEME nativní pro SGP4 Rovník okamžitý, rovnodennost střední — výstupní soustava SGP4/SDP4.
GCRS (geocentrická nebeská referenční soustava) / J2000 precese IAU 2006 + nutace IAU 2000A/2000B teme_to_gcrs (řetězec přes rovnodennost).
CIRS (nebeská střední referenční soustava) IAU 2006/2000A CIO (X, Y, s) gcrs_to_cirs_matrix (eraC2ixys).
ITRS (Mezinárodní pozemní referenční systém) / ECEF ERA (úhel rotace Země) + pohyb pólu IERS (CIO) nebo GMST + pohyb pólu (rovnodennost) gcrs_to_itrs_matrix (CIO, eraC2tcio) / teme_to_itrf (rovnodennost).
geodetické WGS-84 (WGS: World Geodetic System) přesná + iterativní inverze ecef_to_geodetic / geodetic_to_ecef.
Časová stupnice Použití
TT (pozemský čas) Vyhodnocení argumentu precese/nutace/CIO (jd_tt).
UT1 Úhel rotace Země / GMST (jd_ut1).
Dvoudílné JD (juliánské datum) src/jd2.rs Jd2 pro rozlišení epochy pod µs.

Mapování výstupních polí na standard (CCSDS 502,0)#

Co oba zapisovače orbitálních zpráv ukládají do jednotlivých polí CCSDS ODM (Orbit Data Messages, 502,0), čteno z běhu scenarios/orbit-sgp4-gps.toml s --export-oem a --export-omm:

Výstup Kshana Pole CCSDS ODM Hodnota / jednotka
Metadata segmentu OEM CENTER_NAME / REF_FRAME / TIME_SYSTEM EARTH / TEME / GPS — soustava, ve které propagátory integrují, a časová stupnice mřížky epoch, bez přejmenování
Epocha stavu OEM první sloupec každého datového řádku kalendářní čas ISO-8601 (ISO: Mezinárodní organizace pro normalizaci), časová stupnice GPS
Poloha a rychlost OEM datové sloupce X Y Z X_DOT Y_DOT Z_DOT km, km/s
Metadata OMM REF_FRAME / TIME_SYSTEM / MEAN_ELEMENT_THEORY TEME / UTC / SGP4
Epocha OMM EPOCH tvar ISO-8601 s dnem v roce (epocha TLE)
Střední elementy OMM MEAN_MOTION / ECCENTRICITY / INCLINATION / RA_OF_ASC_NODE / ARG_OF_PERICENTER / MEAN_ANOMALY / BSTAR obrátky/den, –, deg, 1/poloměr Země

Výsledek JSON (JavaScript Object Notation) druhu ephemeris nese týž stav v jednotkách SI (mezinárodní soustava jednotek) pro každý vzorek: jd_utc, teme_r_m / teme_v_m_s, gcrs_r_m / gcrs_v_m_s, ecef_r_m (m, m/s), plus lat_deg, lon_deg, alt_km.

Poctivý rozsah#

  • OEM, TDM, Space Packet, KIF, SigMF a text navigační zprávy LEO se čtou i zapisují; OMM, CZML, KML a efemeridy STK jsou zapisovače (čtečka OMM a serializace XML jsou navazující kroky); GeoJSON se zapisuje a čte zpět jako trasa; RINEX NAV, RINEX OBS, IONEX, produkty IERS EOP a TLE jsou čtečky; lunární export LunaNet/IOAG je zapisovač, jehož časová metadata se při zpětném čtení shodují. INTEROP.md uvádí, který export platí pro každý přibalený scénář.
  • Mapování polí CCSDS/IGS výše je dokumentace, nikoli tvrzení, že je některý standard splněn; formální posouzení vůči těmto standardům (a registrace v otevřeném katalogu ESA (Evropská kosmická agentura) ESSR (European Space Software Repository) / NASA (Národní úřad pro letectví a kosmonautiku)) se vede zvlášť a čeká na posouzení.
  • Nezávislá numerická křížová kontrola redukce soustavy pomocí SPICE/ANISE (SPICE: Spacecraft, Planet, Instrument, C-matrix, Events; ANISE: Attitude, Navigation, Instrument, Spacecraft, Ephemeris — čistě rustový nástroj pro planetární geometrii) je dodávána v samostatném crate xval/anise-frames/ vyloučeném z workspace: gcrs_to_itrs_matrix proti rotaci GCRF (geocentrická nebeská referenční soustava) → ITRF93 (Mezinárodní pozemní referenční soustava 1993) z ANISE přes osm epoch 2020–2023 souhlasí do ≤ 0,86 m na zemi a do ≤ 3,6 m na oběžné dráze GNSS (viz VALIDATION.md). Vyžaduje jádra SPICE, takže není výchozí branou kontinuální integrace (CI).