Standardid ja koostalitlus
Kshana kõneleb GNSS (ülemaailmne satelliitnavigatsioonisüsteem), lennudünaamika ja ajastuse kogukondade standardseid vahetusvorminguid, et see saaks töötada koos RTKLIB-i (avatud lähtekoodiga reaalajas kinemaatilise positsioneerimise teek), gLAB-i, Ginani, GMAT-i (General Mission Analysis Tool), Orekit-i ja IGS (International GNSS Service) analüüsikeskuste tööriistadega, mitte privaatsel saarel. See leht seostab vahetusvormingud, mida mootor parsib või väljastab, neid realiseeriva mooduli ja autoriteetse spetsifikatsiooniga.
See on piiratud vormingutega — asjadega, millel on lugemis-/kirjutussuund. Signaali- ja algoritmistandardid, mida mootor realiseerib, mitte ei parsi (IS-GPS-200 (IS: Interface Specification; GPS: Global Positioning System), IEEE (Institute of Electrical and Electronics Engineers) 1139, RTCA (varem Radio Technical Commission for Aeronautics) DO-229E, IGRF-14 (IGRF: International Geomagnetic Reference Field), ARAIM (täiustatud vastuvõtja autonoomne terviklikkuse seire) WG-C (WG: töörühm) etalon, CCSDS (Consultative Committee for Space Data Systems) 401/DSN (DSN: Deep Space Network)), on tõendatud rida-realt hoopis failis VERIFICATION-MATRIX.md.
Vormingud, mida mootor kõneleb#
| Standard | Suund | Moodul | Spetsifikatsioon / autoriteet | Märkused |
|---|---|---|---|---|
| CCSDS OEM (Orbit Ephemeris Message) | loeb ja kirjutab | src/oem.rs |
CCSDS 502.0-B Orbit Data Messages, KVN (võti-väärtus-notatsioon) kuju | Tabelina esitatud olekuvektori efemeriid, mida loevad GMAT, Orekit, STK (Systems Tool Kit). parse_oem loeb selle tagasi; kontrollitud sõna-sõnalt CCSDS 502.0-B-3 Figure G-11 Blue Book näite taastamisega (tests/ccsds_reference.rs). Valikuline 6×6 positsiooni/kiiruse kovariatsiooniplokk (COVARIANCE_START … COVARIANCE_STOP, 21-elemendiline alumise kolmnurga KVN serialiseerimine valikulise COV_REF_FRAME-ga) on nii kirjutatud (covariance_block_kvn) kui loetud (parse_covariance_block), edasi-tagasi sümmeetriline (src/oem.rs testid). |
| CCSDS OMM (Orbit Mean-Elements Message) | kirjutamine | src/omm.rs |
CCSDS 502.0-B-2, KVN kuju | SGP4/TLE (SGP4: Simplified General Perturbations 4; TLE: kaherealine elemendikomplekt) keskmiste elementide standardirajal avaldamine (keskmine liikumine, e, i, Ω, ω, M, BSTAR (orbiidilevitaja takistusliige)). CLI kaudu (CLI: käsurea liides) kättesaadav stsenaariumil orbit käskudega --export-omm <out.omm> või export_omm = true (üks OMM iga TLE-ga määratletud satelliidi kohta, selle tegeliku NORAD (North American Aerospace Defense Command) id, COSPAR (Committee on Space Research) tähise ja epohhiga; tests/sp3_export_roundtrip.rs). XML (Extensible Markup Language) kuju ja lugeja on järgmised sammud. |
| CCSDS TDM (Tracking Data Message) | loeb ja kirjutab | src/ccsds_tdm.rs |
CCSDS 503.0-B Tracking Data Message, KVN kuju | Kauguse / Doppleri / nurga jälgimiskirjed, mida DSN/ESTRACK (ESTRACK: European Space Tracking network) ülelend OD (orbiidi määramise) süsteemile esitab. Kontrollitud sõna-sõnalt CCSDS 503.0-B-2 Figure E-9 Blue Book näite taastamisega (tests/ccsds_reference.rs). |
| CCSDS Space Packet (133,0) | loeb ja kirjutab | src/space_packet.rs |
CCSDS 133.0-B-2 Space Packet Protocol | 6-oktetine TM/TC (TM: telemeetria; TC: telekäsk) esipäise kaadrimine, mida maapealsed süsteemid vahetavad. Kodeerija reprodutseerib sõltumatu spacepackets-py teegi avaldatud baidipõhised testvektorid (src/space_packet.rs testid). |
| SP3-c (SP3: Standard Product 3, täppisorbiidi vorming) / SP3-d (täppisefemeriid) | loeb ja kirjutab | src/sp3.rs |
IGS Standard Product 3 (c/d) | Maa suhtes fikseeritud (ECEF) asukoha + kellaaja ajarida. Edasi-tagasi teisendus kontrollitud täpsuseni < 0,5 m päris gps-ops hetktõmmisel (tests/sp3_export_roundtrip.rs). |
| RINEX (Receiver Independent Exchange Format) 3 (edastatud navigatsioon) | lugemine | src/rinex.rs |
RINEX 3.x NAV (IS-GPS-200, Galileo ICD (liidese juhtdokument), BeiDou ICD, GLONASS (Venemaa ülemaailmne satelliitnavigatsioonisüsteem) ICD) | Mitme GNSS-i NAV sisestus (GPS LNAV (pärandnavigatsioonisõnum), Galileo F/NAV, QZSS (Jaapani Quasi-Zenith Satellite System), BeiDou MEO/IGSO (MEO: keskmine Maa orbiit; IGSO: kaldus geosünkroonne orbiit), GLONASS olekuvektor); kasutatav esmaklassilise Propagator allikana. |
| TLE / 3LE (kahe-/kolmerealised elemendid) | lugemine | src/tle.rs |
NORAD / Celestrak, AIAA (American Institute of Aeronautics and Astronautics) 2006-6753 | Levitatud kontrollitud SGP4/SDP4 (SDP4: Simplified Deep-space Perturbations 4) tuumaga (4,12 mm versus 666 ametlikku AIAA vektorit). |
| RINEX 3.0x (vaatlus) | lugemine | src/rinex_obs.rs |
RINEX 3.0x OBS (4,00 peaks parsima, kunagi ei ole 4,00 failiga kasutatud) | RINEXi teine pool: vastuvõtja enda kood/kandja/Doppler/SNR (SNR: signaali ja müra suhe) kirjed (parse_obs). See on sisend, mida lahendaja pvt (üksikpunkti positsioneerimine) tarbib koos edastatud navigatsioonifailiga (tests/pvt_abmf.rs, päris IGS jaam ABMF). |
| IONEX (IONosphere map EXchange format; globaalsed TEC (täielik elektronsisaldus) kaardid) | lugemine | src/ionex.rs |
IONEX 1.x (IGS ionosfääriprodukt) | parse_ionex loeb IGS globaalseid täieliku elektronsisalduse ruudustikke — edastatud Klobucharu korrektsiooni mõõdetud alternatiivi — bilineaarse ruumilise ja ajalise interpolatsiooni ning kaldviivituseks teisendava kaldekaardistusega. |
IERS (International Earth Rotation and Reference Systems Service) finals2000A / Bulletin B (Maa orientatsioon) |
lugemine | src/eop.rs, src/frame_eop.rs |
IERS Conventions; IERS EOP (Maa orientatsiooniparameetrid) 14 C04 / finals2000A.all |
UT1 (Universal Time 1, Maa pöörlemise aeg)−UTC (koordineeritud ülemaailmne aeg) ja poolusliikumine ametlikust tootest, sealhulgas prognoositud read, nii et süsteemi taandamist saab käivitada reaalajas ja selle prognoosivea kasvu eelarvestada (tests/operational_eop_predictor_reference.rs). |
| KIF (Kshana Interchange Format) | loeb ja kirjutab | src/interchange.rs |
see hoidla — vt SCHEMA.md |
Neutraalne, versioonitud ümbrik, millesse iga artefakti saab pakkida: format / schema_version / kind / engine_version / payload, tarbijale selge pea- ja alamversiooni ühilduvusotsusega. Ei ole väline standard; dokumenteeritud siin, sest võõras tööriist peab seda ära tundma. |
| LunaNet / IOAG (Interagency Operations Advisory Group) Kuu vahetus | kirjutab (ajametaandmeid ka loeb) | src/lunar_interop.rs |
LunaNet koostalitlusvõime spetsifikatsioon / IOAG Kuu sidearhitektuur, CCSDS 502,0 peal | Kuu tugisüsteem, Kuu ajaskaala ja Kuu efemeriid väljastatuna LunaNet/IOAG-ga joondatud CCSDS kujudes (export_lunar_oem, export_kif_lunar, export_lunar_time_metadata), väljastatud OEM väljakontrolliga (tests/lunar_interoperability_export_reference.rs). |
| CZML (Cesium Language) | kirjutamine | src/interop/czml.rs |
CesiumJS CZML pakettide vorming | JSON (JavaScript Object Notation) voog ajamärgisega pakettidest CesiumJS gloobuse jaoks; liikuvad objektid kirjutatud süsteemis GCRS (INERTIAL). --export czml mis tahes liigil, mis paigutab objekte Maale. |
| KML (Keyhole Markup Language) | kirjutamine | src/interop/kml.rs |
OGC (Open Geospatial Consortium) KML 2,2 | Maa suhtes fikseeritud pikkus, laius ja kõrgus Google Earthi ja GIS (geoinfosüsteem) tööriistade jaoks. --export kml. |
| GeoJSON | kirjutab ja loeb (marsruut) | src/interop/geojson.rs |
IETF (Internet Engineering Task Force) RFC 7946 | Maa suhtes fikseeritud geomeetria veebikaartide ja GIS tööriistade jaoks (--export geojson); LineString loetakse tagasi sirge trajektoori sisendina liikidele, mis seda lendavad (--import-route <route.geojson>). |
STK efemeriid (.e, EphemerisTimePosVel) |
kirjutamine | src/interop/stk.rs |
Ansys STK efemeriidifaili vorming | Inertsiaalne (ICRF) asukoht ja kiirus STK jaoks ja tööriistadele, mis loevad selle efemeriidivormingut. --export stk. |
| SigMF (Signal Metadata Format) | loeb ja kirjutab | src/sigmf.rs |
SigMF spetsifikatsioon | Kompleksed baasribasalvestised pluss JSON metaandmed: liik spectrum kirjutab oma sünteesitud faasi-/kvadratuurkomponendi (IQ) valimid (--export sigmf) ja loeb salvestise läbi oma [recording] bloki. |
| LEO navigatsioonisõnumi tekst (RINEX-4-laadne ja CSV (komadega eraldatud väärtused)) | loeb ja kirjutab | src/leo_navmsg/text.rs |
RINEX 4 navigatsiooni paigutus, kohandatud | Liigi leo-navmsg edastatud efemeriid ja kell madala Maa orbiidi (LEO) satelliidile, eksporditud ja uuesti imporditud; dokumenteeritud kohandus, mitte registreeritud RINEX sõnumitüüp (MODELLED kontrollimaatriksis). |
Tugisüsteemid ja aeg#
Mootori väljastatav tugisüsteem on selgesõnaline, mitte kaudne. CIO-põhine (CIO: Celestial Intermediate Origin) IAU (International Astronomical Union) 2006/2000A taandus (src/cio.rs) ja pööripunkti/GMST (GMST: Greenwichi keskmine tähtaeg) TEME (tõeline ekvaator, keskmine pööripunkt) taandus (src/frames.rs, src/nutation.rs) on kontrollitud bitt-bitti SOFA/ERFA (SOFA: Standards of Fundamental Astronomy; ERFA: Essential Routines for Fundamental Astronomy) etalonvektorite vastu (vt VALIDATION.md).
| Kaader | Realisatsioon | Märkused |
|---|---|---|
| TEME | SGP4 natiivne | Tõeline ekvaator, keskmine pööripunkt — SGP4/SDP4 väljundsüsteem. |
| GCRS (Geocentric Celestial Reference System) / J2000 | IAU 2006 pretsessioon + IAU 2000A/2000B nutatsioon | teme_to_gcrs (pööripunkti ahel). |
| CIRS (Celestial Intermediate Reference System) | IAU 2006/2000A CIO (X, Y, s) | gcrs_to_cirs_matrix (eraC2ixys). |
| ITRS (International Terrestrial Reference System) / ECEF | ERA (Maa pöörlemisnurk) + IERS poolusliikumine (CIO) või GMST + poolusliikumine (pööripunkt) | gcrs_to_itrs_matrix (CIO, eraC2tcio) / teme_to_itrf (pööripunkt). |
| WGS-84 (WGS: World Geodetic System) geodeetiline | täpne + iteratiivne pöördteisendus | ecef_to_geodetic / geodetic_to_ecef. |
| Ajaskaala | Kasutus |
|---|---|
| TT (maine aeg) | Pretsessiooni/nutatsiooni/CIO argumendi hindamine (jd_tt). |
| UT1 | Maa pöörlemisnurk / GMST (jd_ut1). |
| Kaheosaline JD (Juliuse kuupäev) | src/jd2.rs Jd2 alla-µs epohhi lahutuse jaoks. |
Väljundvälja → standardi vastavus (CCSDS 502,0)#
Mida kaks orbiidisõnumi kirjutajat paigutavad igasse CCSDS ODM (Orbit Data Messages, 502,0) välja, loetuna käivituse scenarios/orbit-sgp4-gps.toml väljadega --export-oem ja --export-omm:
| Kshana väljund | CCSDS ODM väli | Väärtus / ühik |
|---|---|---|
| OEM lõigu metaandmed | CENTER_NAME / REF_FRAME / TIME_SYSTEM |
EARTH / TEME / GPS — tugisüsteem, milles levitajad integreerivad, ja epohhiruudustiku ajaskaala, mitte ümbersildistatud |
| OEM oleku epohh | iga andmerea esimene veerg | ISO-8601 (ISO: International Organization for Standardization) kalendriaeg, GPS ajaskaala |
| OEM asukoht, kiirus | X Y Z X_DOT Y_DOT Z_DOT andmeveerud |
km, km/s |
| OMM metaandmed | REF_FRAME / TIME_SYSTEM / MEAN_ELEMENT_THEORY |
TEME / UTC / SGP4 |
| OMM epohh | EPOCH |
ISO-8601 aasta päeva kuju (TLE epohh) |
| OMM keskmised elemendid | MEAN_MOTION / ECCENTRICITY / INCLINATION / RA_OF_ASC_NODE / ARG_OF_PERICENTER / MEAN_ANOMALY / BSTAR |
tiiru/päevas, –, kraadi, 1/Maa raadiust |
Liigi ephemeris tulemuse JSON (JavaScript Object Notation) kannab sama olekut SI (rahvusvaheline mõõtühikute süsteem) ühikutes valimi kohta: jd_utc, teme_r_m / teme_v_m_s, gcrs_r_m / gcrs_v_m_s, ecef_r_m (m, m/s), pluss lat_deg, lon_deg, alt_km.
Aus ulatus#
- OEM, TDM, Space Packet, KIF, SigMF ja LEO navigatsioonisõnumi tekst loetakse ja kirjutatakse; OMM, CZML, KML ja STK efemeriid on kirjutajad (OMM lugeja ja XML serialiseerimine on järgmised sammud); GeoJSON kirjutatakse ja loetakse tagasi marsruudina; RINEX NAV, RINEX OBS, IONEX, IERS EOP tooted ja TLE on lugejad; LunaNet/IOAG Kuu eksport on kirjutaja, mille ajametaandmed liiguvad edasi-tagasi.
INTEROP.mdloetleb, milline eksport kehtib iga kaasasoleva stsenaariumi kohta. - Ülaltoodud CCSDS/IGS väljade vastavus on dokumentatsioon, mitte väide, et ühtki standardit järgitakse; ametlik hindamine nende standardite suhtes (ja registreerimine ESA (European Space Agency) ESSR (European Space Software Repository) / NASA (National Aeronautics and Space Administration) avatud kataloogis) on eraldi jälgitav ja ootab ülevaatust.
- Sõltumatu SPICE/ANISE (SPICE: Spacecraft, Planet, Instrument, C-matrix, Events; ANISE: Attitude, Navigation, Instrument, Spacecraft, Ephemeris — puhas-Rusti planeedigeomeetria tööriistakomplekt) arvuline ristkontroll tugisüsteemi taandusele on tarnitud eraldiseisvas, töökoha alt välja jäetud crate'is
xval/anise-frames/:gcrs_to_itrs_matrixANISE GCRF (Geocentric Celestial Reference Frame) → ITRF93 (International Terrestrial Reference Frame 1993) pöörde vastu kaheksal epohhil 2020–2023 langeb kokku ≤ 0,86 m täpsusega maapinnal ja ≤ 3,6 m täpsusega GNSS orbiidil (vtVALIDATION.md). See vajab SPICE tuumasid, seega ei ole see vaikimisi pideva integreerimise (CI) värav.