Konekäännös, jota äidinkielinen puhuja ei ole tarkistanut. Viitteenä on englanninkielinen versio.

Validointi ja todisteetMuokkaa GitHubissaLähde: docs/STANDARDS.md

Standardit ja yhteentoimivuus

Kshana puhuu GNSS-, lentodynamiikka- ja ajoitusyhteisöjen standardeja vaihtoformaatteja, jotta se voi toimia RTKLIBin (avoimen lähdekoodin reaaliaikainen kinemaattinen paikannuskirjasto), gLABin, Ginanin, GMATin (General Mission Analysis Tool), Orekitin ja IGS:n (International GNSS Service) analyysikeskusten työkalujen rinnalla eikä yksityisellä saarella. Tämä sivu yhdistää moottorin jäsentämät tai tuottamat vaihtoformaatit kutakin toteuttavaan moduuliin ja auktoriteettiseen määrittelyyn.

Se on rajattu formaatteihin — asioihin, joilla on luku-/kirjoitussuunta. Signaali- ja algoritmistandardit, jotka moottori toteuttaa eikä jäsennä (IS-GPS-200 (IS: Interface Specification; GPS: Global Positioning System), IEEE (Institute of Electrical and Electronics Engineers) 1139, RTCA (aiemmin Radio Technical Commission for Aeronautics) DO-229E, IGRF-14 (IGRF: International Geomagnetic Reference Field), ARAIM-viite WG-C (advanced receiver autonomous integrity monitoring; WG: Working Group), CCSDS (Consultative Committee for Space Data Systems) 401/DSN (DSN: Deep Space Network)) todistetaan rivi riviltä tiedostossa VERIFICATION-MATRIX.md.

Formaatit, joita moottori puhuu#

Standardi Suunta Moduuli Määrittely / auktoriteetti Huomautukset
CCSDS OEM (Orbit Ephemeris Message) lukee ja kirjoittaa src/oem.rs CCSDS 502.0-B Orbit Data Messages, KVN-muoto (avainsana–arvo-merkintä) Taulukoitu tilavektoriefemeridi, jota GMAT, Orekit ja STK (Systems Tool Kit) ottavat vastaan. parse_oem lukee sen takaisin; validoitu palauttamalla sanatarkka CCSDS 502.0-B-3 -kuvan G-11 Blue Book -esimerkki (tests/ccsds_reference.rs). Valinnainen 6×6 paikka/nopeus-kovarianssilohko (COVARIANCE_START … COVARIANCE_STOP, 21 alkion alakolmio-KVN-serialisointi valinnaisella COV_REF_FRAME) sekä kirjoitetaan (covariance_block_kvn) että luetaan (parse_covariance_block), edestakaisin symmetrinen (testit: src/oem.rs).
CCSDS OMM (Orbit Mean-Elements Message) kirjoitus src/omm.rs CCSDS 502.0-B-2, KVN-muoto SGP4/TLE:n (SGP4: Simplified General Perturbations 4; TLE: kaksirivinen elementtijoukko) keskielementtien (keskiliike, e, i, Ω, ω, M, BSTAR (kiertoradan propagaattorin vastustermi)) standardiraidan julkaisu. Komentoriviltä (CLI) käytettävissä tyypin orbit skenaariossa valitsimella --export-omm <out.omm> tai export_omm = true (yksi OMM TLE:llä määriteltyä satelliittia kohti, sen todellisella NORAD-tunnisteella (North American Aerospace Defense Command), COSPAR-nimikkeellä (Committee on Space Research) ja epookilla; tests/sp3_export_roundtrip.rs). XML-muoto (Extensible Markup Language) ja lukija ovat jatkokehitystä.
CCSDS TDM (Tracking Data Message) lukee ja kirjoittaa src/ccsds_tdm.rs CCSDS 503.0-B Tracking Data Message, KVN-muoto Etäisyys-, Doppler- ja kulmaseurantatietueet, jotka DSN/ESTRACK (ESTRACK: European Space Tracking network) -ylilento toimittaa OD-järjestelmälle (radanmääritys). Validoitu palauttamalla sanatarkka CCSDS 503.0-B-2 -kuvan E-9 Blue Book -esimerkki (tests/ccsds_reference.rs).
CCSDS Space Packet (133,0) lukee ja kirjoittaa src/space_packet.rs CCSDS 133.0-B-2 Space Packet Protocol Maajärjestelmien vaihtama 6 oktetin TM/TC (TM: telemetria; TC: kaukokomento) -pääotsikkokehystys. Kooderi toistaa riippumattoman kirjaston spacepackets-py julkaistut tavutason testivektorit (testit: src/space_packet.rs).
SP3-c (SP3: Standard Product 3, tarkka ratamuoto) / SP3-d (tarkka efemeridi) lukee ja kirjoittaa src/sp3.rs IGS Standard Product 3 (c/d) Maahan sidottu (ECEF) paikka- ja kelloaikasarja. Edestakainen ajo validoitu tarkkuuteen < 0,5 m todellisella tilannekuvalla gps-ops (tests/sp3_export_roundtrip.rs).
RINEX (Receiver Independent Exchange Format) 3 (lähetetty navigointi) luku src/rinex.rs RINEX 3.x NAV (IS-GPS-200, Galileo ICD (rajapintamäärittely), BeiDou ICD, GLONASS (Venäjän maailmanlaajuinen satelliittinavigointijärjestelmä) ICD) Moni-GNSS-NAV-sisäänluku (GPS LNAV (legacy navigation message), Galileo F/NAV, QZSS (Japanin Quasi-Zenith Satellite System), BeiDou MEO/IGSO (MEO: keskikorkea Maan kiertorata; IGSO: kallistunut geosynkroninen rata), GLONASS-tilavektori); käytettävissä ensiluokkaisena lähteenä tyyppiä Propagator.
TLE / 3LE (kaksi-/kolmirivistä elementtiä) luku src/tle.rs NORAD / Celestrak, AIAA (American Institute of Aeronautics and Astronautics) 2006-6753 Propagoidaan validoidulla SGP4/SDP4-ytimellä (SDP4: Simplified Deep-space Perturbations 4) (4,12 mm vasten 666 virallista AIAA-vektoria).
RINEX 3.0x (havainto) luku src/rinex_obs.rs RINEX 3.0x OBS (4,00 odotetaan jäsentyvän, ei koskaan kokeiltu tiedostolla, jonka versio on 4,00) RINEXin toinen puoli: vastaanottimen oma koodi-/kantoaalto-/Doppler-/SNR-tietue (SNR: signaali–kohinasuhde) (parse_obs). Tämä on syöte, jota yhden pisteen paikannusratkaisija pvt kuluttaa lähetetyn navigointitiedoston rinnalla (tests/pvt_abmf.rs, todellinen IGS-asema ABMF).
IONEX (IONosphere map EXchange format; globaalit TEC-kartat (total electron content, ionosfäärin kokonaiselektronisisältö)) luku src/ionex.rs IONEX 1.x (IGS:n ionosfääristuote) parse_ionex lukee IGS:n globaalit kokonaiselektronisisältöruudukot — mitatun vaihtoehdon lähetetylle Klobuchar-korjaukselle — bilineaarisella spatiaalisella ja ajallisella interpoloinnilla ja viistoviiveen vinouskartoituksella.
IERS (International Earth Rotation and Reference Systems Service) finals2000A / Bulletin B (Maan orientaatio) luku src/eop.rs, src/frame_eop.rs IERS Conventions; IERS EOP (Earth orientation parameters, Maan orientaatioparametrit) 14 C04 / finals2000A.all UT1 (Universal Time 1, Maan pyörimisaika)−UTC (Coordinated Universal Time) ja napaliike virallisesta tuotteesta, mukaan lukien ennustetut rivit, jotta koordinaatistoreduktio voidaan ajaa reaaliajassa ja sen ennustevirheen kasvu budjetoida (tests/operational_eop_predictor_reference.rs).
KIF (Kshana Interchange Format) lukee ja kirjoittaa src/interchange.rs tämä repositorio — katso SCHEMA.md Neutraali, versioitu kirjekuori, johon jokaisen artefaktin voi kääriä: format / schema_version / kind / engine_version / payload, ja kuluttajalle eksplisiittinen suuri–pieni-versioyhteensopivuustuomio. Ei ulkoinen standardi; dokumentoitu tässä, koska vieraan työkalun on tunnistettava se.
LunaNet / IOAG (Interagency Operations Advisory Group) -kuutiedonvaihto kirjoittaa (aikametatiedot myös luetaan) src/lunar_interop.rs LunaNetin yhteentoimivuusmäärittely / IOAG:n kuuviestintäarkkitehtuuri, CCSDS 502,0 pohjalla Kuun koordinaatisto, kuun aika-asteikko ja kuun efemeridi tuotettuna LunaNet/IOAG-linjatuissa CCSDS-muodoissa (export_lunar_oem, export_kif_lunar, export_lunar_time_metadata), tuotetun OEM:n kenttätarkistuksella (tests/lunar_interoperability_export_reference.rs).
CZML (Cesium Language) kirjoitus src/interop/czml.rs CesiumJS CZML -pakettiformaatti JSON (JavaScript Object Notation) -virta aikaleimatuista paketeista CesiumJS-karttapallolle; liikkuvat kohteet kirjoitettu GCRS:ssä (INERTIAL). --export czml millä tahansa tyypillä, joka sijoittaa kohteita Maahan.
KML (Keyhole Markup Language) kirjoitus src/interop/kml.rs OGC (Open Geospatial Consortium) KML 2,2 Maahan sidottu pituus-, leveys- ja korkeuskoordinaatti Google Earthille ja GIS-työkaluille (paikkatietojärjestelmä). --export kml.
GeoJSON kirjoittaa ja lukee (reitti) src/interop/geojson.rs IETF (Internet Engineering Task Force) RFC 7946 Maahan sidottu geometria verkkokartoille ja GIS-työkaluille (--export geojson); LineString luetaan takaisin sellaisten tyyppien suoran radan syötteenä, jotka lentävät sellaisen (--import-route <route.geojson>).
STK-efemeridi (.e, EphemerisTimePosVel) kirjoitus src/interop/stk.rs Ansys STK -efemeriditiedostoformaatti Inertiaalinen (ICRF) paikka ja nopeus STK:lle ja työkaluille, jotka lukevat sen efemeridiformaattia. --export stk.
SigMF (Signal Metadata Format) lukee ja kirjoittaa src/sigmf.rs SigMF-määrittely Kompleksiset kantataajuustallenteet plus JSON-metatiedot: tyyppi spectrum kirjoittaa syntetisoidut vaihe/kvadratuuri-näytteensä (IQ) (--export sigmf) ja lukee tallenteen lohkonsa [recording] kautta.
LEO-navigointisanomateksti (RINEX-4-tyylinen ja CSV (pilkuin erotetut arvot)) lukee ja kirjoittaa src/leo_navmsg/text.rs RINEX 4 -navigointiasettelu, mukautettu Tyypin leo-navmsg lähetetty efemeridi ja kello matalan Maan kiertoradan (LEO) satelliitille, viety ja tuotu takaisin; dokumentoitu mukautus, ei rekisteröity RINEX-sanomatyyppi (MODELLED varmennusmatriisissa).

Koordinaatistot ja aika#

Moottorin tuottama koordinaatisto on eksplisiittinen, ei implisiittinen. CIO-pohjainen (CIO: Celestial Intermediate Origin) IAU:n (International Astronomical Union) 2006/2000A-reduktio (src/cio.rs) ja päiväntasaaja-/GMST (GMST: Greenwichin keskimääräinen tähtiaika) TEME (true equator, mean equinox) -reduktio (src/frames.rs, src/nutation.rs) on validoitu bitti bitiltä SOFA/ERFA (SOFA: Standards of Fundamental Astronomy; ERFA: Essential Routines for Fundamental Astronomy) -vertailuvektoreita vasten (katso VALIDATION.md).

Kehys Toteutus Huomautukset
TEME SGP4 natiivi True equator, mean equinox — SGP4/SDP4:n tulostekoordinaatisto.
GCRS (Geocentric Celestial Reference System) / J2000 IAU:n 2006 prekessio + IAU 2000A/2000B -nutaatio teme_to_gcrs (päiväntasausketju).
CIRS (Celestial Intermediate Reference System) IAU 2006/2000A CIO (X, Y, s) gcrs_to_cirs_matrix (eraC2ixys).
ITRS (International Terrestrial Reference System) / ECEF ERA (Maan pyörimiskulma) + IERS:n napaliike (CIO) tai GMST + napaliike (päiväntasaus) gcrs_to_itrs_matrix (CIO, eraC2tcio) / teme_to_itrf (päiväntasaus).
WGS-84 (WGS: World Geodetic System) geodeettinen tarkka + iteratiivinen käänteisratkaisu ecef_to_geodetic / geodetic_to_ecef.
Aika-asteikko Käyttö
TT (Terrestrial Time) Prekession/nutaation/CIO:n argumentin evaluointi (jd_tt).
UT1 Maan pyörimiskulma / GMST (jd_ut1).
Kaksiosainen JD (juliaaninen päivämäärä) src/jd2.rs Jd2 mikrosekunnin alittavalle epookkitarkkuudelle.

Tulostekenttä → standardi -kartoitus (CCSDS 502,0)#

Mitä kaksi ratasanomakirjoitinta laittaa kuhunkin CCSDS ODM (Orbit Data Messages, 502,0) -kenttään, luettuna ajosta scenarios/orbit-sgp4-gps.toml valitsimilla --export-oem ja --export-omm:

Kshanan tuloste CCSDS ODM -kenttä Arvo / yksikkö
OEM-segmentin metatiedot CENTER_NAME / REF_FRAME / TIME_SYSTEM EARTH / TEME / GPS — koordinaatisto, jossa propagaattorit integroivat, ja epookkiruudukon aika-asteikko, ei uudelleennimetty
OEM-tilan epookki kunkin datarivin ensimmäinen sarake ISO-8601 (ISO: International Organization for Standardization) -kalenteriaika, GPS-aika-asteikko
OEM:n paikka, nopeus datasarakkeet X Y Z X_DOT Y_DOT Z_DOT km, km/s
OMM-metatiedot REF_FRAME / TIME_SYSTEM / MEAN_ELEMENT_THEORY TEME / UTC / SGP4
OMM-epookki EPOCH ISO-8601 vuodenpäivämuoto (TLE-epookki)
OMM-keskielementit MEAN_MOTION / ECCENTRICITY / INCLINATION / RA_OF_ASC_NODE / ARG_OF_PERICENTER / MEAN_ANOMALY / BSTAR kierrosta/vrk, –, astetta, 1/Maan sädettä

Tyypin ephemeris tulos-JSON (JavaScript Object Notation) sisältää saman tilan SI-yksiköissä (International System of Units) näytettä kohti: jd_utc, teme_r_m / teme_v_m_s, gcrs_r_m / gcrs_v_m_s, ecef_r_m (m, m/s), sekä lat_deg, lon_deg, alt_km.

Rehellinen rajaus#

  • OEM, TDM, Space Packet, KIF, SigMF ja LEO-navigointisanomateksti ovat luku ja kirjoitus; OMM, CZML, KML ja STK-efemeridi ovat kirjoittimia (OMM-lukija ja XML-serialisointi ovat jatkokehitystä); GeoJSON kirjoitetaan ja luetaan takaisin reittinä; RINEX NAV, RINEX OBS, IONEX, IERS EOP -tuotteet ja TLE ovat lukijoita; LunaNet/IOAG-kuuvienti on kirjoitin, jonka aikametatiedot kulkevat edestakaisin. INTEROP.md luettelee, mikä vienti koskee kutakin mukana toimitettua skenaariota.
  • Yllä oleva CCSDS/IGS-kenttäkartoitus on dokumentaatiota, ei väite siitä, että jokin standardi täyttyy; muodollinen arviointi näitä standardeja vasten (ja rekisteröinti ESA:n (European Space Agency) ESSR:n (European Space Software Repository) / NASA:n (National Aeronautics and Space Administration) avoimeen katalogiin) seurataan erikseen ja on odottamassa tarkastelua.
  • Riippumaton SPICE/ANISE (SPICE: Spacecraft, Planet, Instrument, C-matrix, Events; ANISE: Attitude, Navigation, Instrument, Spacecraft, Ephemeris — puhdas Rust-planeettageometriatyökalu) -numeerinen ristiintarkistus koordinaatistoreduktiolle toimitetaan erillisessä, työtilasta pois jätetyssä crate-paketissa xval/anise-frames/: gcrs_to_itrs_matrix ANISEn GCRF (Geocentric Celestial Reference Frame) → ITRF93 (International Terrestrial Reference Frame 1993) -rotaatiota vasten kahdeksalla epookilla 2020–2023 täsmää tasolle ≤ 0,86 m maassa ja ≤ 3,6 m GNSS-radalla (katso VALIDATION.md). Se tarvitsee SPICE-ytimiä, joten se ei ole oletusarvoinen jatkuvan integraation (CI) portti.