Konekäännös, jota äidinkielinen puhuja ei ole tarkistanut. Viitteenä on englanninkielinen versio.
Todisteet
Jokainen ominaisuus kantaa omia todisteitaan.
401 ominaisuutta, kukin arvioitu. 176 validoitu riippumattomia ulkoisia oraakkeleita vastaan. 221 rehellisesti merkitty mallinnetuiksi. 4 kumppanin omistamaa. Mitään ei pyöristetä ylöspäin.
Varmennusmatriisi v0.40.0Repositoriosta
176Validoitu
221Mallinnettu
4Partner-owned
401ominaisuutta
Vie osoitin solun päälle tai kohdista siihen nähdäksesi sen ominaisuuden ja oraakkelin, joka sen arvioi.
Validoitu: riippumaton ulkoinen oraakkeli on samaa mieltäMallinnettuPartner-owned
Moottori v0.40.0 · web/data/verification-matrix.json, generoitu tiedostosta src/verification.rs · 401 riviä · ei skenaariota eikä siemenlukua: moottorin oma kirjanpito (ledger)Lue kirjanpito (ledger)
Ilmainen ydinKirjanpito (ledger), tulokset, toistettavuusleima ja niiden takana olevat testit ovat kaikki avoimessa moottorissa.
ProPaketoi todisteet auditointikelpoiseksi, toistettavaksi todistepaketiksi arviointilautakunnalle. Katso alla
Räätälöity tutkimusVastaa omaan kysymykseesi samoilla merkinnöillä, ei sertifiointi. Katso alla
01Validoidut tulokset · jokainen verrattu arvo
Tarkistettu jonkun toisen vastausta vasten.
Jokainen laatta piirtää jokaisen arvon, jonka moottori vertasi riippumattomaan vertailuun: julkaistut vektorit, erillinen lentodynamiikkakirjasto, tarkat efemeridit, tilastokirjasto, standardijulkaisu ja mitattu kellotallenne, joka pidettiin erillään sovituksesta. Vie osoitin merkin päälle tai kohdista siihen nähdäksesi sen arvon.
Radat · analyyttisetValidoitu
666/666
SGP4 (Simplified General Perturbations 4) -radan propagointi
Jokainen AIAA:n (American Institute of Aeronautics and Astronautics) vertailuvektori toistettu, syvän avaruuden SDP4-tapaukset (Simplified Deep-space Perturbations 4) mukaan lukien. Pahin tapaus 4.12 mm.
Yksi neliö verrattua vektoria kohti, väritetty sen paikkavirheen mukaan.
Moottori v0.40.0, build 3395218 · tests/numerical_cowell_propagator_reference.rs · deterministinen, ei siemenlukuaEi Kshana Studio -näkymää: tämä vertailu ajetaan moottoritestinä.
Radat · millimetreistä metreihinValidoitu
0.61m Galileo/0.10m Swarm-A
Jokainen ratajäännös samalla asteikolla
Propagaattoritarkistuksista ESA:n (European Space Agency) tarkkoihin efemerideihin tehtyihin sovituksiin. Kynnyksen yläpuolella oleva Kuun kiertäjä näytetään myös.
Jokainen jäännös logaritmisella asteikolla millimetristä kahteenkymmeneen metriin.
oraakkeli · ESA:n tarkat efemeridit, Kuun kiertäjän rekonstruoitu rata, Orekit 12,2, AIAA-vektoritMiten se tarkistettiin
Moottori v0.40.0 · docs/AGENCY-ORBIT-VALIDATION.md jäännöstaulukot, kaksi propagaattoritarkistusta laskettu uudelleen versiolla 3395218 · deterministinen, ei siemenlukuaEi Kshana Studio -näkymää: tarkka radanmääritys ajetaan moottoritesteinä.
Kellot · vakausValidoitu
12/ 12 julkaistua arvoa
Allanin poikkeama
Toistaa NIST:n (National Institute of Standards and Technology) Special Publication (SP) 1065 taulukon 31 vertailuarvot sen omalla 1000 pisteen datajoukolla.
Neljä poikkeamaa keskiarvoistusajan funktiona, julkaistut arvot renkaina.
Validoitu tarkoittaa, että riippumaton ulkoinen lähde on samaa mieltä: julkaistut vertailuvektorit, erillinen työkalu tai mitattu data. Kaikki muu sanoo mallinnettu. Valitse merkintä nähdäksesi sen solut korostettuina.
Arvioidut ominaisuudet
176/ 401 validoitu
Vie osoitin solun päälle
Luvut ovat tarkkoja, ja ne tulevat moottorin varmennusmatriisista. Solut noudattavat kirjanpidon rivijärjestystä.
Kolme sanaa, joita käytetään tiukasti
Kshana-tulostemoottorin ajo
Riippumaton oraakkelijulkaistu vertailu
Validoitu
Vain riippumattomalla ulkoisella oraakkelilla: julkaistut vertailuvektorit, erillinen toteutus tai sovituksesta pois jätetty mitattu data. Kirjanpito nimeää oraakkelin ja testin, ja matriisin invarianttitestit valvovat sääntöä.
Mallinnettu
Julkaistu malli tai dokumentoitu mallinnusvalinta, sisäisesti testattu, ilman vielä riippumatonta ulkoista oraakkelia. Sanotaan ääneen, ei pyöristetä ylöspäin.
Partner-owned
Avaruusaluksen alustatekniikka, navigointikuorma ja antennilaitteisto, kvanttikuorman laitteisto sekä lentolaitteiston tuotevarmistus. Kshana ei väitä kattavansa mitään niistä; kumppani omistaa ne.
Pro-versiolla:tehtävädossier tarkistaa jokaisen vaatimuksen todellisia ajoja vasten ja säilyttää nämä merkinnät varmennusmatriisissaan: vaatimus, joka on täytetty perusteella MODELLED tai PARTNER, merkitään. Katso todellinen dossier
03Validoinnin kirjanpito (ledger)
Kaikki 401 riviä, yksi rivi kullekin.
Jokainen rivi nimeää vaatimuksensa, tilansa ja sen toteuttavan moduulin. Avaa rivi nähdäksesi sen oraakkelin ja testit tai valitse toimiala rajataksesi.
Toimialoittain: palkin pituus on rivien määrä, väri on tila. Valitse yksi suodattaaksesi.
allan::lag1_noise_id: Rileyn ja Greenhallin (2004) lag-1-autokorrelaatioon perustuva kohinan tunnistin (desimoitu vaihe neliöllinen komponentti poistettuna tai ryhmäkeskiarvoistettu taajuus suora poistettuna; toistuvat ensimmäiset erotukset kunnes delta = r1/(1+r1) < 0,25 tai d = dmax), joka palauttaa potenssilain eksponentin alfa (+2 valkoinen PM … -2 satunnaiskävely-FM) sekä kokonaislukuna että pyöristämättä millä tahansa keskiarvoistustekijällä; se asettaa mitatun kellokirjaston laitekorttien kohinatyypin vapausasteet
Oraakkeli
allantools 2024,6 autocorr_noise_id (A. Wallin ja avustajat, LGPL-3.0-or-later, ajettu erillisenä ohjelmana fikstuurigeneraattorista): julkaistun Riley–Greenhall-algoritmin riippumaton toteutus, yksikäsitteisesti määritelty suure annetuilla konventioilla. Validoi tunnistimen, ei minkään todellisen kellon kohinasisältöä
Testit
tests/clock_library_lag1_noise_id_allantools.rs (140 tapausta: kymmenen Kasdinin potenssilakitallennetta, b = 0 … -4, vaihe- ja taajuusdatana, af = 1 … 64; alpha_int ja d identtiset, huonoin |d alpha| 9.6e-13 ja |d rho| 4.8e-13…
osnma + kshana osnma verify: avoin, puhtaasti Rust-kielellä tehty vastaanottimen puolen todentaja Galileo OSNMA:lle (SIS ICD Issue 1,1, Receiver Guidelines Issue 1,3) I/NAV-sivuista tai u-bloxin UBX-RXM-SFRBX-virrasta: Merkle-puun julkiset avaimet (DSM-PKR), DSM-KROOTin ECDSA P-256/P-521 -allekirjoitus, TESLA-avainketjun todennus (SHA-256 tai SHA3-256), MACSEQ:n ja tunnisteiden todennus (HMAC-SHA-256 tai CMAC-AES) ADKD-arvoille 0, 4 ja 12 ristiintodennuksella, ketjun pää/mitätöinti/uusiminen, julkisen avaimen uusiminen ja mitätöinti sekä hälytysviesti; satelliittikohtainen tila Authenticated/Failed/Unavailable ja syy jokaiselle virheelle tai viiveelle. Ohjeellinen: ei tyyppihyväksytty navigointilaite eikä navigoinnin eheyspalvelu; mitään harhautuksenestosuorituskykyä ei väitetä
Oraakkeli
Euroopan GNSS-palvelukeskuksen Receiver Guidelinesin liitteenä julkaisemat viralliset Galileo OSNMA -testivektorit (Test_vectors.zip, sha256 ef9b9afc6ef9e1c57393415cf2a1dc80c4035e7c06123907ea0bb97dd3ccf370): 18 joukkoa 18:sta, 186 382 tunnistetta todennettu, 0 epäonnistui, ajettu offline 2026-10-10 (todistetiedosto kshana-pro docs/evidence). Rajaus: vektorit validoivat kryptografisen todennuksen (Merkle, KROOT/ECDSA, TESLA-ketju, MACK-tunnisteet, ADKD 0/4/12) ja sen tulokset julkaistuissa skenaarioissa; ne käyttävät vain HMAC-SHA-256:ta, SHA-256-ketjua, 128-bittisiä avaimia, 40-bittisiä tunnisteita ja hakumerkintöjä 33 ja 34, joten CMAC-AES, SHA3-256-ketjut ja muut parametrit katetaan vain julkaistuilla primitiivien tunnettujen vastausten testeillä ja synteettisillä testeillä. Luotetun ajan, datan sidonnan, vanhenemisen ja otsakevahvistuksen koventaminen testataan synteettisillä hyökkäystesteillä, ei ulkoisella oraakkelilla. Ei tarkistettu: varmenteiden mitätöintilistat, live-signaalit tai live-vastaanotin (UBX-sanarakenne tarkistetaan vain synteettisillä kehyksillä), SHA3-256 Merkle-puut, tuoreus ilman riippumatonta aikaa. Ei EU:n palvelu
tests/phasedat_reference.rs (Stable32 PHASE.DAT, 139 averaging factors, OADEV/MDEV/TDEV to 1e-3; data-gated via scripts/fetch_phasedat.sh)
ValidoituLaajennetun alueen taajuusvakaus (Theo1 / TOTDEV)allan
Ominaisuus
Theo1 ja kokonaispoikkeama (TOTVAR): laajennetun alueen pitkän tau:n vakausestimaattorit, jotka yltävät noin 75 %:iin tallenteesta, kun Allanin poikkeama menettää tehonsa noin 50 %:n kohdalla; niiden päälle rakennettu harhapoistettu ThêoH-hybridi (allan::theoh_curve) pysyy MODELLED-tasolla
MTIE(τ): suurin huipusta huippuun -aikavirheen heilahdus minkä tahansa τ = m·tau0 -mittaisen liukuvan ikkunan yli; ITU-T G.810/G.823/G.8261 wander-tilasto, jota vasten synkronointiverkkojen rajat (MTIE-maskit) on kirjoitettu. Ääriarvosuure (max/min), joka eroaa RMS-pohjaisesta Allan-perheestä
Oraakkeli
allantools 2024,06, riippumaton kolmannen osapuolen taajuusvakauskirjasto: mtie() hermeettisellä NIST SP 1065 §12,4 LCG-vaihesarjalla; MTIE on puhdas max/min-tilasto, joten estimaattorin tulos on bittitarkasti sama kuin allantoolsin identtisesti rakennetulla vaihetaulukolla (arkistoidut 15 merkitsevän numeron vertailuvakiot ovat 1 ULP:n sisällä). Uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mtie/generate_mtie_reference.py
Testit
tests/mtie_reference.rs (MTIE hermeettisellä NIST SP 1065 §12,4 1000-pisteisellä LCG-vaihesarjalla, 9 keskiarvoistuskerrointa m=1..256 vs allantools 2024,06 mtie tarkkuudella <1e-9, havaittu ≤4e-15); allan::tests (käsin johdettu huipusta huippuun…
ValidoituModifioitu Allan / aikapoikkeama (MDEV / TDEV)allan (modified_adev,time_deviation)
Ominaisuus
MDEV(τ): limittäinen modifioitu Allanin poikkeama (toisen differenssin liukuvan ikkunan estimaattori, joka erottaa valkoisen vaihekohinan flicker-vaihekohinasta) ja TDEV(τ) = τ/√3·MDEV(τ), ITU-T G.811/G.812/G.823 -aikatason wander-tilasto, jota vasten synkronointimaskit on kirjoitettu
Oraakkeli
allantools 2024,06, riippumaton kolmannen osapuolen taajuusvakauskirjasto: mdev() ja tdev() hermeettisellä NIST SP 1065 §12,4 LCG-vaihesarjalla (sama sarja kuin Theo1/TOTDEV/MTIE-riveillä), laskien samat yksikäsitteisesti määritellyt estimaattorit; vastaavuus < 1e-9 suhteellisena. Uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mdev_tdev/generate_mdev_tdev_reference.py. (Datarajattu phasedat_reference.rs tarkistaa nämä myös Stable32:ta vasten tarkkuudella 1e-3; tämä on tiukka, aina päällä oleva hermeettinen ristiintarkistus)
Potenssilain (valkoinen FM + punaisen kohinan lattia) NNLS-palautus julkaistusta mitatusta ⁸⁸Sr-optisen kellosiirtymän Allanin poikkeamasta: toistaa σ_y(τ):n ja pääotsikon 4.7e-16/√τ lyhyen τ:n skaalauksen aidolla mitatulla pitkän τ:n lattialla, eikä sillä synteettisellä optisen luokan lattialla, jonka holdover.rs muuten olettaa
Oraakkeli
Norcia, Young, Eckner, Oelker, Ye, Kaufman, Science 366:93 (2019), kuva 4 mitattu ADEV; käyrä otettu sellaisenaan Zenodosta 10.5281/zenodo.3382347 (CC-BY-4.0). Rajattu julkaistun mitatun vakauskäyrän toistamiseen; kellon luokan laitearvot holdoverille kynnykseen asti pysyvät MODELLED-tasolla
ARAIM-moniolettamusten ratkaisuerotus ARAIM Airborne Design Documentin (ADD) v4.2 mukaan (araim_reference::add_v42_protection_levels ja add_v42_protection_levels_ecef: osajoukkojen määritys P_THRES- ja FC_THRES-säännöillä, VPL, HPL, tehollinen valvontakynnys EMT ja sigma_acc); χ²-testiin perustuva hetkellinen RAIM-vian havaitseminen yhden satelliitin poissulkemisella (raim::snapshot_raim, raim::snapshot_raim_fde) ja kaltevuuteen perustuva HPL/VPL geodeettisella paikallisella tasolla; sekä SBAS DO-229E -suojaustasojen yhdistely (sbas::sbas_protection_level) L1-palvelussa. EI katettu, sanottuna suoraan: yhtenäisen sigman apufunktiot raim::araim_raim ja raim::araim_dual_raim eivät vastaa ADD-määritystä (vastaavilla syötteillä ne jäävät Stanford MAAST:sta 0,75 m VPL / 4,04 m HPL ja 0,39 m VPL / 1,93 m HPL, löydös); kaksitaajuuksisen monitähdistöisen (DFMC) L5 SBAS -vertailun löydös on, että 308 käyttäjähetkiparia, joissa GEO ei ole näkyvissä, Kshana suojaa mutta MAAST ei, koska Kshana ei mallinna MAASTin GEO-vastaanottoporttia; raim::solution_separation_raim:lla ei ole ulkoista vertailua
Oraakkeli
Kolme riippumatonta työkalua, ennalta rekisteröity (0123cee1) ennen kuin mitään fikstuuria tai oraakkelin tulosta oli olemassa, toleranssit lukittu silloin. (1) ARAIM: Stanford MAAST ARAIM 2:lle (commit ab70e2a3, BSD-3) mhss_raim_baseline_v5.m, ajettu erillisenä ohjelmana GNU Octave 8,4 -ympäristössä ajurin puolen unique()-yhteensopivuuskerroksella (ilmoitettu, ei algoritmimuutosta), ADD:n TOL_PL-arvolla 0,05 m: Rust toistaa ADD-vertailutoteutuksen 270 todellisella tapauksella. Ilmoitettu: Kshanan ADD-polku kirjoitettiin ennakkorekisteröinnin jälkeen noudattaen ADD:tä siten kuin MAAST sen toteuttaa; arvioijan riippumaton holdout (270 uutta käyttäjägeometriaa ja toinen eheystukiviesti, MAAST ajettu uudelleen jäädytettyä koodia vasten) läpäisi saman kynnyksen. (2) Hetkellinen RAIM: RTKLIB v2.4.2-p13 (BSD-2) estpos/valsol/raim_fde erillisessä C-testiympäristössä havaitsemiselle ja poissulkemiselle; kaltevuus-PL RTKLIBin matinv/xyz2enu:sta sekä SciPy 1.18.1 chi2/ncx2, missä molemmat puolet laskevat saman suljetun muodon (Brown; Parkinson ja Axelrad), joten PL-tarkistus kattaa toteutuksen, ei kaavaa. (3) SBAS: Stanford MAAST (commit 7d32b049) usr_vhpl, muuttamattomana, MAASTin omilla tallennetuilla WAAS-lähetyksillä: L1-tasot 1e-4 m:n sisällä K-uudelleenskaalauksen jälkeen ja yhtä suuri suojattu joukko. Samat vertailut tuottivat ominaisuudessa mainitut löydökset: yhtenäisen sigman ARAIM-funktiot eivät vastaa ADD-määritystä, ja L5-joukkojen yhtäsuuruus pettää 308 parilla, joissa GEO ei ole näkyvissä (tasot 3267 parilla, jotka molemmat työkalut suojaavat, täsmäävät 1e-13 m:n tarkkuudella). DO-229E/DO-316 K-kertoimet ovat jäljennettyjä vakioita ja todellinen geometria on syöte; kumpaakaan ei lasketa oraakkeliksi. Versiomuutos 0,30: snapshot_raim-suojaustasot siirrettiin radiaalitasolta geodeettiselle paikalliselle tasolle (jopa 0,31 m HPL ja 0,14 m VPL leveysasteella 16 N)
Testit
tests/integrity_araim_stanford_oracle.rs::araim_mhss_matches_stanford_maast_add_v4_2 (270 todellisen geometrian tapausta, Celestrakin GPS+Galileo ja IGS SP3: huonoin |dVPL| 2.2e-3 m, |dHPL| 1.1e-3 m, |dEMT| 2.1e-10 m verrattuna ADD…
ValidoituRadan propagointi ja määrityssgp4,propagator,orbit_determination,precise_od
Ominaisuus
SGP4/SDP4, Cowell 6-DOF + häiriöt, eräkohtainen/peräkkäinen OD
Orekit 12,2 (CS GROUP, Apache-2.0) NumericalPropagator/DormandPrince853, riippumaton kirjasto, eri integraattori ja pallofunktiorekursio. Konservatiiviset tasot (kahden kappaleen → J2–J6-zonaalinen → Auringon/Kuun kolmas kappale → kanuunankuula-SRP) täsmäävät alle metrin tarkkuudella 24 tunnin kaarella, mikä validoi integraattorin ja voima-algebran; ilmanvastustaso sekä Auringon/Kuun efemeridin absoluuttinen ja tiheyssyötteen tarkkuus pysyvät MODELLED-tasolla (vain karakterisointi)
Testit
tests/numerical_cowell_propagator_reference.rs (275 epookkia = 11 tapausta × 25 tunnin välein otettua tilaa, LEO+GTO, vs Orekit 12,2 DormandPrince853; konservatiiviset tasot T1–T5 huonoin |Δr| 0,08 m 24 h aikana; vastustustaso luonnehdittu arvolla 333 m)
ValidoituLitistyneen Maan SRP-varjo (valinnainen)srp_shadow,forces (srp_accel_with_lit_fraction),propagator
Ominaisuus
SRP:n valaistu osuus, kun WGS-84-ellipsoidi on peittävä kappale (Maan näennäinen säde ellipsoidin reunalta Aurinkoa kohti, kahden kiekon linssikaava; srp_shadow::oblate_conical_shadow), valinnainen Cowellin voimamallissa kentän propagator::ForceModel::srp_shadow kautta (oletus: pallomainen kartiovarjo, muuttumaton)
Oraakkeli
Orekit 12,2 (Apache-2.0) SolarRadiationPressure.getLightingRatio WGS-84- ja pallomaisella OneAxisEllipsoid-peittävällä kappaleella, ajettu erillisenä ohjelmana Aurinko kiinnitettynä samaan inertiaaliseen paikkaan. Kynnykset ennalta rekisteröity tiedostossa xval/srp-oblate-shadow-orekit/PREREGISTRATION.md (6d6d269c): 1e-6 molemmille sekä > 1e-2 litistyneen ja pallon välinen hajonta; kaikki täyttyivät. Ellipsoidin akseli on inertiaalinen z-akseli molemmilla puolilla (ei prekessiota-nutaatiota)
Testit
tests/srp_oblate_shadow_orekit_oracle.rs (2400 geometriaa varjon reunan yli, 884 puolivarjossa, LEO:sta GEO:on, Auringon deklinaatio 0 ja +-23.44 astetta, 8 atsimuuttia: huonoin |dnu| 7.41e-9 WGS-84:lle ja 2.24e-9 pallomaiselle…
ValidoituLaatikko-siipi- ja ECOM2-auringonpaine osittaisderivaattoineen (valinnainen)srp_boxwing,propagator,precise_od
Ominaisuus
Ei-kanuunankuulamainen SRP: laatikko-siipi-levymalli (Vallado yhtälö 8-44; yksipuoliset runkopaneelit, Aurinkoon osoittavat siivet) GSC:n satelliittimetadatan Galileo FOC-, IOV- ja IOV-elinkaaren lopun taulukoilla, nimellisellä GNSS-yaw-ohjauksella, analyyttisillä osittaisderivaatoilla säteilykertoimelle ja jokaisen paneelin peilimäiselle ja diffuusille kertoimelle; sekä ECOM2-empiirinen malli (D2/B1) osittaisderivaattoineen. Laatikko-siipi on valinnainen Cowell-propagaattorissa (propagator::ForceModel::box_wing_srp, asettaa sen kentän srp_boxwing) ja tarkassa radanmääritysmallissa (precise_od::PreciseForceModel::box_wing_srp), ja se korvaa kanuunankuulatermin cr:llä säteilykertoimena; molemmat ovat oletuksena None, jolloin jokainen olemassa oleva polku pysyy tavu tavulta ennallaan. ECOM2:ta ei ole kytketty voimamalliin
Oraakkeli
Orekit 12,2 (Apache-2.0) BoxAndSolarArraySpacecraft FixedPanelilla ja PointingPanelilla, SolarRadiationPressure(dRef = 1 au, pRef = 1361/c), GenericGNSS nimellinen yaw ja ECOM2(nD = 2, nB = 1), ajettu erillisenä ohjelmana Aurinko kiinteissä inertiaalisissa paikoissa; säteilykertoimen derivaatta Hipparchus Gradientista, paneelikohtaiset derivaatat Orekitin keskeisdifferensseinä (Orekitissa ei ole). Kynnykset ennalta rekisteröity tiedostossa xval/srp-boxwing-orekit/PREREGISTRATION.md (e59df6bf) ennen kuin Orekitin tulosta oli olemassa: 1e-12 suhteellisena (1e-11 päästä päähän, 1e-9 erotuksille); kaikki täyttyivät (RESULTS.md). VALIDATED kattaa vain mallin evaluoinnin: GSC-taulukot ovat jäljennettyjä syötteitä, eikä laatikko-siiven riittävyyttä todellisille Galileo-radoille, lämpöuudelleensäteilyä, muokattua matalan beta-kulman yaw-lakia eikä varjokäännöksiä kateta; Galileon SRP-ennuste pysyy MODELLED-tasolla
Testit
tests/srp_boxwing_orekit_oracle.rs (252 Galileo-radan geometriaa, 7 Auringon tapausta mukaan lukien periheli- ja aphelietäisyydet, 100 satunnaista asentoa; tasolevysumma huonoin 2.05e-15 suhteellinen 1056 tapauksessa; päästä päähän…
NRLMSISE-00:n empiirisen termosfäärin portti (gtd7 ja gtd7d: lajien tiheydet, kokonaismassatiheys poikkeavalla hapella, lämpötilat; 24 kytkintä; päivittäisen Ap:n ja 3-tuntisen ap-taulukon tilat) NRL:n Fortran-koodin julkisen alueen C-versiosta
Oraakkeli
pymsis 0.13.0 (MIT) version=0, joka ajaa NRL:n Fortran GTD7D:n yksittäisellä tarkkuudella, ja NRLMSISE-00:n C-portti (julkaisu 20190709, julkinen alue) käännettynä erillisenä ohjelmana, sekä C-jakelun 17 julkaistua testituloa. Kynnykset ennalta rekisteröity tiedostossa xval/nrlmsise00-pymsis/PREREGISTRATION.md (e90ae26a) ennen kuin portti oli olemassa; kaikki täyttyivät (RESULTS.md). Validoi portin, ei mallin tarkkuutta mitattua tiheyttä vasten
Testit
tests/nrlmsise00_reference.rs (720 ruudukkopistettä, 90 – 1000 km, 4 leveysastetta, 2 paikallisaikaa, 3 päivää, matala/kohtalainen/korkea aktiivisuus: tiheys 1.866e-6 suhteellisella ja lämpötila 1.97e-4 K tarkkuudella pymsis-ohjelmasta; bitti-identtinen…
forces::DensityModel (Exponential-oletus, Nrlmsise00 { f107a, f107, ap }) ja propagator::ForceModel::drag_density: neliöllinen ilmanvastus yhdessä pyörivän ilmakehän kanssa NRLMSISE-00:n tiheydellä WGS-84:n geodeettisessa pisteessä (Maan pyörimiskulma UT1 = TT, paikallinen aurinkoaika UT + lon/15), vakioavaruussää mallia kohti; oletuksena pois päältä ja bittitarkasti identtinen
Oraakkeli
Orekit 12,2 (Apache-2.0) NumericalPropagator/DormandPrince853 ja DragForce Orekitin omalla NRLMSISE00-toteutuksella, ajettu erillisenä ohjelmana samalla Maan pyörimiskulmakoordinaatistolla, WGS-84-muodolla, paikallisen aurinkoajan konventiolla (keskimääräinen Aurinko) ja TT:llä UT:na; konventioasetus tarkistettiin oraakkeli oraakkelia vasten (Orekit vs. pymsis, 5.2e-5 tiheydessä). Kynnykset ennalta rekisteröity tiedostossa xval/drag-tier-orekit/PREREGISTRATION.md (21647478): 0,5 m + 1e-3 ilmanvastuksen siirtymästä, sekä kaksi > 100 m:n herkkyystarkistusta; kaikki täyttyivät. Ei katettu: mallin tarkkuus mitattua tiheyttä vasten, ajan mukana muuttuva avaruussää, GMAT-osuus
Testit
tests/drag_tier_orekit_oracle.rs (4 tapausta × 25 tunnin välein otettua tilaa 24 h ajalta, ympyrärata 51,6 astetta, 400 km matalalla/kohtalaisella/korkealla aktiivisuudella ja 300 km: huonoin |dr| 0,0303 m ja |dv| 3.36e-5 m/s verrattuna 3,3 – 141,8 km:iin vastuksen…
ValidoituOletuseksponentiaalinen ilmanvastus riippumatonta toteutusta vasten (päiväntasaaja)forces (atmospheric_density,drag_accel),propagator
Ominaisuus
Cowell-propagaattorin oletusilmanvastus: neliöllinen ilmanvastus pyörivän ilmakehän suhteen funktiolla forces::atmospheric_density, Valladon taulukon 8-4 paloittain eksponentiaalinen taulukko pallomaisella korkeudella (propagator::ForceModel::drag forces::DensityModel-tyypin oletusvariantilla Exponential)
Oraakkeli
GMAT R2022a (NASA GSFC, Apache-2.0) GmatConsole Exponential-ilmakehällä (sama 28 kaistan taulukko), pistemassa-Maalla ja PrinceDormand78:lla, ajettu, ei koskaan sisällytetty mukaan. Kynnykset ennalta rekisteröity tiedostossa xval/drag-exponential-gmat/PREREGISTRATION.md (640c85c1) kummankin puolen ilmanvastuksen siirtymälle (ilmanvastusajo miinus ilman ilmanvastusta -ajo), mikä kumoaa kaksi Maan mu-arvoa ja integraattoria; kaikki täyttyivät (RESULTS.md). GMAT käyttää geodeettista korkeutta ja kshana pallomaista korkeutta: ne ovat samat vain päiväntasaajalla, joten VALIDATED kattaa päiväntasaajan radat; päiväntasaajan ulkopuolella mallit eroavat suunnitellusti (10,4 % 24 tunnin siirtymästä kulmassa 51,6 astetta, 400 km). GMATin julkisessa versiossa ei ole NRLMSISE-00:aa (lisäosa puuttuu), joten NRLMSISE-00-tasolla on vain Orekit-oraakkeli. Taulukon tarkkuutta mitattua tiheyttä vasten ei katettu
Testit
tests/drag_exponential_gmat_oracle.rs (ekvatoriaaliset tapaukset E400, E300 ja E250x600 hetkellä J2000.0, 25 tunnin välein otettua tilaa 24 h ajalta: vastuksen aiheuttama siirtymä on GMATin kanssa yhtenevä korkeintaan 0,016 kynnyksestä 0,5 m + 1e-3|D|…
MallinnettuDE440:n Aurinko ja Kuu Cowellin voimamallissa (valinnainen)propagator (ForceModel::with_ephemeris,ForceEphemeris),ephem_provider
Ominaisuus
Valinnainen efemeriditaso numeerisen Cowell-ForceModelin kolmannen kappaleen ja SRP:n termeille: geosentrinen Aurinko ja Kuu minkä tahansa EphemerisProviderin (DE440 SPK -kernel kohteen KernelEphemeris kautta) antamina ajanhetkellä TDB = TT + (TDB - TT); hylkää tarjoajan, joka ei voi palvella ajanhetkeä, ja laskee kaikki paluut analyyttiseen sarjaan; oletuksena pois päältä
Oraakkeli
Orekit 12,2 (Apache-2.0) NumericalPropagator/DormandPrince853 ThirdBodyAttraction- ja SolarRadiationPressure-voimilla Orekitin omalla DE440-lukijalla (orekit-data lnxp1990.440), ajettu erillisenä ohjelmana; kshana lukee bitti bitiltä SPICE-tarkistetun leikkeen NAIFin de440s.bsp-tiedostosta. Kynnykset ennalta rekisteröity tiedostossa xval/propagator-de440-orekit/PREREGISTRATION.md (22a5a01d). Rataa koskeva kynnys (0,5 m) ja herkkyyskontrolli täyttyivät, mutta Auringon/Kuun paikkaa koskeva kynnys (3 m / 0,2 m) jäi saavuttamatta: tulokset olivat 6,39 m / 0,244 m. SPICE, joka lukee saman kernelin tarkalla TDB-hetkellään, poikkeaa Orekitista yhtä paljon (6,25 m / 0,240 m), joten ero on NAIFin de440s-polun ja Orekitin DE440-lukijan tai aika-asteikon välillä; syytä ei eristetty. Kirjattu ja lukittu, joten rivi pysyy MODELLED-tasolla
Testit
tests/propagator_de440_orekit_oracle.rs (5 tapausta × 25 tunnin välein otettua tilaa 24 h ajalta, LEO, GEO ja HEO, kolmas kappale sekä kolmas kappale + SRP: huonoin |dr| 0,0170 m, |dv| 1.84e-5 m/s; analyyttisen sarjan kontrolli ohittaa 9,96 m; Aurinko…
Vuorokautinen S1-ilmanpainevuorovesi geopotentiaalihäiriönä: Biancale ja Bode (2006) malli N1, asteet 2–6, IERS 2010 yhtälön 6,21 kuormakaavan kautta (tides::atmospheric_tide_s1, s1_air_tide_acceleration), valinnainen Cowell- ja tarkoissa voimamalleissa (air_tide_s1, oletuksena pois päältä)
Oraakkeli
Ei ulkoista geopotentiaalivaikutukselle. 24 kerrointa on jäljennetty GFZ STR06/01 -taulukosta 1 malli N1 ja tarkistettu rivi riviltä raporttia vasten (SHA-256 890865ae); asteita 0, 1, 7 ja 8 ei käytetä. Ray ja Ponte (2003) eivät julkaise pallofunktiotaulukkoa, joten toista lähdettä ei verrattu
Testit
tides::tests (S1-termi on vuorokautinen, kääntyy 90 astetta neljänneksessä vuorokautta ja sillä on kunkin rivin kuormituskertoimen amplitudi; fysikaalinen suuruus LEO:ssa); propagator::tests::the_s1_air_tide_flag_adds_exactly_the_s1_acceleration
Rayn (2001) S2-ilmanpaineharmoniset (n <= 4, myötäkulkuiset ja vastakulkuiset) muunnettuna IERS 2010 yhtälöiden 6.20–6.21 täysin normalisoituun sini-johtavaan muotoon (amplitudi jaettuna N_nm:llä, epsilon = 90 astetta - psi) ja sovellettuna funktion tides::atmospheric_tide S2-termiksi
Oraakkeli
Biancale ja Bode, GFZ Scientific Technical Report STR06/01 (2006), taulukko 5, malli A2: Ray (2001) julkaistuna täysin normalisoiduilla harmonisilla sini-johtavilla vaiheilla, saman mallin riippumaton esitys. Ennalta rekisteröity tiedostossa xval/s2-air-tide-fix/PREREGISTRATION.md (5e31c37a) yhdessä korjauksen kanssa, jonka se validoi. Kattaa vain kerroinmuunnoksen; ilmavuoroveden geopotentiaalivaikutukselle ei ole ulkoista oraakkelia
Testit
tests/s2_air_tide_gfz_table5.rs (21 aallosta 21 vastaa julkaistua mallia A2: huonoin 0,00050 cm, 0,050 astetta kynnyksiä 0,0006 cm, 0,1 astetta vasten); tests/tides_iers.rs (S2-amplitudikaista)
Valinnainen EGM2008-tesseraalikenttä (asteeseen/kertalukuun 70 asti) numeerisen Cowell-ForceModelin keskeisenä painovoimana, laskettuna Maahan kiinnitetyssä koordinaatistossa, jota pyöritetään IAU 2000 -Maan pyörimiskulmalla (tai CIO GCRS–ITRS-ketjulla); oletuksena pois päältä, joten mikään olemassa oleva tuloste ei muutu
Oraakkeli
Orekit 12,2 (CS GROUP, Apache-2.0) NumericalPropagator/DormandPrince853 ja HolmesFeatherstoneAttractionModel samoilla kertoimilla (tools/egm2008_to70.gfc) kappalekoordinaatistossa, jota pyöritetään samalla Maan pyörimiskulman kaavalla, ajettu erillisenä ohjelmana. Kynnykset ennalta rekisteröity (f0e0e65, muutettu ennen mitään vertailua tiedostossa 2da899a): |dr| <= 0,5 m ja |dv| <= 5e-4 m/s, ja molemmat negatiiviset kontrollit ohittavat > 100 m; kaikki täyttyivät, minkä jälkeen kynnykset kiristettiin arvoihin 0,1 m ja 1e-4 m/s. Ei validoitu: Maan orientaation tarkkuus (molemmat puolet käyttävät UT1 = TT ilman prekessiota-nutaatiota Era-koordinaatistossa), Cio-koordinaatiston valinta (vain sisäinen tarkistus), asteet yli 70
Testit
tests/cowell_tesseral_orekit_oracle.rs (6 tapausta × 25 tunnin välein otettua tilaa 24 h ajalta: EGM2008 8x8 ja 70x70 LEO:lla 45 astetta, polaarinen 89,9 astetta, aurinkosynkroninen 98,2 astetta, GTO, ja 70x70 Auringon/Kuun ja SRP:n kanssa; huonoin |dr| 0,0355 m…
Alivuototurvallinen ja napaturvallinen täysin normalisoidun kentän laskenta asteeseen 2190 asti (SphericalHarmonicField::acceleration_hf / potential_hf, Holmes–Featherstone 2002 muokattu eteenpäin etenevä sarake, jonka gradientissa ei ole termiä 1/cos phi), suoratoistava ICGEM .gfc -lataaja (from_gfc_file / from_gfc_reader; täysi EGM2008 haetaan ajon aikana, ei sisällytetä mukaan) sekä Holmes–Featherstone-laskin, joka on valittavissa valinnaiseen Cowell-Geopotential-kohteeseen
Oraakkeli
Orekit 12,2 (Apache-2.0) HolmesFeatherstoneAttractionModel ja pyshtools 4.14.1 (BSD-3-Clause) MakeGravGridPoint, ajettu erillisinä ohjelmina; kynnykset ennalta rekisteröity tiedostoissa xval/high-degree-gravity/PREREGISTRATION.md (276c869f) ja xval/cowell-tesseral-200-orekit/PREREGISTRATION.md (0aa312a6). Orekit täsmää kaikkialla, missä se on määritelty, mutta pyshtools jää ennalta rekisteröidystä kynnyksestään kahdessa napojen lähellä olevassa pisteessä (enintään 7.3e-10 m/s^2; 50-numeroinen mpmath-tarkistus osoittaa virheen olevan pyshtoolsissa), napa-akselilla täsmälleen ei ole oraakkelin arvoa, ja 24 tunnin radan ennalta rekisteröity asteen 70 herkkyyskontrolli jäi alle kynnyksen (0,726 m vs. > 1 m). Jokainen alitus on kirjattu eikä sitä ole viritetty pois, joten rivi pysyy MODELLED-tasolla
Testit
tests/gravity_sh_high_degree.rs (Orekit 8 akselin ulkopuolisessa pisteessä: enintään |da| 2.2e-17 m/s^2 kohdassa N = 70, ajetaan aina; 3.5e-17, 3.9e-17 ja 7.3e-17 m/s^2 kohdissa N = 200, 360, 2190, datan varassa muuttujalla KSHANA_EGM2008_GFC)…
SciPy 1.18.1 (BSD-3-Clause) solve_ivp(method=DOP853) ja sen yksittäisaskel-, virhenormi-, tiheä ulostulo- ja alkuaskelrutiinit, riippumaton toteutus; tarkat kahden kappaleen tilat mpmath 1.3.0:lla 40 numerolla. Kynnykset ennalta rekisteröity tiedostossa xval/dop853-scipy/PREREGISTRATION.md (ae1b25e) ennen ensimmäistä vertailua; kaikki täyttyivät (xval/dop853-scipy/RESULTS.md). SciPyn ensimmäinen askel annetaan molemmille ratkaisijoille täysissä ajoissa; alkuaskelrutiinia verrataan erikseen. Ei katettu: RKF7(8), jäykkyyden havaitseminen, tapahtumien paikannus
Elliptinen Keplerin ratkaisija kaikille 0 <= e < 1 ja kaikille keskianomalioille: Markleyn (1995) kuutiollinen alkuarvaus ja viidennen kertaluvun korjaus, kumoutumisvapaa residuaali (1-e)E + e(E - sin E) - M ja suojattu Newton-hionta (kepler::solve_kepler_markley, propagator::solve_kepler_robust)
Oraakkeli
mpmath 1.3.0 (BSD-3-Clause) 50-numeroiset juuret tarkoista binäärisyötteistä. Kynnykset ennalta rekisteröity tiedostossa xval/kepler-mpmath/PREREGISTRATION.md (df22174), ilmaistuna suhteessa |E|:hen ja e -> 1, M -> 0 -ehdollisuusperustelulla; kaikki täyttyivät (xval/kepler-mpmath/RESULTS.md). Vanhat ratkaisijat (solve_kepler_checked, orbit::solve_kepler, ephem::solve_kepler) ovat numeerisesti muuttumattomia, koska arkistoidut tulosteet riippuvat niistä, eikä tämä rivi kata niitä
Testit
tests/kepler_mpmath_oracle.rs (405 ruudukkopistettä, e välillä 0 – 0,999999, M välillä [-pi, pi] aina arvoon 1e-12 asti: huonoin |E - E_ref| 0,898 eps|E| kynnystä 8 eps|E| vasten; 9 käämittyä M-pistettä huonoimmillaan 0,013 kynnyksestään; ei Newtonia…
MallinnettuEtäisyysnopeuden ja atsimuutti/korkeuskulman eräkohtainen radanmääritys aseman maskauksellaorbit_determination (determine_orbit_batch_tracking,propagate_with_stm,is_visible),batch_ls (gauss_newton_analytic)
Ominaisuus
Palauttaa epookin tilan sekoitetusta etäisyys-, etäisyysnopeus- ja atsimuutti/korkeuskulma-seurannasta korkeuskulmamaskin yläpuolella Gauss–Newton-menetelmällä H = (dh/dx(t)) Phi(t, t0): analyyttiset mittausosittaisderivaatat ja variaatiotilansiirtymämatriisi, jossa on analyyttiset kahden kappaleen + J2-osittaisderivaatat (RK4-integroitu, ei suljetun muodon STM)
Oraakkeli
Orekit 12,2 (Apache-2.0) BatchLSEstimator mukautetuilla hetkellisillä geometrisilla RangeRate- ja AzEl-mittauksilla (ristiintarkistettu Orekitin TopocentricFramea vasten), ajettu erillisenä ohjelmana identtisillä maskatuilla, siemenluvulla toistettavilla havainnoilla. Kynnykset ennalta rekisteröity tiedostossa xval/od-measurements-orekit/PREREGISTRATION.md (0cf9076). Jokainen kynnys täyttyi paitsi B4, kohinattoman tilan yhtäpitävyys 1 cm:n sisällä, joka jäi saavuttamatta 2 skenaariossa 4:stä (1,46, 1,74 cm): Orekitin oma kohinaton estimaatti on näin kaukana sen simuloidusta totuudesta (syytä Orekitin puolella ei eristetty). Kirjattu ja lukittu, joten rivi pysyy MODELLED-tasolla. Ei mallinnettu: valon kulkuaika, aberraatio, refraktio, Maan pyöriminen, peräkkäinen suodatin näille mittaustyypeille
Testit
tests/od_tracking_measurements_reference.rs (8 skenaariota: etäisyyden muutosnopeus, atsimuutti/korkeus ja sekamuotoinen, LEO ja MEO, kohinaton ja siemenluvulla alustettu sigma 5 m / 5 mm/s / 1e-4 rad, 5 ja 10 asteen maskit, Orekit 12,2 -ohjelmaa vasten: näkyvät joukot identtiset…
Kuvaa SP3-tarkkuuskoodit (otsikon ++-eksponentit muodossa 2^n mm, %f-kanta, tietuekohtaiset kanta^n mm -keskihajonnat) havaintokohtaisiksi paikan sigmoiksi tarkan radanmäärityksen moottorille (sp3::parse_sp3_accuracy, Sp3Accuracy::position_sigma_m)
Oraakkeli
Ei ulkoista: painot ovat mallinnusvalinta (SP3-muoto määrittelee koodin vain tuottajan tarkkuusindikaattorina; se luetaan tässä akselikohtaisena yhden sigman arvona). Olemassa olevat tallennetut virastoajot ovat muuttumattomia
Testit
src/sp3.rs unit tests; tests/agency_galileo.rs::galileo_e11_sp3_accuracy_weighted_fit (committed 8 h ESOC fixture, sigma 0.032 m from header exponent 5: Tier-1 3D RMS 0.132 m unchanged, Tier-2 0.035 m against 0.070 m…
Lukee PDS SHADR -pallofunktiotaulukot (from_shadr, tyypillä SphericalHarmonicField tiedostossa src/gravity_pds.rs: yksikkömuunnos, C00 = 1 annettu, täydellisyys- ja normalisointitarkistukset) ja laskee Marsin GMM-3:n (d/o 120) ja Kuun GRAIL-kentän GL0660B (d/o 660) kappaleeseen kiinnitetyn painovoiman
Oraakkeli
pyshtools 4.14.1 (BSD-3-Clause) lukee samat PDS-tiedostot ja laskee pistepainovoiman, ajettu erillisenä ohjelmana, sekä julkaistut PDS-tuotteiden otsakkeet ja selitteet. Kynnykset ennalta rekisteröity tiedostossa xval/planetary-gravity-pyshtools/PREREGISTRATION.md (32c5b50); kaikki täyttyivät (RESULTS.md). Data: NASA PDS Geosciences Node, julkinen alue; asteen 20 leikkeet mukana NOTICE-tiedoston kanssa, täydet tiedostot haetaan testin aikana
Testit
tests/planetary_gravity_pds.rs (asteen 20 rajaukset ajetaan aina: huonoin |dg|/|g| 9.7e-16, häiriösuhteellinen 3.4e-11; GMM-3 d/o 120 koko pallolla 3.7e-15 / 6.3e-12 ja GL0660B d/o 660 kohdassa |lat| <= 60 astetta 5.0e-14 /…
MallinnettuLiitä julkaistu painovoimakenttä kappaleeseengravity_pds,body,propagator,mars_frame
Ominaisuus
with_gravity_field (tyypillä Body, tiedostossa src/gravity_pds.rs): liittää minkä tahansa ladatun pallofunktiokentän (esimerkiksi GMM-3 tai GL0660B) kappaleeseen Body, jolloin propagaattori laskee sen kappaleeseen kiinnitettynä; valinnainen, oletuskappaleet muuttumattomia
Oraakkeli
Vain sisäinen johdonmukaisuus. Jokainen julkaistu kenttä on määritelty tuottajansa kappaleeseen kiinnitetyssä koordinaatistossa (GMM-3 Konopliv ym. 2006 Mars-koordinaatistossa, GL0660B DE421-kuun pääakselikoordinaatistossa), kun taas kenttä lasketaan IAU-koordinaatistossa; poikkeamaa ei mallinneta
ValidoituEräkohtainen ja peräkkäinen radanmääritysorbit_determination,precise_od (batch_ls::gauss_newton,fusion::ukf)
Ominaisuus
Palauttaa epookin tilan [r,v] maa-aseman etäisyyksistä Gauss–Newton-eräkohtaisella differentiaalikorjaajalla ja peräkkäisellä suodattimella kahden kappaleen + J2-voimamallin yli
Oraakkeli
Orekit 12,2 (CS GROUP, Apache-2.0) BatchLSEstimator (Levenberg–Marquardt) + KalmanEstimator (EKF), riippumaton kolmannen osapuolen estimointikirjasto vastaavalla voimamallilla; palautettu epookin tila + jälkisovituksen jäännöksen RMS täsmäävät tarkkuudella < 1e-3 m kohinattomana ja < 3 m 5 m:n kohinalattialla
Testit
tests/batch_sequential_orbit_determination_reference.rs (8 scenarios: 6 noiseless LEO/MEO/eccentric/3–4-station + 2 σ=5 m, vs Orekit 12.2; worst batch |Δr| 1e-3 m / |Δv| 1e-6 m/s, sequential |Δr| 0.9 m)
ValidoituSyväavaruuden radiometrinen valon kulkuajan ratkaisijaradiometric (light_time_solution)
IGS-standardin mukainen SP3-tarkkojen efemeridien satelliittipaikkojen Lagrange-interpolointi solmukohtaisella Maan pyörimisen korjauksella (kukin solmu pyöritetään ω⊕·(t_node−t) verran kyselyhetken Maahan kiinnitettyyn koordinaatistoon ennen polynomisovitusta)
Oraakkeli
RTKLIB peph2pos() käännettynä C-lähdekoodista (preceph.c; T. Takasu, BSD-2-Clause), tosiasiallinen IGS-vertailu ja riippumaton toteutus; kshanan interpolaattori (joka nyt sisältää saman Maan pyörimisen solmukorjauksen) täsmäsi noin 15 nm:n tarkkuudella todellisella SP3-tuotteella, aiemmin noin 5,5 cm ennen korjausta
Testit
tests/sp3_interp_reference.rs (72 off-node SV-epoch cases / 6 satellites vs RTKLIB peph2pos; worst per-axis |Δ| 1.5e-8 m)
MallinnettuNavigointiviestien koodaimet GPS LNAV:n lisäksi (GPS CNAV, Galileo I/NAV ja F/NAV)gnss_navmsg (gps_cnav,gal_inav,gal_fnav,fec)
Sisäinen edestakainen kierto ja ICD:n tunnetut vastaukset; kolmannen osapuolen dekooderia ei ole ajettu (RTKLIB/GNSS-SDR-testiympäristö, joka lukee KSHANA_NAVMSG_ORACLE_JSON, on datarajattu). MODELLED
Testit
gnss_navmsg::tests (CRC-24Q-tarkistusarvo 0xCDE703; konvoluutiovaste impulssille; Viterbi korjaa lisätyt virheet; asettelun leveydet); tests/gnss_navmsg_roundtrip.rs (kenttien alkubitit ovat samat kuin ICD:n bittinumerot; koodaus ->…
ValidoituIONEX-globaalin ionosfäärikartan lukija ja interpolointi todellisella CODE GIM:lläionex (parse_ionex,parse_ionex_file,IonexFile::vtec_at,IonexFile::slant_tec_at,interpolate_tec_in_time,TecGrid::vtec_at)
Ominaisuus
IONEX 1,0 -lukija (otsake, kiinteäsarakkeiset I5-arvot, TEC- ja RMS-kartat, absoluuttiset epookit, puuttuvat arvot) bilineaarisella paikkainterpoloinnilla, muodon lähimmän / peräkkäisen / pyöritetyn kartan aikainterpoloinnilla (yhtälöt 1–3) ja ohutkuorisella vinolla TEC:llä
Oraakkeli
CODE GIM:n painetut arvot (täsmälleen jokaisessa solmussa; kartta haetaan testin aikana, ei sisällytetä mukaan, koska sen lisenssiä ei ole vahvistettu) ja riippumaton Python-stdlib-uudelleentoteutus IONEX 1,0 -interpolointikaavoista, arkistoituna fikstuurin kanssa (kynnykset ennalta rekisteröity e4d8b1f, 1e-9 TECU). Kolmannen osapuolen tarkistus (B6, ennalta rekisteröity, ensimmäinen ajo): RTKLIB v2.4.2-p13 iontec (BSD-2-Clause, ajettu erillisenä työkaluna) täsmää 6885 kyselypisteessä funktion IonexFile::vtec_at kanssa tarkkuudella 3.6e-13 TECU molemmissa interpolointitiloissa 1e-5 TECU:n kynnystä vasten. Datarajattu: CODE GIM haetaan testin aikana, SHA-lukittuna; RTKLIB lukee koko tiedoston, koska sen getindex hylkää leveysastealueen rajauksen. tests/fixtures/ionex_code_gim/fetch.sh hakee sen ja tarkistaa SHA-256:n, testi epäonnistuu kaikilla muilla tavuilla, ja run_rtklib.sh on dokumentoitu toistopolku (vaatii verkkoyhteyden). Ylennetty VALIDATED-tasolle omistajan päätöksellä datarajatun todisteen perusteella (2026-10-13)
Testit
tests/ionex_code_gim_oracle.rs (tallennettu synteettinen IONEX-kartta vs kaavavertailu: 20 075 solmua täsmälleen, interpolaation enintään |Δ| 3.5e-13 TECU; datan varassa muuttujalla KSHANA_IONEX_CODE_GIM_DIR, todellinen CODE final GIM…
Hajaantumaton Hatch-suodatin (ionosfäärivapaa koodi ionosfäärivapaan kantoaallon kantamana, ikkuna N epookkia, uudelleenkäynnistys lukituksen menetyksessä, geometriavapaassa hypyssä tai aukossa) tarkan yhden pisteen paikannuksen kokoonpanossa
Oraakkeli
LÖYDÖS julkaistua ITRF2020 WTZR -koordinaattia vasten: ennalta rekisteröidyt kynnykset (tasoitettu mediaani ja p95 enintään 0,6 x raaka; tests/fixtures/gnss_wettzell_2025055/PREREGISTRATION_HATCH.md) eivät täyttyneet, suhteet 0,718 ja 0,923; jäljelle jäävä metrin tason virhe on vinoumamainen (C1C-koodivinouma, antenni, vuorovesi, pitkäjaksoinen monitie-eteneminen), ei sitä valkoista kohinaa, jonka tasoitus poistaa. MODELLED: suodattimen tilastot tarkistetaan sisäisesti
Lyhyen peruslinjan suhteellinen paikannus todellisesta kaksitaajuuksisesta GPS-koodista ja kantoaallon vaiheesta: kaksoisdifferenssit korkeinta satelliittia vasten täydellä kovarianssillaan, float-Kalman-suodatin peruslinjalle ja yksittäisdifferenssien epävarmuuksille hyppyjen uudelleenalustuksella, LAMBDA-kokonaislukujen pienin neliösumma ratio-testillä ja peruslinja ehdollistettuna kiinteisiin kokonaislukuihin
Oraakkeli
WTZR:n ja WTZZ:n julkaistut ITRF2020-koordinaatit (IGN ITRF2020_GNSS.SSC, ratkaisu 3, RINEX-antennikorkeuksilla), jotka antavat vertailuperuslinjan; kynnykset ennalta rekisteröity tiedostossa tests/fixtures/gnss_wettzell_2025055/PREREGISTRATION_RTK.md ennen koodin kirjoittamista. Vain lyhyt peruslinja: ionosfäärin tai troposfäärin kaksoisdifferenssejä ei mallinneta
Testit
tests/rtk_real_wettzell_oracle.rs (IGS-asemat WTZR tukiasemana / WTZZ liikkuvana, 1,4 m, 2025-02-24 00-03 h, 30 s: 359 epookkia, ratkaisut 100 %:ssa alkaen kohdasta 00:10, kiinteän perusviivan virheen mediaani 4,5 mm, p95 5,5 mm; ensimmäiset 10 min kiinteä 2,6 mm…
Staattisen float-PPP-suodattimen estimoima vastaanottimen kello todellisella kaksitaajuuksisella GPS-koodilla ja -vaiheella IGS:n lopullisilla radoilla ja kelloilla: ajansiirto vastaanottimelta IGS-aikaan, PPP:n ionosfäärivapaa aikaratkaisu.
Oraakkeli
IGS:n lopullinen yhdistetty kello asemalle WTZR (AR-tietueet IGS0OPSFIN_20250550000_01D_05M_CLK, SHA-256 d19f3d45...993d, usean analyysikeskuksen verkkoratkaisujen yhdistelmä; IGS-tuotteet, vapaa käyttö nimeämällä); kynnykset ennalta rekisteröity tiedostossa xval/ppp-time/PREREGISTRATION.md ennen mitään vertailua; kaikki pitivät ensimmäisellä ajolla. MITÄ EI OLE: yksi asema ja yksi kaksituntinen konvergoitunut ikkuna; IGS-aika, ei UTC(k); vakiopoikkeama sisältää vastaanottimen koodivinoumat ja on rajattu, ei kalibroitu; ei Circular T -jäljitettävyyttä.
Testit
tests/ppp_time_igs_station_clock.rs (WTZR 2025-02-24, 04:00-05:55, 24 epochs: Kshana minus IGS std 0.075 ns, bar 0.20; mean -0.659 ns, bar 5.0)
Staattinen float-PPP:n laajennettu Kalman-suodatin todellisella kaksitaajuuksisella GPS-koodilla ja kantoaallon vaiheella IGS:n lopullisilla radoilla ja kelloilla: ionosfäärivapaa yhdistelmä, satelliitin ja vastaanottimen antennipoikkeamat (vastaanottimen vaihtelut), kiinteän Maan vuorovesi, vaiheen wind-up, Shapiro-viive, estimoitu zeniitin märkäviive, kaarikohtaiset float-epävarmuudet geometriavapaalla / Melbourne–Wübbena-hyppyjen havaitsemisella
Oraakkeli
WTZR:n julkaistu ITRF2020-koordinaatti (IGN ITRF2020_GNSS.SSC, ratkaisu 3, propagoituna sen nopeudella); kynnykset ennalta rekisteröity tiedostossa tests/fixtures/gnss_wettzell_2025055/PREREGISTRATION_PPP.md ennen suodattimen kirjoittamista; kehitys vain samalla paikalla olevalla asemalla WTZZ. Ei mallinnettu: merenpinnan kuormitus, satelliitin PCV, kokonaislukuepävarmuuden ratkaisu
Testit
tests/ppp_real_wettzell_oracle.rs (IGS-asema WTZR, 2025-02-24 00-06 h, 30 s, pidätetty pois kehityksestä: viimeisen epookin vaakavirhe 1,5 mm, ylös −2,9 cm; 04-06 h 240/240 epookkia 0,10 m sisällä 3D:ssä, p95 6,7 cm; vain koodi p95…
RINEX 4.00-4.02 -navigointitiedostot: GPS LNAV:n, Galileo I/NAV:n ja F/NAV:n, BeiDou D1/D2:n ja QZSS LNAV:n > EPH-tietueet dekoodattuna lähetetyn efemeridin tyyppiin; CNAV-, CNV1-3-, FDMA-, SBAS-, STO-, EOP- ja ION-tietueet ohitetaan seuraavaan tietueotsakkeeseen; tietue, jonka otsake nimeää toisen satelliitin, tai katkaistu tietue hylätään
Oraakkeli
IGS:n saman päivän RINEX 3 -yhdistetty lähetetty tiedosto (julkaistu data, kirjoitettu eri tiedostogeneraattorilla samoista lähetetyistä viesteistä); kynnykset ennalta rekisteröity tiedostossa tests/fixtures/brdc_rinex4_2026200/PREREGISTRATION.md (7aa264b) ennen ensimmäistä ajoa
Testit
tests/rinex4_nav_brd400_oracle.rs (IGS BRD400DLR_S RINEX 4,02 vs BRDM00DLR_S RINEX 3,04 päivältä 2026-07-19, väli 00-02 h: G 37 / E 478 / C 72 tietuetta täsmäsi molempiin suuntiin, jokainen kenttä identtinen, paikka hetkellä Toe 0 m; koko päivä…
RINEX 4.0x -havaintojen otsakkeet (DOI, LICENSE OF USE, STATION INFORMATION, MERGED FILE; selitteet sovitettu sarakkeisiin 61–80 versiosta 4 alkaen) ja epookkitietueet
Oraakkeli
Muotoyhteensopivuus todellisella julkaistulla RINEX 4,00 -tiedostolla (takaisin luetut arvot ovat yhtä kuin tiedoston painetut literaalit) ja määrittelystä johdetulla otsakkeella; riippumatonta lukijaa ei ajettu, joten MODELLED
Testit
tests/rinex4_obs_mao0.rs (IGS MGEX RINEX 4,00 -tiedoston MAO000USA_R_20231980000_01D_30S_MO 4 ensimmäistä epookkia, 58 satelliittia, 7 järjestelmää: otsikkotietueet ja ensimmäisen epookin arvot ovat samat kuin julkaistut literaalit)…
BDS-SIS-ICD-B1I v3.0 §5.2.4.12 geostationaarisen satelliitin paikka lähetetystä efemeridistä (inertiaalin kaltainen koordinaatisto, sitten Rz(Ω̇e·tk)·Rx(−5°)), valinnainen NavParseOptions-tyypin kentän include_beidou_geo kautta, joten oletuslukija ohittaa yhä GEO:t
Oraakkeli
Ennalta rekisteröity (7aa264b, 110fef9) IGS MGEX -tarkkaa rataa vasten GEO:illa; sitä rakentaneesta istunnosta ei ollut saatavilla sellaista tuotetta, joten vertailu on kesken ja rivi on MODELLED (tarkistettu vain julkaistuja nimellisiä GEO-paikkoja vasten)
Testit
tests/bds_geo_broadcast_oracle.rs (todelliset C01-C04-tietueet: geostationaarinen säde, pituuspiirit 140.02/80.04/110.55/159.99 astetta julkaistuissa paikoissa, |leveysaste| 2,13 astetta kallistuksen kanssa vs 6,65 ilman; ennakkorekisteröity…
Satelliitin kellopoikkeama taulukoitujen SP3-kellosolmujen välillä lineaarisella interpoloinnilla kahden ympäröivän kelvollisen solmun yli (RTKLIBin pephclk-malli; huonon kellon merkkiarvo ohitetaan) ja samat solmut syötettynä tarkkojen tuotteiden ketjuun RINEX-kellon vastaavina tietueina
Oraakkeli
IGS:n lopullinen 30 s satelliittikellojen yhdistelmä (IGS0OPSFIN 30S CLK, 2025-02-24): julkaistut kelloestimaatit kyselyhetkillä, ei interpoloitu SP3:sta; kynnykset ennalta rekisteröity tiedostossa tests/fixtures/sp3_clock_igs_oracle/PREREGISTRATION.md ennen ensimmäistä ajoa (RMS 0,15 ns, p95 0,30 ns, solmun mediaani 1e-12 s, erottelu 2x)
Testit
tests/sp3_clock_igs_oracle.rs (IGS final 15 min SP3 päivältä 2025-02-24 vs IGS final 30 s kellot, 32 GPS-satelliittia: solmujen mediaani |Δ| 2.6e-13 s; 3038 välipistetietuetta RMS 0,121 ns, p95 0,265 ns; solmun pitäminen sen sijaan…
MallinnettuKantoaaltovaiheeseen perustuva tiukasti kytketty GNSS/INS float-epävarmuuksillafusion::carrier_tc (run_carrier_tc,CarrierTcCfg),fusion::trajectory (truth_epochs)
Ominaisuus
Virhetila-EKF 15 INS-tilan, kaksitilaisen vastaanottimen kellon ja yhden float-kantoaaltoepävarmuuden yli seurattua satelliittia kohti; pseudoetäisyys, kantoaallon vaihe ja valinnainen etäisyysnopeus SGP4 Walker -tähdistöstä (valon kulkuaika ja Sagnac), Klobuchar- ja Saastamoinen/Niell-korjaukset sovellettuna silmukassa suodattimen omassa paikassa; aikaerotettu kantoaaltohyppyjen havaitseminen satelliittikohtaisella kynnyksellä, jota nopeuden epävarmuus levittää; epävarmuuden uudelleenalustus hypyissä ja uudelleenhankinnassa
Oraakkeli
Sisäinen johdonmukaisuus: mittaukset synteettisesti tuotetaan suodattimen käyttämistä malleista (χ² NEES/NIS siemenluvuilla, kohinaton konvergenssi, hyppyjen injektointi). MODELLED; todellisia vastaanotindatoja tai kolmannen osapuolen suodatinta ei verrata
Testit
tests/fusion_carrier_tc.rs (kuvio-8-ajo: vakaa 3D-RMS 0,025 m kantoaallolla vs 0,470 m koodilla samoilla mittauksilla; 12 siemenlukua, keskimääräinen NIS/dof 1,00 ja vakaa NEES/dof 0,92; 1 jakson hyppy havaittu omalla epookillaan ilman…
Kolme gnss-ins-skenaariota liikeratakirjastossa (alus, joka kiemurtelee nopeudella 8 m/s viiden minuutin katkolla; juna kahden satelliitin leikkauksen ja tunnelin läpi; ilma-alus, jonka katko kattaa 25 asteen kallistetun käännöksen) ja paketin valinnainen [tight]-taulukko: pseudoetäisyydet SGP4 Walker -tähdistöstä yhdistetään suljetun silmukan navigaattorilla, nimellisesti jokainen maskin yläpuolella oleva satelliitti ja heikentyneenä korkeimmat muutama
Oraakkeli
Sisäinen: kunkin paketin laatumittarit omaa totuuttaan vasten sekä löyhä/tiukka-vertailu identtisillä syötteillä. MODELLED; auditoinnin NaveGo-vertailua ei ole ajettu
Testit
tests/gnss_ins_packs.rs (kukin paketti: sulautettu vapaata INS:ää paremmin katkon aikana molemmilla antureilla; rail: tiukka 5,3 m vs löyhä 12,9 m navigointiluokassa ja 15,6 m vs 18,8 m taktisessa katkon aikana, saatavuus 0,97 vs 0,95…
MallinnettuKytketty pseudoetäisyys-PNT-suodatin vinoumatilalla ja 3D-laajennus fuusiopaketissafusion::coupled (CoupledPntFilter,CoupledPntBiasFilter,CoupledPnt3d),fusion (run_coupled_suite),hybrid (CoupledCfg)
Ominaisuus
Yksi pinottu Kalman-suodatin paikan, nopeuden, kellon vaiheen ja taajuuden yli, jota syötetään paikan ja kellon kytkevillä pseudoetäisyyksillä (Joseph-muotoiset päivitykset, jotka kantavat ristikovarianssin); 1-DOF-variantti, jota on laajennettu vakiokiihtyvyysmittarin vinoumatilalla ja jota fuusiopaketti ajaa kohdassa [coupled]; sekä 3D:n 8-tilainen versio näkölinjariveillä
Oraakkeli
Sisäinen johdonmukaisuus: totuus simuloitu suodattimien omista malleista (χ² NEES Monte Carlo -siemenluvuilla, irrotettu paketti identtisillä antureilla). MODELLED
Testit
tests/fusion_coupled_filters.rs (3D-suodatin 60 siemenluvulla: toisen puoliskon keskimääräinen NEES 8,12 8 tilalle, viimeisen epookin χ²-summa 95 %:n kaistan sisällä; 0,1 ns:n kellokorjaus pienentää 3D-paikan sigmaa arvosta 5,58 m arvoon 3,07 m; harha…
Suljetun silmukan 15-tilainen virhetila-EKF, jota ohjaavat IMU-lisäykset ja jossa GNSS-antennipaikat yhdistetään vipuvarsimallilla H = [I 0 −[(C_b^n l_b)×] 0 0], konfiguroituna KF-GINS-YAML-tiedostosta (alkutila ja sigmat, ARW/VRW, Gauss–Markov-vinoumat)
Oraakkeli
Aineiston julkaistu vertailuliikerata ja KF-GINS C++ -ohjelma (GPL-3.0, commit 8291a93e, ajettu erillisenä työkaluna); kynnykset ennalta rekisteröity tiedostossa xval/kfgins/PREREGISTRATION.md, eikä KF-GINS:ää ajettu tällä datalla ennen tuota rekisteröintiä (tarkistettu sen Results-osiossa). Kaikki kuusi kynnystä pitivät ensimmäisellä ajolla. DATARAJATTU: KF-GINS-demoaineistolla (todellinen Leador-A15 IMU ja RTK GNSS vertailuliikeradalla) ei ole lisenssiä, joten sitä ei sisällytetä mukaan; xval/kfgins/fetch.sh hakee sen testin aikana kunkin tiedoston SHA-256 lukittuna, ja testi epäonnistuu poikkeamassa; toistopolku, joka vaatii verkkoyhteyden, on tiedostossa xval/kfgins/PREREGISTRATION.md. Ylennetty VALIDATED-tasolle omistajan päätöksellä datarajatun todisteen perusteella (2026-10-13)
ValidoituTestipenkin vienti, jonka lukee simulaattorin liiketiedostojen lukijat (gps-sdr-sim)interop::testbench (write_motion_csv,write_nmea,export)
Ominaisuus
Avoimen lähdekoodin GNSS-simulaattorin omille lukijoille annetut testipenkin vientiliiketiedostot palautuvat viedyksi liikeradaksi: NMEA GGA -tiedosto (-g), liike-CSV:n aika/leveysaste/pituusaste/korkeus-leike (-x) ja sen aika/x/y/z-leike (-u), 6 gnss-ins-skenaariossa (mukaan lukien meri-, rautatie- ja ilmailupaketit, luettuna simulaattorin 3000 näytteen ylärajaan asti) ja 2 paikallaan olevassa. Vain liike; signaalia ei kirjoiteta eikä tuoteta.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti ilmaistuna: gps-sdr-sim (MIT, commit 28ca29a6) readNmeaGGA, readUserMotion ja readUserMotionLLH omalla WGS 84 llh2xyz-funktiollaan, kutsuttuna tiedoston xval/testbench-gpssdrsim/driver.c kautta (signaalifunktiota ei kutsuta), liike-CSV:n Maahan kiinnitettyjä sarakkeita vasten rivi riviltä, kynnykset ennalta rekisteröity tiedostossa xval/testbench-gpssdrsim/PREREGISTRATION.md ennen mitään ajoa: jokainen näyte luettu kaikissa 8 skenaariossa; NMEA pahin 1,21 mm (kynnys 1 cm); LLH-leike pahin 0,145 mm (kynnys 1 mm); nelisarakkeinen Maahan kiinnitetty leike tarkka (kynnys 1 um, muutos 1); gnss-ins-rivit simulaattorin 10 Hz:n ruudukolla tarkkuudella 2.3e-13 s. LÖYDÖS (ajo 1, lukittu): otsakkeeton täysleveä CSV ei ole luettavissa valinnalla -u, koska lukijan 100 merkin rivipuskuri jakaa jokaisen 161-merkkisen rivin kahdeksi näytteeksi; docs/TEST-BENCH.md antaa nelisarakkeisen leikkeen. MITÄ EI: skenaarion totuusliikeradan fysiikka; gps-sdr-simin signaalituloste; minkään toisen simulaattorin lukija; mikään vastaanotin.
Testit
tests/testbench_gpssdrsim_oracle.rs (6 testiä: oraakkeli ja skenaariot, vientitavut lukittu, NMEA- ja LLH-lukijat, nelisarakkeinen ECEF-leikkaus, ajon 1 HAVAINTO koko leveyden CSV:stä, 10 Hz:n rivijoukko)
MallinnettuGNSS/INS-liikeratakirjasto ja CSV-totuuden tuontifusion::trajectory (TrajectoryCfg,Trajectory,kinematic_imu,parse_truth_csv),fusion::pack ([trajectory])
Ominaisuus
Valittavat liikeprofiilit gnss-ins-paketille (suora, figure-8-rata, kaupunkimainen pysähtely, ilma-aluksen nousu ja koordinoitu käännös, kartoitusdrooni), määriteltyinä Euler-nopeus- ja ratakiihtyvyyskomennoilla, jotka suljetaan totuustilaan kinemaattisella IMU:lla (keskeisvoima-, painovoima- ja Coriolis-termit), sekä tuotu CSV-totuus muunnettuna sen toistavaksi IMU:ksi; historiallinen ajo muuttumattomana, kun profiilia ei anneta
Oraakkeli
Sisäinen: jäykän kappaleen kinematiikan identiteetit, CSV:n edestakainen kierto ja suodattimen oma kovarianssi. MODELLED (todellista ajolokia ei verrata)
Testit
fusion::trajectory::tests (koordinoidussa käännöksessä ei ole sivuvoimaa ja kuormituskerroin on 1/cos φ; CSV-tuonti toistaa lennetyn profiilin tarkkuudella 1e-3 m/s ja 1 m); tests/gnss_ins_trajectory_library.rs (jokainen profiili ajetaan ja fuusio…
Kvaternioasenteinen, WGS-84 NED -strapdown-inertiamekanisaatio (coning/sculling-kompensoitu), joka propagoi navigointitilaa (Δθ, Δv) -lisäyksistä
Oraakkeli
NaveGo v1.4 (R. Gonzalez ym., LGPL-3) ajettuna Octavella, riippumaton julkaistu INS-työkalupakki, jota ohjaa identtinen (Δθ,Δv)-lisäysvirta. Asenne täsmää bitti bitiltä (samat NED- / skalaari ensin -kvaternio- / Maan nopeus- / kuljetusnopeuskonventiot); nopeus/paikka täsmäävät kahta dokumentoitua eroa lukuun ottamatta: pystysuoran poikkeaman pohjoinen painovoimatermi, jonka NaveGo sisältää ja kshana jättää suunnitellusti pois (luotiviivapainovoima; täsmäsi Grovesin suljettuun muotoon joka numerolla, järkevyyslattian assertilla), sekä O(dt²)-integraattorierot; nämä eivät ole mekanisaatiovirheitä
Testit
tests/classical_strapdown_ins_reference.rs (staattinen/käännös/coning-profiilit, 30 epookkia kukin, vs NaveGo: asenne bitti-identtinen 0 rad; nopeus/paikka nimettyjen analyyttisten rajojen sisällä)
Ympyräratainen rajoitettu 9:2 L2:n eteläinen lähes suoraviivainen haloperrata, jonka cr3bp::differential_correct_halo korjaa (Gatewayn ja CAPSTONEn rataperhe), verrattuna keskimääräisen geometrian (jakso, perilunen säde, apolunen säde) osalta rataan, jonka CAPSTONE todella lensi. Mittaus siitä, kuinka hyvin CR3BP-jäsen kuvaa todellista rataa; CR3BP-rata ei ole efemeridimallin rata, eikä sitä verrata epookki epookilta
Oraakkeli
Mitattu JPL Horizonsin rekonstruoitua CAPSTONE-efemeridiä vasten (NAIF -1176, CAPSTONE_merged, Kuun keskipisteinen ICRF, 2023-03-01..31 10 min:n välein), arkistoitu tavu tavulta (tests/fixtures/capstone_horizons/, NOTICE.md), ennalta rekisteröity 4e868170 ennen sen hakemista, mittauksena kynnyksin keskimääräisestä geometriasta. Ei validointi: CR3BP jättää pois Auringon, Kuun eksentrisyyden ja CAPSTONEn tekemän ratojen ylläpidon, joten kynnykset kuvaavat, kuinka edustava mallirata on, eivät tarkkuutta. Tulokset: docs/design/evidence/cap29d-capstone-nrho/RESULTS.md
Testit
tests/capstone_nrho_horizons.rs::cr3bp_nrho_matches_capstone_mean_geometry (CAPSTONE maaliskuu 2023, 4 periluunia ja 5 apoluunia: kiertoaika 6,5004 d vs 6,5699 d (1,07 %, kynnys 3 %), apoluuni 71 182 vs 71 215 km (0,05 %, kynnys 5 %)…
ValidoituCR3BP:n pyörivän koordinaatiston tilat kuvattuna Kuun keskipisteiseen ICRF:ään DE440:n Maa–Kuu-linjallacr3bp (to_moon_centred_icrf,from_moon_centred_icrf,to_moon_centred_icrf_de440)
Ominaisuus
cr3bp::to_moon_centred_icrf kuvaa dimensiottoman Maa–Kuu CR3BP:n pyörivän koordinaatiston tilan Kuun keskipisteisen ICRF:n paikaksi ja nopeudeksi hetkellisellä Maa–Kuu-linjalla (pituusyksikkönä Maa–Kuu-etäisyys, aikayksikkönä käänteinen kiertonopeus, koordinaatiston täysi kulmanopeus mukaan lukien sen tason ulkopuolinen nopeus Kuun kiihtyvyydestä), käänteisellä funktiolla from_moon_centred_icrf, ja cr3bp::to_moon_centred_icrf_de440 lukee geosentrisen Kuun tilan DE440 SPK:sta. Se kuvaa tiloja; se ei tee CR3BP-radasta efemeridimallin rataa
Oraakkeli
NAIF SPICE Toolkit (CSPICE N0067 spiceypy 8.3.0 kautta) sxform kahden vektorin dynaamiselle koordinaatistolle (ensisijainen +X pitkin Kuun paikkaa Maan suhteen, toissijainen +Y pitkin sen nopeutta, de440s), sovellettuna SPICEn omasta Kuun tilasta rakennettuun dimensionaaliseen pyörivään tilaan, erillisellä ohjelmalla, joka ei kutsu mitään Kshana-koodia (tests/fixtures/cr3bp_to_mci_spice/, NOTICE.md). Ennalta rekisteröity 2313eb1b, muutettu ennen mitään ajoa tiedostossa d5ef79b3 sisältämään koordinaatiston tason ulkopuolisen kulmanopeuden (ilman sitä nopeus olisi enintään 8e-2 m/s pielessä). Vain muunnoksen Library-tarkistus. Tulokset: docs/design/evidence/rm34-cr3bp-to-mci/RESULTS.md
Testit
tests/cr3bp_to_mci_spice_oracle.rs::cr3bp_to_mci_matches_a_spice_two_vector_frame (72 tapausta: 12 epookkia tammikuussa 2025 x pisteet L1 ja L2, kaksi L2:n eteläistä halo-rataa ja yksi DRO-alkutila JPL:n Three-Body…
solar-system-tyyppi asetuksella planetary_kernel_path: jokainen raportoitu kappale, jonka oman NAIF-koodin SPK sisältää, ottaa heliosentrisen J2000-paikkansa ja -nopeutensa kernelistä moottorin oman lukijan kautta (selite KERNEL); linkki, jonka kumpikin pää on kernelissä, lasketaan sen pohjalta; barycentrejä ei koskaan korvata planeetalla, ja jokainen muu kappale pysyy analyyttisenä omalla selitteellään; raportti saa kernel-lohkon (polku, SHA-256, kernelistä otetut kappaleet ja linkit) vain, kun asetus on käytössä. Tiedostolla de440s.bsp ne ovat Merkurius, Venus, Maa ja Kuu
Oraakkeli
NAIF SPICE Toolkit (CSPICE N0067 spiceypy 8.3.0 kautta) spkezr heliosentriset tilat koko de440s.bsp-tiedostolla, erillinen ohjelma, joka ei kutsu mitään Kshana-koodia (tests/fixtures/solar_system_kernel/, NOTICE.md); moottori lukee bitti bitiltä de440s-leikkeitä. Ennalta rekisteröity f8e946ea. Kytkennän Library-tarkistus: DE440:ää itseään ja analyyttisiä kappaleita ei validoida tässä. Tulokset: docs/design/evidence/cap31-solar-system-kernel/RESULTS.md
Testit
tests/solar_system_kernel_oracle.rs::kernel_backed_solar_system_matches_spice (Merkurius, Venus, Maa ja Kuu hetkinä 2026-01-01, 2030-06-15 ja 2040-12-31: huonoin 3.3e-5 m ja 1.0e-11 m/s verrattuna arvoihin 1 mm ja 1e-6 m/s…
maneuver::porkchop_kernel: laukaisupäivä x saapumispäivä -pyyhkäisy lähtö-C3:lle (km²/s²) ja saapumisen V-infinity:lle (km/s) yhden kierroksen myötäkulkuisella Lambert-ratkaisijalla ja 0,5 asteen kollineaarisuusvartijalla, minkä tahansa kahden NAIF-kappaleen heliosentrisillä J2000-tiloilla, jotka paketin oma lukija lukee JPL DE440 SPK:sta. Yksi kierros, myötäkulkuinen, ei laukaisulaite- tai saapumisrajoitteita: pyyhkäisy, ei tehtäväsuunnitelma
Oraakkeli
NAIF SPICE Toolkit (CSPICE N0067 spiceypy 8.3.0 kautta) heliosentriset tilat tiedostolla de440s.bsp ja pykep 3.0.1 lambert_problem (ESA, C++ kep3 -ydin, MPL-2.0), riippumaton Lambert-ratkaisija, ajettu erillisenä ohjelmana, joka ei kutsu mitään Kshana-koodia (tests/fixtures/porkchop_de440/, NOTICE.md); moottori lukee bitti bitiltä de440s-leikkeen. Ennalta rekisteröity 2d857fb1. Pyyhkäisyn Library-tarkistus. Tulokset: docs/design/evidence/cap20b-porkchop-de440/RESULTS.md
Testit
tests/porkchop_de440_oracle.rs::de440_porkchop_matches_spice_and_pykep (Maasta Marsin barycentriin, 16 lähtöä 2026-09-01..2027-01-29 x 19 saapumista 2027-06-01..2028-02-26: 304 solua äärellisiä molemmilta puolilta, huonoin C3…
maneuver::optimise_transfer_kernel: yhden kierroksen ballistisen kahden impulssin siirtoradan lähtö- ja saapumispäivät, jotka minimoivat lähtö-C3:n tai saapumisen V-infinity:n tyypin I tai tyypin II sisällä, jatkuvana optimina (2 vuorokauden ruudukko molempien ikkunoiden yli, sitten 2D Nelder–Mead) DE440 SPK:n heliosentrisillä tiloilla. Päivämääräoptimoija yhdelle osuudelle, ei tehtäväsuunnitelma: ei laukaisulaite-, pysäköintirata-, syväavaruuskäänne- eikä monikierrosvaihtoehtoja
Oraakkeli
Riippumaton optimoija: NAIF SPICE Toolkit (CSPICE N0067 spiceypy 8.3.0 kautta) heliosentriset tilat samalla de440s-leikkeellä, pykep 3.0.1 lambert_problem (ESA, MPL-2.0) ja SciPy 1.18.1 Nelder–Mead, kutsumatta mitään Kshana-koodia. NASAn Maa–Mars-käsikirja (MIDAS, efemeridiä ei ilmoitettu, 2 vuorokauden päiväruudukko) on toissijainen julkaistu vertailu eikä määritä tilaa
Testit
tests/transfer_optimiser_oracle.rs::transfer_optimiser_matches_spice_pykep_scipy (Maasta Marsin barycentriin, lähdöt 2026-09-15..2027-01-15 x saapumiset 2027-05-01..2028-03-01, tyyppi I/II x min C3 / min V-infinity…
Jokainen Lambertin ongelman ratkaisu enintään kolmella täydellä kierroksella (maneuver::lambert_multirev: yhden kierroksen ratkaisu, sitten kunkin kierroslukumäärän vasen ja oikea haara, Izzo 2015), reunanopeuksilla v1 ja v2, myötä- ja vastapäiväisille siirtoradoille, kanonisissa ja heliosentrisissä SI-yksiköissä, mukaan lukien siirtoradat, joiden lentoaika on 1 %:n sisällä kierroslukumäärän vähimmäislentoajasta, sekä lähes 180 asteen geometriat. Vain kahden kappaleen ratkaisija (ei häiriöitä)
Oraakkeli
pykep 3.0.1 lambert_problem (ESA, C++ kep3 -ydin, MPL-2.0), riippumaton kirjasto, ajettu erillisenä ohjelmana skriptillä scripts/gen_lambert_multirev_ref.py; vain sen numeerinen tuloste on arkistoitu. Ennalta rekisteröity a75de851 (tapausjoukko, kynnykset, tulossääntö) ennen mitään vertailua; vertailu tuotettiin uudelleen riippumattomasti ja on tavu tavulta identtinen. Tulokset: docs/design/evidence/lambert-multirev/RESULTS.md
Testit
tests/lambert_multirev_oracle.rs::multirev_lambert_matches_pykep_on_the_preregistered_cases (382 tapausta: 300 satunnaista 3D-tapausta, 18 lähellä arvoa 180 astetta, 24 lähellä minimiaikaa, kun M = 1..3, 40 heliosentristä; 1058 ratkaisua; lukumäärät ja…
ValidoituLambertin kahden kappaleen siirtoratkaisijamaneuver (lambert)
Ominaisuus
Izzo-2015 yhden kierroksen Lambert-ratkaisija (r1, r2, lentoaika → reunanopeudet) LEO→GEO→heliosentristen siirtoratojen yli, myötä- ja vastapäivään
Oraakkeli
lamberthub 1.0.0 izzo2015 (J. Martínez Garrido, MIT), riippumaton kolmannen osapuolen Lambert-ratkaisija. Yhden kierroksen (M=0) Lambertin ongelmalla on yksikäsitteinen ratkaisu, joten kirjasto vastaan kirjasto -vastaavuus on aito ulkoinen tarkistus; täsmäsi tarkkuudella < 1e-4 m/s (havaittu ~1e-11), samanlainen validointi kuin DOP:lla vs. gnss_lib_py
Testit
tests/lambert_reference.rs (13 transfers vs lamberthub izzo2015; worst |Δv| 7e-12 m/s)
ValidoituKoordinaatistot ja aika-asteikotframes,precession,nutation,cio,timescales
Ominaisuus
IAU 2006/2000A -prekessio-nutaatio, CIO GCRS↔ITRS, karkaussekuntiaika-asteikot
Oraakkeli
IAU SOFA / ERFA -vertailuvektorit; Vallado AIAA 2006-6753 (0,1–4 mm)
ValidoituKaksiosaiset Julian-päivät ja karkaussekunnit Maan kiertoradan aikapolullajd2 (Jd2::from_utc_calendar,utc_to_tai,tai_to_utc,utc_to_ut1,tai_to_tt,earth_rotation_angle); sgp4 (Sgp4::new_at,Sgp4::propagate_at)
Ominaisuus
UTC-kalenteripäivä ja -aika kaksiosaiseksi UTC Julian -päiväksi SOFA dtf2d -konventiolla päiville, jotka päättyvät karkaussekuntiin (86 401 s pitkiä, 23:59:60.x kelvollinen), UTC TAI:ksi ja takaisin sekä UT1 UTC:stä TAI:n kautta kaksiosaisilla päivillä alkaen 1972-01-01: aikapolku, jonka SGP4 (Sgp4::propagate_at, mitattuna kaksiosaisesta epookista) ja IAU 2006/2000A Maahan kiinnitetty pyöriminen (sgp4::teme_to_itrs_matrix_eop kaksiosaisella Maan pyörimiskulmalla) ottavat
Oraakkeli
pyerfa 2.0.1.5 (liberfa 2.0.1, BSD-3-Clause; ERFA-projektin julkaisemat SOFA-algoritmit), riippumaton kirjasto: erfa.dtf2d("UTC"), erfa.utctai ja erfa.taiutc arkistoiduilla hetkillä, ero muodostettu osa osalta kaksiosaisilla päivillä, kynnys 1e-6 s lukittu ennen ajoa (ennalta rekisteröity e947e69d). Pahin ero 9.6e-12 s (dtf2d) ja 1.9e-11 s (utctai, taiutc). Jos jokainen UTC-päivä otetaan 86 400 s:ksi tai karkauspäivän osuutta ei skaalata, testi muuttuu punaiseksi. UT1 TAI:n kautta (iauUtcut1) tarkistetaan Earth-orbit path -rivin ERFA-osuudessa. Rajaus: UTC alkaen 1972-01-01; aiempaa ajautuvan nopeuden UTC:tä ei mallinneta
Testit
tests/jd2_sofa_time_oracle.rs (224 UTC-hetkeä: kuusi kunkin 27 karkaussekunnin ympärillä 1972-2016, kaksi kiinteää, 60 siemenluvulla arvottua väliltä 1972-2026; dtf2d, utctai ja taiutc kukin 1e-6 s sisällä, huonoin 1.9e-11 s); jd2::tests…
ValidoituKaksiosaiset Julian-päivät Maan pyörimisen läpi kiertoradan polullajd2 (gmst82,From<TwoPartJd>,From<Jd2>); cio (gcrs_to_itrs_matrix_jd2); frames (teme_to_itrf_jd2,itrf_to_teme_jd2); orbit (Propagator::position_in_frame_jd2,own_jd2_utc); ephemeris (EphemerisScenario::two_part_jd)
Ominaisuus
Maan pyöriminen kaksiosaisesta UT1 Julian -päivästä kiertoradan polulla, jotta Maahan kiinnitetty paikka säilyttää mikrosekunnin, jonka yksittäinen f64-päivä menettää (noin 3e-9 rad lähellä vuotta 2020): jd2::gmst82 (IAU 1982 GMST, TEME-konventio, kahdelle osalle), cio::gcrs_to_itrs_matrix_jd2 (CIO GCRS–ITRS-matriisi Maan pyörimiskulmalla kahdesta osasta) ja näiden päälle rakennettuina ja sisäisesti tarkistettuina frames::teme_to_itrf_jd2 / itrf_to_teme_jd2, orbit::Propagator::position_in_frame_jd2 ja own_jd2_utc, efemeridiskenaarion valinnainen two_part_jd (ECEF-paikka, maanpintajälki ja asemanäkymä; oletuksena pois päältä, muuttumaton) sekä häviöttömät From-muunnokset jd2::Jd2 ja timescales::TwoPartJd välillä. Prekessio-nutaatio ja Cowellin voimamallin epookki pysyvät yksittäisenä f64:nä, missä 40 us:n pyöristys on alle 1e-15 rad tai selvästi alle analyyttisen Auringon/Kuun efemeridin virheen
Oraakkeli
pyerfa 2.0.1.5 (liberfa 2.0.1, BSD-3-Clause; ERFA-projektin julkaisemat SOFA-algoritmit), riippumaton kirjasto: gmst82 ja c2t06a arkistoiduilla kaksiosaisilla päivillä, napaliike 0,1 ja 0,3 kaarisekuntia. Ennalta rekisteröity b10475ee (päivät, kynnykset) ennen kuin funktiot kirjoitettiin ja ennen kuin oraakkeli ajettiin. Sisäiset testit (skenaariovalinta, TEME/ITRF-edestakainen kierto, tyyppimuunnokset) ovat tukevaa itsejohdonmukaisuutta
Testit
tests/jd2_earth_rotation_erfa_oracle.rs::two_part_earth_rotation_agrees_with_erfa (40 kaksiosaista UT1/TT-päivämäärää 1980-2050 mukaan lukien +1, +10, +50 us:n askeleet kahtena päivänä: gmst82 1e-12 rad sisällä, huonoin 0; GCRS:stä ITRS:ään…
ValidoituKoordinaatistomatriisit ERFA-vektoreita vasten: IAU 2006 bias-prekessio, TEME GCRS:ksi ja CIO-ketju taivaan navan poikkeamillaprecession (precession_matrix); nutation (teme_to_gcrs_matrix); cio (gcrs_to_cirs_matrix_with_offsets)
Ominaisuus
Kolme koordinaatistomatriisia verrattuna alkio alkiolta tai kiertokulmalla ERFA:an mielivaltaisilla epookeilla: precession::precession_matrix (IAU 2006 bias-prekessio Fukushima–Williams-kulmilla), nutation::teme_to_gcrs_matrix (TEME GCRS:ksi -kierto P^T N^T Rz(-EE) IAU 2006 -prekessiolla, IAU 2000B -nutaatiolla ja päiväntasausten yhtälöllä kahdella johtavalla komplementaaritermillä) ja cio::gcrs_to_cirs_matrix_with_offsets (GCRS CIRS:ksi -kierto IERS-taivaan navan poikkeamilla dX, dY lisättynä mallin CIP X, Y -arvoihin ennen kiertoa, SOFA cookbook -konventio; uusi). Mallivalintoja itseään (2000B-nutaatio TEME-polulla, kahden termin komplementaarisarja) ei validoida, vain niiden toteutus
Oraakkeli
pyerfa 2.0.1.5 (liberfa 2.0.1, BSD-3-Clause; ERFA-projektin julkaisemat SOFA-algoritmit), riippumaton kirjasto: pmat06; numat(obl06, nut00b) päiväntasausten yhtälöllä funktiosta eect00 (täysi komplementaarisarja), koostettuna P^T N^T Rz(-EE); xys06a sitten c2ixys(X + dX, Y + dY, s). Ennalta rekisteröity 979c1e39 (epookit, poikkeamat ja kynnykset) ennen oraakkelin ajoa. 1.1e-10 rad:n TEME-jäännös on kahden komplementaaritermin säilyttämisen ennustettu vaikutus (noin 3 mm GNSS-radalla)
Testit
tests/frames_erfa_vector_oracle.rs::frame_matrices_agree_with_erfa_vectors (40 TT-epookkia 1950-2100, dX ja dY enintään 0,5 mas: prekessioelementit 1e-13 sisällä, huonoin 0; TEME:stä GCRS:ään 5e-10 rad sisällä, huonoin 1.10e-10 rad…
ValidoituEnnen vuotta 1972 oleva UTC (ajautuvan nopeuden aika) kaksiosaisella Julian-päivän aikapolullatimescales (tai_minus_utc_on_date); jd2 (Jd2::from_utc_calendar,utc_to_tai,tai_to_utc)
Ominaisuus
UTC 1960-01-01 – 1971-12-31, jolloin UTC kulki TAI:hin nähden poikkeavalla nopeudella ja siirtyi sekunnin murto-osilla, kaksiosaisella Julian-päivän polulla: TAI - UTC kunkin jakson ajautumataulukosta (timescales::tai_minus_utc_on_date), UTC-kalenteripäivä kaksiosaiseksi UTC Julian -päiväksi päivän pituudella 86 400 s + dleap (Jd2::from_utc_calendar), UTC TAI:ksi päivän osuus UTC:stä SI-sekunteihin skaalattuna (jd2::utc_to_tai) ja TAI takaisin UTC:ksi (jd2::tai_to_utc), SOFA dtf2d:n, utctai:n ja taiutc:n mukaisesti. Ennen vuotta 1960 TAI - UTC otetaan arvoksi 0 (SOFAn arvo; UTC määrittelemätön) ja se on väitteen ulkopuolella. Yksittäinen f64 timescales::tai_minus_utc rajaa yhä arvoon 10 s ennen vuotta 1972, eikä sitä katettu
Oraakkeli
pyerfa 2.0.1.5 (liberfa 2.0.1, BSD-3-Clause; ERFA-projektin julkaisemat SOFA-algoritmit), riippumaton kirjasto: erfa.dtf2d("UTC"), erfa.utctai ja erfa.taiutc arkistoiduilla hetkillä, ero muodostettu osa osalta. Ennalta rekisteröity 23c40661 (hetket, toleranssi ja 1972+-tarkistussumma) ennen moottorin muutosta ja ennen oraakkelin ajoa. Ajautumataulukko on jäljennetty samasta SOFA iauDat -taulukosta, jota oraakkeli käyttää, joten vertailu kattaa muunnoksen aritmetiikan (päivän pituus, UTC:n SI-skaalaus, iterointi), ei itse historiallista taulukkoa
Testit
tests/jd2_pre1972_sofa_oracle.rs::pre_1972_utc_conversions_agree_with_erfa (117 UTC-hetkeä: neljä kunkin 15 TAI-UTC-lausekkeen alun ympärillä 1960-1972 ja 60 siemenluvulla arvottua väliltä 1960-1971; dtf2d, utctai ja taiutc…
ValidoituGLONASSin lähetetty satelliittikello ja lähetetyn radan propagointiglonass (GlonassEphemeris::sv_clock_bias_s,position_ecef,parse_glonass_nav)
Ominaisuus
GLONASSin lähetetty satelliittikellon poikkeama -tau_n + gamma_n (t - t_b) satelliittikellosta luetulla ajalla (glonass::GlonassEphemeris::sv_clock_bias_s, poikkeama korjattuna kellon poikkeamalla kahdella kiintopisteiteraatiolla) ja lähetetyn tilavektorin PZ-90 Maahan kiinnitetty paikka propagoituna RK4:llä GLONASS ICD:n liikeyhtälöillä +/-15 min:n sisällä vertailuepookista (GlonassEphemeris::position_ecef), todellisista RINEX 3 GLONASS-navigointitietueista. PZ-90.11:stä ITRF:ään ei sovelleta muunnosta (ne täsmäävät senttimetritasolla vuodesta 2014 alkaen; RTKLIB ei sovella sellaista), ei kytketty skenaarion tulosteeseen: kirjastofunktio
Oraakkeli
RTKLIB v2.4.2-p13 (T. Takasu, BSD-2-Clause, commit 71db0ffa) geph2clk ja geph2pos, käännettynä C-lähdekoodista erillisessä testiympäristössä (xval/rtklib-glonass), joka lukee saman RINEX-tiedoston RTKLIBin omalla lukijalla, joten jäsennys, merkki -tau_n, yksiköt ja iterointi tulevat verratuiksi kellon ja radan lisäksi. Ennalta rekisteröity e099c42a ennen kuin funktio oli olemassa ja ennen kuin testiympäristö rakennettiin. Molemmat puolet laskevat saman kellon suljetun muodon, joten kellovertailu kattaa toteutuksen, ei kaavaa. Rataintegraattorit eroavat (RTKLIB askeltaa 60 s ja sitten jäännös, Kshana yhtä suurilla enintään 60 s:n askelilla) ja niin eroavat vakiot (RTKLIB mu 3.9860044e14, Kshana PZ-90.11:n 3.986004418e14); pahin tapaus 1,1 mm on tämä ero, kuten ennustettiin ennen ajoa. Rajaus: lähetetty efemeridi voimassaoloaikanaan, ei todellinen rata tai kello (ei vertailua tarkkoihin tuotteisiin)
Testit
tests/glonass_broadcast_rtklib_oracle.rs::glonass_broadcast_clock_and_orbit_match_rtklib (292 tapausta: todellisen 2013-01-01 IGS MGEX -lähetystiedoston 4 GLONASS-tietuetta x 73 siirtymää välillä +/-900 s; kello 1e-14 sisällä…
ValidoituYksi Maan kiertoradan polku: SGP4-elementtijoukot GCRS:ään ja ITRS:ään IAU 2006/2000A -ketjulla Maan orientaatioparametreillasgp4 (MeanElementSet,SgpOrbit,Eop,teme_to_itrs_matrix_eop,gcrs_to_itrs_matrix_eop); jd2 (utc_to_ut1,earth_rotation_angle); nutation (teme_to_gcrs_matrix); cio (gcrs_to_cirs_matrix); frames (polar_motion_matrix)
Ominaisuus
Propagointi- ja koordinaatistopolku, jonka jokainen reititetty Maan kiertoradan tyyppi jakaa: SGP4-keskielementtijoukko kaksiosaisella UTC-epookilla (sgp4::MeanElementSet, luettu tähdistösuunnittelun elementeistä funktiolla MeanElementSet::from_earth_fixed) propagoituna SGP4/SDP4:llä TEME:en (sgp4::SgpOrbit), sekä TEME -> ITRS- ja GCRS -> ITRS -kierrot IAU 2006/2000A -ketjussa UT1 - UTC:llä ja napaliikkeellä (sgp4::teme_to_itrs_matrix_eop, gcrs_to_itrs_matrix_eop, nollaparametriset muodot teme_to_itrs_matrix ja gcrs_to_itrs_matrix). TEME on päivän todellinen päiväntasaaja keskimääräisellä päiväntasauksella, johon päästään GCRS:stä IAU 2006 bias-prekessiolla, IAU 2000B -nutaatiolla ja päiväntasausten yhtälöllä
Oraakkeli
Osuus 1: python-sgp4 2,24 (MIT-lisenssi; D. Valladon C++-vertailu-SGP4, koodi, joka tuotti AIAA 2006-6753 -verifiointivektorit), WGS-72, parannettu tila. Osuus 2: pyerfa 2.0.1.5 (ERFA, BSD-3-Clause, SOFA-rutiinit): c2t06a TT:llä funktioista utctai/taitt ja UT1:llä funktiosta utcut1, ja TEME:lle c2t06a . pnm06a^T . rz(-ee06a). Kynnykset lukittu ennen ajoa (ennalta rekisteröity 72ea9eb0). Ilmoitettu: ensimmäinen ajo epäonnistui osuudessa 2 hetkellä 2016-12-31T23:59:59,5 yhden sekunnin pyörimisellä (UT1 otettu UTC:n kvasi-Julian-päivästä karkaussekuntipäivänä); moottori korjattiin (jd2::utc_to_ut1) ja toinen ajo täsmää muuttumattomilla kynnyksillä. Napaliikkeen pudottaminen (46 epäonnistumista) tai WGS-84-vakiot WGS-72:n sijasta (4432 epäonnistumista) tekevät testistä punaisen. Tämä kolmen osuuden rakenne korvasi päästä päähän -Orekit-vertailun, joka epäonnistui Orekitin SDP4:ssä kun e = 0 ja sen IERS 1996 TEME:ssä (löydös pysyy lukittuna tiedostossa tests/leo_polar_coverage_full_claim_orekit_oracle.rs)
Testit
tests/earth_orbit_path_sgp4_erfa_oracle.rs (osuus 1: 4432 TEME-paikkaa 232 tallennetusta elementtijoukosta python-sgp4-ohjelmaa 2,24 vasten, huonoin 6.1e-8 m, kynnys 1 cm; osuus 2: 108 hetkeä, joista 23 Maan orientaatiolla…
MallinnettuPaikkavirhe geometriasta: RMS-virhe = sigma_UERE x DOP moottorin pienimmän neliösumman paikanteelledop_error_mc (run_geometry,check,TOLERANCES); dop_error_ci (run,GEOMETRIES); pvt (solve_spp); orbit (dop,dop_cofactor)
Ominaisuus
dop_error_mc::run_geometry ja check: siemenluvulla toistettava Monte Carlo (N = 20 000 epookkia geometriaa kohti, sigma = 1,5 m, ChaCha8-siemenluku 36 + i) moottorin oman iteroidun pienimmän neliösumman paikanteen (pvt::solve_spp, yksikköpainot, ratkaistu todellisesta paikasta) yli tiedoston tests/fixtures/dop/dop_reference.csv 8 geometrialla, vertaillen itä-, pohjois-, ylös- ja kellovirheen variansseja, H/V/P-RMS:ää, itä–pohjoinen-korrelaatiota, keskivirheitä ja 95 %:n vaakaellipsin sisään osuvaa osuutta sigma^2 Q:lla, missä Q on orbit::dop-ytimen kovarianssitekijä (orbit::dop_cofactor, sama aritmetiikka) samalla geometrialla
Oraakkeli
Sisäinen johdonmukaisuus suljettua muotoa vasten: lineaarisessa gaussisessa mallissa pienimmän neliösumman kovarianssi on sigma^2 (H^T H)^-1 (Kaplan ja Hegarty (toim.), Understanding GPS: Principles and Applications, 2. painos, Artech House, 2006, luku 7). Menetelmä ja toleranssit 0,36 -geometriasuunnitelman muistiosta, kohta 5,2, lukittu ennakkorekisteröintiin ennen ensimmäistä ajoa: kukin varianssi 5 %:n sisällä (5 otosvarianssin keskivirhettä kun N = 20 000), kukin RMS 2,5 %:n sisällä, itä–pohjoinen-korrelaatio 0,035:n sisällä (5/sqrt(N)), kukin keskiarvo 5 keskivirheen sisällä, 95 %:n ellipsiosuus 0,95 +/- 0,0077 (5 binomiaalista keskivirhettä); negatiivisten kontrollien (PDOP kaksinkertaistettuna; virheet kasvavat kuten 1/sin(korkeuskulma) painottamatonta Q:ta vasten) on epäonnistuttava. MITEN SE KOOSTUU: Q on orbit::dop-ytimen kovarianssitekijä, VALIDATED gnss_lib_py 1.0.4 -kirjastoa vasten samoilla 8 geometrialla tiedostossa tests/dop_reference.rs (rivi ’GNSS geometry / dilution of precision’); tämä rivi lisää askeleen näistä tekijöistä metreihin moottorin ratkaisijan kautta eikä lainaa sen rivin tilaa. MIKSI MODELLED: mukana ei ole ulkoista aineistoa; vastaavuus osoittaa, että estimaattori ja kohina toteuttavat sigma x DOP -tuloksen oppikirjamallissa, ei että minkään vastaanottimen virhe olisi UERE x DOP, ja sigma_UERE on syöte
Testit
tests/uere_dop_monte_carlo.rs (position_error_is_sigma_times_dop_on_the_gnss_lib_py_geometries: kaikki 104 tarkistusta läpäistiin ensimmäisellä ajolla ennakkorekisteröinnin e50c88d2 jälkeen, huonoin varianssi 3,2 %, RMS 1,6 %, korrelaatio 0,012…
MallinnettuGeometriatietoinen luottamusluokitus: satelliittigeometria vastaanottimen luottamuspistemäärän rinnalla ja luokka jokaiselle vähennyksellereceiver_trust (geometry: GeometryTracker,geometry_ratio,sky_ratio,geometry_points,GeometryLabel; score: DeductionClass,score_with; monitors; live); telemetry (sample,prometheus,syslog,otlp)
Ominaisuus
receiver_trust::geometry: epookkikohtainen satelliittigeometria (hyvä, heikentynyt syillä few-satellites/high-pdop/high-hdop/sky-blocked, tai tuntematon, kun loki ei anna GSV-, NAV-SAT- tai GSA-tietoa) johdettuna raportoiduista korkeus- ja atsimuuttikulmista funktiolla orbit::dop tai otettuna GSA:sta, jolloin selite raportoidaan aina eikä sitä koskaan pisteytetä (good, fair, poor, unknown), sekä HDOP, PDOP, VDOP, satelliittien lukumäärä ja signaalin menetys sanoin; aluksen pistemäärän geometriavalvonta, joka ei vähennä mitään ellei geometria ole huono (suhde max(hdop/4, pdop/6, 5/n_used) yli 1) ja nousee sitten 15 pisteen kattoon arvolla 1,5, jota pelkkä geometria ei voi viedä heikentyneen vyöhykkeen alle (katto, nousun loppu ja lattia kohdassa [geometry]; ei hälytystä); luokka jokaiselle vähennykselle (geometry, environment, inconsistency), jossa lukituksen menetys alle 15 asteen satelliiteille luokitellaan geometry, näkyvissä mutta seuraamatta olevat satelliitit environment, ja huonon geometrian vähennys, jonka ilmoitettu HDOP on yli max(1,0, 25 % johdetusta HDOP:sta) ilmoitetusta taivaasta, luokitellaan inconsistency
Oraakkeli
Sisäinen johdonmukaisuus: luokitus tarkistetaan sen ilmoittamia sääntöjä vasten ja käsin johdettuja suhteita vasten arkistoidun demolokin synteettisillä muokkauksilla, ja ei-muutos-lukitukset pitävät 0.35.0 -tulosteet: pistemäärä ei muutu ellei geometria ole huono; selite raportoidaan aina. MIKSI MODELLED: kynnykset on valittu, ei sovitettu (alkuperä kunkin ajon geometry_model-kentässä; IEC 61108-1- ja GPS SPS -luvut sellaisina kuin ne on siteerattu, tarkistettava standardien tekstistä), eikä ole ulkoista nimettyä aineistoa luonnollisesta geometrian heikkenemisestä hyökkäyksiä vasten, jota vasten luokitus voitaisiin validoida. Johdettu DOP käyttää uudelleen orbit::dop-ydintä, VALIDATED gnss_lib_py:ta vasten, jonka tilaa tämä rivi ei lainaa. Geometrialuokka on lausuma taivaasta, ei löydös siitä, ettei hyökkäystä tapahtunut
Testit
tests/natural_degradation_trust.rs (a_stated_skyline_reads_the_fjord_as_geometry: skenaarion scenarios/training/fjord-natural-degradation.toml synteettisellä vuonoreitillä samat 624 epookkia vähennetään sekä kanssa että ilman…
Jakaumaydin, jolle jokainen suojaustaso perustuu: hetkellisen vianhavaitsemisen kynnys χ²₁₋ₚfₐ(dof), havaitsematta jääneen tapahtuman epäkeskisyys pbias=√λ ja K_fa/K_md/K_V-ratkaisuerotuskertoimet
Oraakkeli
SciPy 1.17.0 (scipy.stats.chi2/.norm/.ncx2 + optimize.brentq), riippumaton kirjasto (Cephes/Boost), eri algoritmi kuin Kshanan epätäydellinen gammasarja; täsmää tarkkuudella ≤1e-6 suhteellisena. Vain ydin. ARAIM MHSS:n P_HMI-budjetin *allokaatiolla* ei enää ole julkaisematonta numeerista oraakkelia: WG-C ARAIM Technical Subgroupin oma työstetty esimerkki tukee nyt erillistä riviä ’ARAIM MHSS protection levels against published reference vectors’, täsmäten vertailun omalla TOL_PL = 5e-2 m -arvolla; tämän rivin rajaus on siis tilastollinen ydin ja tuo rivi kantaa allokaation (ks. docs/ARAIM_REFERENCE.md)
Testit
tests/raim_reference.rs (171 cases: χ² CDF/quantile, normal CDF/quantile, non-central χ² CDF, pbias across the P_fa/P_md/redundancy ranges)
ValidoituSBAS-suojaustaso (DO-229E painotettu LS HPL/VPL)sbas (sbas_protection_level)
Ominaisuus
DO-229E Appendix J:n painotetun pienimmän neliösumman suojaustasot: D=(GᵀWG)⁻¹ satelliittikohtaisesta korkeus-/atsimuuttikulmasta ja virhebudjetista, vaakavirheellipsin pääakseli ja pystysuuntainen σ, skaalattuna julkaistuilla K-kertoimilla
Oraakkeli
RTKLIB SBAS-PL-haarukka: zsiki/rtklib_ws waasprotlevels() (Siki & Takács 2017, ”DO-229D Appendix J”), ajettu komennolla rnx2rtkp -ws todellisilla EGNOS GEO-PRN120 -viesteillä + todellisella BUTE/Budapest RINEX:llä; riippumaton kolmannen osapuolen toteutus, HPL täsmäsi tarkkuudella < 2e-3 m. gLAB v6.0.0 (core/filter.c) vahvisti identtisen konvention. Molemmat oraakkelit pyöristävät K_V→5,33 vs. Kshanan tarkka Φ⁻¹(1−5e-8)=5,3267 (~0,06 %), joten pystysuuntaa tarkistetaan K-kertoimettomana d_U:na
ppigrf 2.1.0 (K. M. Laundal, MIT), IAGA-VMOD:n puhtaasti Pythonilla tehty IGRF-vertailutoteutus, joka toimittaa viralliset IGRF14.shc-kertoimet (IAGA 14. sukupolvi, Zenodo 10.5281/zenodo.14012302); riippumaton kolmannen osapuolen koodikanta, joka laskee yksikäsitteisesti määritellyn IGRF-14-kentän, täsmäsi globaalilla ruudukolla
Testit
tests/alternative_complementary_pnt_reference.rs (2520 global points × altitudes vs ppigrf @ epoch 2025.0; worst |ΔXYZF| 3.9e-4 nT, |ΔD| 2.8e-6°, |ΔI| 3.6e-7°)
ValidoituHavaitsemistilastot: gaussinen AUC ja pienin havaittava vikaquantum_faults,eval_stats,detection
Ominaisuus
Analyyttinen binormaalinen ROC AUC = Φ(μ/(σ√2)) ja pienin havaittava vika σ·(Φ⁻¹(1−P_fa)+Φ⁻¹(P_d)), joka tukee kvanttivika- ja poikkeamailmaisimia
Oraakkeli
scipy 1,17 (Cephes ndtr/ndtri) + scikit-learn roc_auc_score (Pedregosa ym., JMLR 2011), molemmat BSD-3-Clause, riippumattomia kirjastoja, jotka laskevat samat yksikäsitteisesti määritellyt gaussisen hännän / AUC-suureet, täsmäten A&S-erf-lattiaan (~7e-8). Niiden päälle rakennettu kvantti vs. klassinen -etu pysyy MODELLED-tasolla
Järjestyskorrelaation ja uudelleenotannan ytimet kestävyyden päätösepävakauden tutkimuksen alla: Kendall τ-b, Dirichlet-keskiarvo, kilpailujärjestys ja persentiililuottamusvälit
Oraakkeli
scipy 1,18 (stats.kendalltau variant='b', rankdata) + numpy.percentile (BSD-3-Clause), riippumattomia toteutuksia (merge-sort τ) yksikäsitteisesti määritellyistä järjestystilastoista, täsmäten tarkkuudella 1e-12. Näiden ytimien päälle rakennettu päätösepävakauden tutkimus pysyy MODELLED-tasolla
Saatyn (1980) kanoninen satunnaisindeksitaulukko (RI(5)=1,12) toistettuna täsmälleen + SciPy/LAPACK scipy.linalg.eig (BSD-3-Clause) riippumattomana ominaisratkaisijana, joka laskee saman yksikäsitteisesti määritellyn Perronin ominaisvektorin/ominaisarvon, täsmäten tarkkuudella <1e-9. Tämän ytimen päälle rakennettu Pareto / herkkyys / MAUT-päätöskerros pysyy MODELLED-tasolla (WSM/WPM/TOPSIS/VIKOR/PROMETHEE/ELECTRE-aggregaattorit validoidaan erikseen ulkoisesti, ks. alla olevat rivit)
Weighted Sum Model (min–max-normalisoitu additiivinen aggregaatti + järjestys) ja Weighted Product Model (summanormalisoitu, kustannukselle käänteisluku, multiplikatiivinen aggregaatti), kaksi arvoaggregoinnin kompromissitutkimuksen pisteyttäjää
Oraakkeli
pymcdm (methods.WSM + normalizations.minmax_normalization; methods.WPM + normalizations.sum_normalization), riippumaton, laajasti käytetty kolmannen osapuolen Python-MCDA-kirjasto, joka laskee samat yksikäsitteisesti määritellyt painotetut aggregaatit; täsmää tarkkuudella <1e-9. Uudelleentuotettavissa offline-tilassa hakemistoilla tests/fixtures/mcda_wsm/ ja tests/fixtures/mcda_wpm/. Roskaa sisään, roskaa ulos syötteille; herkkyys-/robustiuskerros pysyy MODELLED-tasolla
Testit
tests/mcda_wsm_reference.rs (WSM-pisteet + järjestys) ja tests/mcda_wpm_reference.rs (WPM-pisteet + järjestys), kumpikin vs pymcdm tarkkuudella <1e-9 kiinteällä 4×3 hyöty/kustannus-päätösmatriisilla
ValidoituMCDA:n etäisyys ihanteeseen -järjestys (TOPSIS)mcda::topsis
Ominaisuus
Technique for Order of Preference by Similarity to Ideal Solution: min–max-normalisointi, painotetut positiiviset/negatiiviset ihanneratkaisut, suhteellinen läheisyys Cᵢ = d⁻/(d⁺+d⁻) ja järjestys
Oraakkeli
pymcdm methods.TOPSIS + normalizations.minmax_normalization, riippumaton kolmannen osapuolen MCDA-kirjasto, joka laskee samat yksikäsitteisesti määritellyt läheisyyskertoimet; täsmää tarkkuudella <1e-9. Uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mcda_topsis/generate_topsis_reference.py
Preference Ranking Organization METHod – pareittainen preferenssi-indeksi kuudella standardilla yleistetyn kriteerin muodolla, positiiviset ja negatiiviset ohittavuusvirrat sekä täydellinen nettovirtajärjestys (tavallinen kriteeri validoitu)
Oraakkeli
pymcdm methods.PROMETHEE_II('usual') – riippumaton kolmannen osapuolen MCDA-kirjasto, joka laskee saman yksikäsitteisesti määritellyn nettoohittavuusvirran; täsmäytys tarkkuuteen <1e-9. Uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mcda_promethee/generate_promethee_reference.py. Kynnysarvoilla varustetut (q/p/σ) preferenssimuodot palautuvat samaan yleistetyn kriteerin algebraan, ja niiden ominaisuudet tarkistetaan edelleen
Testit
tests/mcda_promethee_reference.rs (nettoylittävyysvirta + järjestys, tavallinen kriteeri, vs pymcdm tarkkuudella <1e-9 kiinteällä 4×3 hyöty/kustannus-matriisilla)
ELimination Et Choix Traduisant la REalité – konkordanssi- ja diskordanssimatriisit, konkordanssin ja ei-veton dominanssirelaatio sekä ohittavuuden valintaydin (kaikki hyötykriteerejä, summalla normalisoidut painot, yksi yhteinen asteikko)
Oraakkeli
pyDecision algorithm.electre_i (Valdecy Pereira) – riippumaton kolmannen osapuolen monikriteeripäätöskirjasto, joka laskee saman yksikäsitteisesti määritellyn konkordanssin, diskordanssin, dominanssin ja ytimen; täsmäytys alkio alkiolta tarkkuuteen <1e-9. Uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mcda_electre/generate_electre_reference.py. Kynnysten ĉ/d̂ valinnat ovat analyytikon syötteitä (herkkyysanalyysi pysyy tasolla MODELLED)
Testit
tests/mcda_electre_reference.rs (konkordanssi-, diskordanssi- ja dominanssimatriisit alkioittain + ydin-/dominoitu joukko vs pyDecision tarkkuudella <1e-9 kiinteällä 4×3 pelkkiä hyötyjä sisältävällä aineistolla)
Weighted Aggregated Sum Product ASSessment (lineaarisesti normalisoitu konveksi yhdistelmä λ·WSM+(1−λ)·WPM arvolla λ=0,5) ja MOORA-suhdejärjestelmä (vektorinormalisoitu painotettu hyötysumma miinus painotettu kustannussumma) – vakautettu arvoyhdistelmä ja etumerkillinen suhdejärjestelmän pisteytin
Oraakkeli
pymcdm (methods.WASPAS + normalizations.linear_normalization, l=0,5; methods.MOORA ratio system, vector normalisation) – riippumaton, laajalti käytetty kolmannen osapuolen Python-MCDA-kirjasto, joka laskee samat yksikäsitteisesti määritellyt aggregaatit; täsmäytys tarkkuuteen <1e-9. Uudelleentuotettavissa offline-tilassa hakemistoilla tests/fixtures/mcda_waspas/ ja tests/fixtures/mcda_moora/. Roskaa sisään, roskaa ulos syötteiden osalta; herkkyys- ja robustisuuskerros pysyy tasolla MODELLED
Testit
tests/mcda_waspas_reference.rs (WASPAS-preferenssit + järjestys) ja tests/mcda_moora_reference.rs (MOORA-pisteet + järjestys), kumpikin vs pymcdm tarkkuudella <1e-9 kiinteällä 4×3 hyöty/kustannus-päätösmatriisilla
COmplex PRoportional ASsessment – sarakesummalla normalisoitu hyötymerkitys S⁺ sekä käänteiskustannusmerkityksen termi, suhteellinen merkitys Q ja hyötyaste U = Q/max Q (paras vaihtoehto = 1)
Oraakkeli
pyDecision algorithm.copras_method (Valdecy Pereira) – riippumaton kolmannen osapuolen MCDA-kirjasto, joka laskee saman yksikäsitteisesti määritellyn COPRAS-suhteellisen merkityksen ja hyödyn. pyDecision on valittu tarkoituksella: pymcdm 1.4.0 -kirjaston COPRAS supistuu algebrallisesti triviaaliksi lausekkeeksi S⁺+S⁻, eikä se ole uskollinen vertailu, kun taas pyDecision toteuttaa kanonisen lausekkeen Q = S⁺+(min(S⁻)·ΣS⁻)/(S⁻·Σ(min(S⁻)/S⁻)). Täsmäytys tarkkuuteen <1e-9; uudelleentuotettavissa offline-tilassa tiedostolla tests/fixtures/mcda_copras/generate_copras_reference.py
ValidoituCUSUM-muutoksenhavaitsemisen viive ja ARLtpl (Cusum),security
Ominaisuus
Taulukkomuotoisen CUSUM-ilmaisimen pahimman tapauksen havaitsemisviive (⌊h/(z−k)⌋+1) ja hallinnan ulkopuolinen keskimääräinen ajopituus, joita käyttävät ajoituksen suojaustason ja harhautuksen monitorit
Oraakkeli
Julkaistu taulukkomuotoinen CUSUM-ARL: Siegmundin (1985) Brownin liikkeen approksimaatio (Hawkins & Olwell 1998, yhtälö 3,7), ristiinankkuroitu Montgomeryn teoksen Introduction to Statistical Quality Control (Wiley) ARL-taulukoihin arvoilla k=½, h∈{4 5}; deterministinen viive täsmää tarkasti ensiläpäisyoraakkeliin. Koottu TPL-raja pysyy tasolla MODELLED
Testit
tests/timing_protection_level_under_spoofing_reference.rs (16 deterministisen viiveen tapausta TÄSMÄLLEEN vs ensimmäisen läpäisyn oraakkeli; 8 ARL₁-tapausta, Monte Carlo @60k kokeilua vs Siegmundin approksimaatio + julkaistu Montgomery…
ValidoituKellon holdover-vaiheen varianssi ja kynnyksen käänteisfunktioholdover (coast_phase_variance,holdover_seconds)
Ominaisuus
Holdover-vaiheen vaihevirheen varianssin kasvu q_wf·t + q_rw·t³/3 + q_drift·t⁵/20 ja sen monotoninen käänteisfunktio aikavirheen holdover-kynnykseksi
Oraakkeli
scipy 1,18 (BSD-3-Clause): linalg.expm laskee Van-Loanin 1978 diskreetin prosessikohinan Q₀₀ = ∫₀ᵗ ΦQcΦᵀds Padé-skaalaus-ja-neliöinti-menetelmällä laajennetusta matriisista, jonka koko on 6×6 – riippumaton reitti, joka ei koskaan näe kshanan polynomikertoimia; lisäksi optimize.brentq kääntää saman monotonisen käyrän kshanan bisektiota vasten. Luokkakohtaiset punaisen kohinan lattialuvut (ClockClass) pysyvät tasolla MODELLED
Testit
tests/gnss_denied_clock_holdover_reference.rs (27 cases vs scipy 1.18: 12 coast-variance vs linalg.expm Van-Loan Q₀₀ worst rel 1.1e-15; 7 holdover inversions vs optimize.brentq worst rel 1.5e-16)
Tehokas arkkitehtuurinen monimuotoisuus = käänteinen Simpson / Hillin kertaluvun 2 luku 1/Σpᵢ² riippumattomuusryhmäkohtaisten lähdelaatujen yli (kestävyyspisteytyksen monimuotoisuustermi)
Oraakkeli
scikit-bio 0.7.3 skbio.diversity.alpha.inv_simpson (McDonald ym., BSD-3-Clause) – riippumaton kolmannen osapuolen kirjasto, joka laskee yksikäsitteisesti määritellyn käänteisen Simpson-indeksin; toistettu tavu tavulta. Sen päälle rakennettu DHS-RPCF-pisteytyskehys (painot/tasot) pysyy tasolla MODELLED
ValidoituAtsimuutista riippuva horisonttimaski: näkyvä joukko, atsimuutti ja korkeuskulma sekä DOP maskin allaskyline (Skyline::cut_deg,Skyline::visible); frames (look_angles,is_visible_skyline); orbit (UserPath,sky_view,cofactor_from_los); geometry (sky_geometry)
Ominaisuus
skyline + frames::look_angles + geometry::sky_geometry: satelliitin geodeettinen (WGS-84) atsimuutti ja korkeuskulma maa-asemalta, atsimuutti/korkeuskulma-maskitaulukko, joka interpoloidaan lineaarisesti atsimuutin suhteen kiertäen kohdassa 360 astetta, näkyvä joukko el >= max(mask_deg, mask(az)) sekä tämän joukon yhteisen kellon DOP ja ENU-ja-kello-kofaktorimatriisi (ytimen, jonka varassa orbit::dop on). Näin [skyline]-osio ratkaisee näkyvyyden skenaariolajeissa gnss-sim, jamming, leo-pvt, leo-pass ja nmea-scenario sekä maa-aseman user_site kanssa lajeissa orbit ja integrity
Oraakkeli
Orekit 12,2 (Apache-2.0): TopocentricFrame WGS-84 OneAxisEllipsoid -pinnalla katselukulmia varten ja ElevationMask taulukkoa kohti; ajaa xval/orekit-skyline/OrekitSkyline.java sitoutetuilla Maan kiinteän koordinaatiston tiloilla (etenemistä ei verrata), ja gnss_lib_py 1.0.4 (wheel-metatiedot MIT) get_dop laskee DOP:n sekä Orekitin näkyviksi toteamien joukkojen ENU-ja-kello-DOP-matriisin. Ennakkorekisteröity (xval/orekit-skyline/PREREGISTRATION.md, commit e4b9d912) ennen kuin kumpaakaan oraakkelia ajettiin vertailusyötteillä; Orekitin lineaarinen kiertävä interpolointi varmistettiin etukäteen synteettisellä koetinkokeella. Laajuus: taulukkomaskit, geodeettiset katselukulmat, maskattu näkyvä joukko ja sen yhteisen kellon DOP sekä kofaktori. Tässä EI tarkisteta: kanjoni-, sektori- ja maastovähennyksiä eikä esiasetuksia (niiden 360 pisteen taulukot tulevat syötteinä; rivit 'Street-canyon, sector and terrain reductions to a table' ja 'Skyline presets'), järjestelmäkohtaisia kellotiloja eikä virhe-ellipsiä (rivi 'Horizontal error ellipse and per-system cofactor from the geometry covariance'), maa-aseman user_site GMST-kiertoa tiloissa orbit/integrity eikä sitä, että kukin propagaattori ajoitetaan yhteen hetkeen (Orekitille annetaan Maan kiinteän koordinaatiston tilat), eikä todellista näkemäestettä (vain näköyhteys)
Testit
tests/skyline_orekit_oracle.rs (skyline_masks_agree_with_orekit_and_gnss_lib_py_as_pre_registered: 1173 katselukulmaa kuudessa paikassa ja neljänä epookkina, kuusi maskitaulukkoa, 142 näkyvää joukkoa; huonoin |d el| 1.3e-13 astetta ja |d az|…
MallinnettuKatukanjonin, sektorien ja maaston supistaminen taulukoksiskyline (Canyon::cut_deg,Sector::contains,TerrainPoint::elevation_deg,reduce_terrain,SkylineCfg::build)
Ominaisuus
skyline: katukanjoni suljetussa muodossa (leikkaus atan((h - a) / d), jossa d = (w/2) / abs(sin(az - s)), avoimet päät äärelliselle pituudelle), teräväreunaiset sektorit myötäpäivään kiertäen sekä maastopisteet taulukoksi supistettuina kaarevuuspudotuksella d^2/(2 * 4/3 R); horisonttiviiva on niiden pisteittäinen maksimi minkä tahansa taulukon kanssa
Oraakkeli
Sisäinen: suljetut muodot tarkistetaan käsin laskettuja arvoja vasten (annetun kadun seinien yläreunojen korkeuskulmat, avoimen pään ehto, annetun pisteen kaarevuuspudotus). Ulkoista oraakkelia ei ole: suunnitteluselosteessa nämä supistukset rajataan tasolle MODELLED, ja Orekitin ElevationMask ottaa taulukon, joten rivin 'Azimuth-dependent skyline mask: visible set, azimuth and elevation, and DOP under the mask' vertailu lukee niiden 360 pisteen taulukot syötteinä eikä tarkista niitä
skyline::PRESETS: neljä REPRESENTATIVE-geometriaa suunnitteluselosteen ilmoittamilla mitoilla ja kullakin yhden rivin alkuperämerkintä: city-street (kanjoni, katu 0 astetta, 20 m 30 m korkeiden seinien välissä, antenni 1,5 m), harbour-approach (sektorit: avoin merelle 180 asteen alalla, satamarakennukset 8 astetta 90 asteen alalla, aallonmurtaja 3 astetta), fjord (maasto: seinät 600 m antennin yläpuolella 1,5 km:n päässä molemmin puolin pohjois-eteläsuuntaista väylää, kaarevuuspudotus huomioitu), container-terminal (sektorit: kontit 12 astetta maanpuoleisella puoliskolla, nosturin puomit 35 ja 25 astetta kahdella kapealla sektorilla); ohitettavissa kenttä kerrallaan
Oraakkeli
Ei mitään: valitut ja ilmoitetut mitat, ei minkään kadun, sataman, vuonon tai terminaalin kartoitus (kadun sivusuhde on Oken (1988) vaihteluvälillä 0.5–2; vuono on länsinorjalaisten vuonojen suuruusluokkaa; kontit käyttävät ISO 668 -high-cube-korkeutta). Testi tarkistaa esiasetukset niiden omia ilmoitettuja mittoja vastaan, mikä on kirjoitusvirheiden tarkistus, jota validointisääntö ei laske
ValidoituVaakavirheen ellipsi ja järjestelmäkohtainen kofaktori geometrian kovarianssistageometry (sky_geometry,ellipse); orbit (cofactor_from_los)
Ominaisuus
geometry::sky_geometry: ENU-ja-kello-kofaktori (H^T H)^-1, jossa yksi vastaanottimen kello on yhteinen tai yksi järjestelmää kohti (ydin orbit::cofactor_from_los), sekä vaakavirheen ellipsi sen itä-pohjoinen-lohkosta (isoakselit k sigma sqrt(lambda), k = sqrt(-2 ln(1 - p)), pääakselin atsimuutti pohjoisesta)
Oraakkeli
numpy 2.5.4 (BSD-3-Clause), xval/numpy-ellipse/ellipse.py: numpy.linalg.inv matriisille G^T G ja numpy.linalg.eigh sen vaakalohkolle sitoutetuilla syötteillä, riippumaton numeerinen kirjasto, joka suorittaa käänteismatriisin ja ominaishajotelman omilla algoritmeillaan (standardi P2). Ennakkorekisteröity tiedostossa xval/numpy-ellipse/PREREGISTRATION.md (commit 0bbeeaee) ennen ajoa; ajurin tulostusmuotoilu korjattiin kerran ennakkorekisteröinnin jälkeen (numpy-skalaari kirjoitettuna muodossa np.float64(...)), ilman muutosta protokollaan tai toleransseihin. Validoitu väite on lineaarialgebra näillä syötteillä; gaussinen virhemalli ja UERE ovat ilmoitettuja syötteitä, eivät mitattu tarkkuus eivätkä eheysraja
Testit
tests/ellipse_numpy_oracle.rs (ellipse_and_cofactor_agree_with_numpy_as_pre_registered: 270 tapausta, vertailun 142 tallennettua näkyvää joukkoa skyline-vertailusta yhdellä yhteisellä kellolla ja yhdellä kellolla järjestelmää kohti; huonoin…
MallinnettuTaivaan geometriafunktiot: näkyvyys, DOP, kovarianssi, virhe-ellipsi, Monte Carlo -pilvigeometry; orbit (cofactor_from_los,dop_cov,dop); surface (sky_geometry,sky_monte_carlo,skyline_presets,skyline_profile,skyplot_svg)
Ominaisuus
geometry (sky_geometry, sky_monte_carlo, skyline_presets, skyline_profile, skyplot_svg; CLI kshana sky ja kshana skyline, Python- ja WASM-funktiot samoilla nimillä, MCP sky_geometry): paikasta, ajasta ja tähdistöesiasetuksista (tai atsimuutti/korkeuskulma- tai ECEF-satelliiteista) lasketaan näkyvät ja horisontin alla maskatut satelliitit, GDOP/PDOP/HDOP/VDOP/TDOP, yksikkövarianssin kofaktori (H^T H)^-1 ja kovarianssi itä-pohjoinen-ylös-koordinaatistossa yhdellä vastaanottimen kellolla järjestelmää kohti tai yhdellä yhteisellä, vaakavirheen ellipsi (isoakselit k sigma sqrt(lambda), k = sqrt(-2 ln(1 - p)), suunta 0,5 atan2(2 Q_EN, Q_NN - Q_EE) pohjoisesta) sekä n siemenellä alustettua pienimmän neliösumman virhettä riippumattomilla gaussisilla etäisyysvirheillä, niiden empiirinen kovarianssi, RMS ja 95 %:n kattavuus. Kofaktori on orbit::cofactor_from_los, ainoa ydin orbit::dop:n ja orbit::dop_cov:n takana (dop on dop_cov:n supistus): ei toista DOP-toteutusta
Oraakkeli
Yhden kellon DOP-tekijät nojaavat ytimeen, joka on validoitu gnss_lib_py 1.0.4 -kirjastoa vastaan (rivi 'GNSS geometry / dilution of precision (DOP)'); tämän rivin omat tarkistukset ovat sisäisiä: sky_geometry toistaa orbit::dop:n ja dop_cov:n samalla geometrialla, ellipsi toistaa analyyttisen 2x2-ominaishajotelman, ECEF- ja atsimuutti/korkeuskulma-syötteet täsmäävät, ja siemenellä alustetun pilven RMS ja 95 %:n kattavuus täsmäävät geometrian kanssa. ENU-kovarianssi yhdellä kellolla järjestelmää kohti ja ellipsi ovat VALIDATED rivillä 'Horizontal error ellipse and per-system cofactor from the geometry covariance' (numpy, P2); tasolle MODELLED jää tässä yhdistelmä: esiasetusten eteneminen edustavaksi taivaaksi, Monte Carlo -pilvi (tarkistettu sen näytteistämää geometriaa vasten, itsejohdonmukaisuustarkistus) ja pinnat. Tähdistöesiasetukset antavat edustavan taivaan, eivät päivättyä; gaussinen virhemalli ja UERE ovat ilmoitettuja syötteitä, eivät mitattu tarkkuus eivätkä eheysraja
Suljetun muodon vapaaliukuvirheen kasvu + holdover kynnykseen; kvanttikelloluokat
Oraakkeli
Monivaiheinen clock_state-kovarianssirekursio (saman koodikannan ristiintarkistus); taustalla oleva vapaaliuku-varianssin ja holdover-käänteisfunktion ydin on validoitu ulkoisesti scipyä vasten (ks. 'Clock-holdover coast-variance & threshold inversion'). Luokkakohtaiset punaisen kohinan lattian holdover-luvut pysyvät tasolla MODELLED
clock_library: laitekortti (valkoinen vaihe, valkoinen, flicker- ja random-walk-FM sekä lineaarinen taajuuden ajautuma) sovitettuna yhteen kolmasosaan nimetystä mitatusta kellotallenteesta lokatun esikäsittelykierroksen jälkeen (aukot, vaiheen poikkeavat arvot, vaihehypyt ja purskeet poistettu; taajuushypyt lokattu), painotettuna lag-1-menetelmällä tunnistetuilla kohinatyyppien vapausasteilla, ja sen ennustettu Allanin poikkeama pisteytetään pidätetyillä kahdella kolmasosalla; lukijat RINEX- ja IGS-kellotiedostoille, BIPM:n laboratoriokohtaisille tiedostoille ja Circular T:n osalle 1; kortin muunnos aikaväliajoituksen kohinamalliksi, laajennetuksi Kalman-kellomalliksi ja harhautusmonitorin kohinatasoiksi
Oraakkeli
Mitatut tallenteet, pidätetyt: IGS:n lopulliset yhdistetyt 30 s:n kellot GPS Block IIF -satelliiteilta, joita on 11 ajalta 2026-03-01 – 14 (ikkuna, jota yksikään testi ei ollut avannut; IGS, avoin lähteen mainiten) ja JammerTest 2024 u-blox ZED-F9P -vastaanotin sen pisteyttämättömissä paikallaan olleissa sessioissa (GPL-3.0-or-later). D9:n ulkoinen vertailu (ennakkorekisteröity 2ec76864, jokaisen kortin ennustettu / mitattu Allanin poikkeama välillä [1/1.5, 1,5] sovitetuilla keskiarvoistusajoilla), havainto (pysyy tasolla MODELLED): GPS IIF -korteista 11 kappaleesta 10 on kynnyksen sisällä; G27 on optimistinen kahden tunnin mittakaavassa (0,662 kohdassa 7680 s, pahin kerroin 1,510), jaksollinen tuntiluokan virhe, jota potenssilakikortti ei kata. Vastaanottimen TCXO-kortti on estynyt: lokattujen lähetysten ulkopuolella aineiston muut sessiot jättävät 167 epookkia vaaditun 3600 sijaan. Raportoitu, ei sokko (aiempien rivien avaamat tallenteet): 5071A-cesiumkortti on kynnyksen sisällä (pahin 1,070 arvoon 4096 s asti), OCXO-kortti on konservatiivinen ja sen ulkopuolella (2,348 kohdassa 128 s; sen kohinalattia muuttuu tallenteen aikana), ja kolmelle lyhimmälle julkaistulle pisteelle sovitettu Norcian strontiumkortti on sen sisällä kahdessa pisteytetyssä pisteessä (1,291, 1,405). Galileon passiiviset vetymaserit (lopullisia Galileo-kelloja ei ole saatavilla ilman kirjautumista) ja Deep Space Atomic Clock (yksi avoin avaruusarvo) ovat estyneitä. D9:n kierros 2, ZED-F9P-vastaanottimen TCXO malliluokkana 14 päivältä 12 staattiselta Wrocławin asemalta (Zenodo 6488497, CC BY 4,0; ennakkorekisteröity fb475550), havainto: rekisteröidyllä putkella asemista 12 kappaleesta 11 ei ollut arvioitavissa (RAIM hylkäsi useimmat ionosfääristä vapaat epookit) ja BX14 epäonnistui; julkistettu uusinta-ajo korjatulla putkella (ennakkorekisteröity c9cc0d49) läpäisee sokoista asemista 11 kappaleesta 1 (BX12, 1,412; BX07 1,532 ja BX13 1,542 juuri sen ulkopuolella), koska katkonaisista 30 s:n tiedostoista saadut yhden pisteen vastaanotinkellot eivät ole puhdas oskillaattoritallenne
clock_library::card::DeviceCard::fit_phase_periodic: laitekortti, joka sisältää yhden–neljän kierroskohtaisen vaihetermin (jakso T/k, T = 43 082,05 s), sovitettuna yhdessä toisen asteen termin kanssa pienimmän neliösumman menetelmällä yhteen kolmasosaan mitatusta satelliittikellotallenteesta, kunkin termin suljetun muodon Allan-osuus 4 A^2 sin^4(pi tau / P) / tau^2 ennustetussa Allanin poikkeamassa
Oraakkeli
Mitatut tallenteet, pidätetyt: IGS:n lopulliset yhdistetyt 30 s:n kellot GPS Block IIF -satelliiteilta, joita on 11 ajalta 2026-04-01 – 14 (ikkuna, jota yksikään testi ei ollut avannut; IGS, avoin lähteen mainiten). D9:n ulkoinen vertailu (ennakkorekisteröity fb475550, ennustettu / mitattu Allanin poikkeama välillä [1/1.5, 1,5] jokaisella sovitetulla keskiarvoistusajalla jokaisella satelliitilla), havainto (pysyy tasolla MODELLED): korteista 11 kappaleesta 9 on kynnyksen sisällä; G03 (1,947) ja G25 (1,581) ovat optimistisia välillä 60 s – 2000 s, koska niiden pidätetyt tallenteet ovat kohinaisempia kuin niiden sovituskolmannekset (G25:n pidätetyssä osassa on 16 aukkoa ja 29 vaiheen poikkeavaa arvoa), mikä on kellon muutos eikä puuttuva jaksollinen termi. Jaksollisten termien pudottaminen ennusteesta epäonnistuttaa kaikki 11 korttia (1,77 – 4,96), joten termit kantavat ennusteen
filterpy 1.4.5 KalmanFilter (R. Labbe, MIT), F laskettuna scipy.linalg.expm:llä ja Q Van-Loanin 1978 lohkomatriisilla – riippumaton vertailutoteutus, joka toistaa kshanan koko suotimen liikeradan. Toteutusten välinen johdonmukaisuus: kellofysiikkaa ja Allan-kalibrointia ei ole validoitu ulkoisesti, joten tämä pysyy tasolla MODELLED. 0,30 ulkoinen vertailu, havainto (pysyy tasolla MODELLED): GPS Block IIF -satelliittien (yhteensä 11) IGS:n lopullisilla 30 s:n kelloilla (2025-08-17 – 30), kun Q sovitetaan ensimmäisen puoliskon ADEV:iin ja suodin pisteytetään pidätetyllä toisella puoliskolla, suodin on johdonmukainen yhden askeleen eteenpäin (0,906 – 0,971 epookeista sen 95 %:n kaistan sisällä, kynnys 90 %), mutta ylivarma yhden tunnin kohdalla kelloista 11 kappaleesta 9 (0,486 – 0,829), ja sen innovaatiosummat jäävät välin [2,4, 3,6] ulkopuolelle 5 kellolla. Sovitettu valkoisen vaiheen kohina on nolla jokaisella satelliitilla, eikä tuntiluokan virhe (jaksolliset termit, flicker-FM) sisälly 3-tilaiseen malliin. 0,30 kierros 2, laajennettu suodin (flicker-FM sekä kerran ja kahdesti kierroksessa toistuvat tilat) tuoreilla pidätetyillä IGS-kelloilla ajalta 2025-09-01 – 14 (ennakkorekisteröity 4b1a841e), havainto (pysyy tasolla MODELLED): yhden askeleen ja yhden tunnin johdonmukaisuuskriteerit täyttyvät kaikilla 11 satelliitilla (0,948 – 0,988 ja 0,907 – 0,996), mutta innovaatiosumman kriteeri ei täyty satelliiteilla G24 (0,964) ja G30 (1,929) välillä [2,4, 3,6]. D9:n kierros 3, kierroksen 2 laajennettu suodin, viritys ja kriteerit muuttamatta jäädytetyn clock_library-esikäsittelyilmaisimen jälkeen, tuoreilla IGS-kelloilla ajalta 2026-04-01 – 14 (ennakkorekisteröity fb475550), havainto (pysyy tasolla MODELLED): (a) yksi askel 0,941 – 0,968 ja (c) kolminkertaisen NIS:n keskiarvo 2,641 – 3,549 täyttyvät kaikilla 11 satelliitilla; (b) yksi tunti ei täyty satelliiteilla G09 (0,894) ja G26 (0,876) rajaa 0,90 vasten
Testit
clock_state::tests (analyyttinen van-Loan Q; NEES; PSD:n positiivisuus); tests/clock_state_reference.rs (koko ennuste+päivitys-liikerata — tila x ja 3×3 kovarianssi P 1925 askeleen / 4 parametrijoukon yli vs filterpy 1.4.5; huonoin…
Kaksisuuntainen/TWSTFT (Sagnac), GNSS-yhteisnäkymä, PPP; linkin jitter→etäisyys
Oraakkeli
Sagnac-suuruus tarkistettu arvovaltaista JULKAISTUA ARVOA vasten – N. Ashby, 'Relativity in the GPS', Living Reviews in Relativity 6:1 (2003), yhtälö 1,29: itäsuuntainen päiväntasaajan kiertomatka kerryttää 207,4 ns (2ωA_E/c²); kshana toistaa arvon 207,386 ns. Riippumattomasti vahvistettu RTKLIB 2.4.3 geodist()-funktiolla (Takasu, BSD-2-Clause), jossa on sama 2Aω/c²-geometria. Yhdistetyllä BIPM TWSTFT -transponderin/yhteisnäkymän/PPP-budjetilla ei ole ulkoista oraakkelia, joten kyvykkyys pysyy tasolla Modelled
Testit
timetransfer::tests (vastavuoroinen kumoutuminen; kaksimuotoinen Sagnac-identiteetti); tests/time_transfer_error_budgeting_reference.rs (ekvaattorin ympäri kiertävä Sagnac = 207,386 ns vs julkaistu Ashby 207,4 ns tarkkuudella <0,05 ns…
MallinnettuNavigointisignaalin modulaatio ja koodinseurannan analyysinavsignal
GPS C/A Gold -ristikorrelaatio ja autokorrelaatio täsmäävät TARKASTI (kokonaisluvut ±65/−1/63) riippumattomaan IS-GPS-200-koodigenerointiin; BPSK-R(1)/BOC(1 1) PSD:n muoto riippumatonta scipy-periodogrammia vasten. Modulaation, SSC:n ja DLL:n suljetut muodot (Betz 2001 / Kaplan & Hegarty) ovat edelleen analyyttisiä, joten rivi pysyy tasolla MODELLED, mutta koodikorrelaation osaväite täsmää ulkoisesti. 0,30 kierros 2, Betzin 2001 ja Hein ym. 2006 painettuja arvoja vasten (ennakkorekisteröity 9f4f2ce8, puoli painettua yksikköä), havainto (pysyy tasolla MODELLED): kaikki 45 taulukon 1 spektrisolua, 1 GHz:n korrelaatioarvot, MBOC-häiriöluvut ja kuvan 17 siirtymistä 3 kappaleesta 2 täsmäävät; 24 MHz:n ensimmäiset sivukeilat, BOC(8 4) kuvan 17 siirtymä ja kaikki kuvien 18–21 pahimman tapauksen monitie-eteneminen vääristymät (11 – 15 % liian matalia) eivät täsmää. Kshana ja riippumaton NumPy-laskenta ennakkorekisteröidystä tulkinnasta täsmäävät keskenään, joten ero on tulkinnassa tai artikkelin ilmoittamattomassa yksityiskohdassa; syy on ratkaisematta
Testit
navsignal::tests (BPSK self-SSC = 2/3R_c; unit-area PSD; DLL); tests/nav_signal_modulation_code_tracking_reference.rs (GPS C/A Gold cross/auto-correlation exact-integer match vs independent IS-GPS-200 code generation…
ValidoituGPS L1 C/A -hajotuskoodin generointisdr
Ominaisuus
G1/G2 LFSR -C/A-koodigeneraattori, joka toistaa IS-GPS-200:n julkaistut ensimmäisten 10 piirin oktaaliset varmennusvektorit PRN-koodeille 1–9 (sekä 1023 piirin pituuden, 512 ykkösen tasapainon ja kolmiarvoisen jaksollisen autokorrelaation)
Oraakkeli
IS-GPS-200 Table 3-Ia 'Code Phase Assignments' – arvovaltaiset Yhdysvaltain hallinnon julkisen alueen julkaisemat ensimmäisten 10 piirin OKTAALISET varmennusvektorit (GPS Directorate, navcen.uscg.gov); kshanan oma G1/G2 LFSR tuottaa uudelleen jokaisen PRN-vektorin 1–9 täsmälleen. Jatkossa käytettävät modulaation, SSC:n ja DLL:n suljetut muodot pysyvät tasolla Modelled (erillinen rivi)
Julkaistut CAI:n päälähdeartikkeleiden numeeriset vektorit (Cheinetin 2008 siirtofunktio; Peters/Freier-herkkyys): k_eff·T² täsmää tarkasti, laukauskohinan ASD on yksipuolinen lattia noin 2× sisällä kustakin julkaistusta laitteesta (todellisissa laitteissa on tekninen kohina kvanttilattian yläpuolella). Haarukka, ei yhtäpitävyys. 0,30 kierros 2 (ennakkorekisteröity fcb9ac64), havainto (pysyy tasolla MODELLED): pelkän QPN:n rotaatiokohina mitattuja Gauguet ym. 2009 kuvan 14 pisteitä vasten antaa suhteet 0,695 – 0,788 kolmessa hyväksytyssä pisteessä (0,751 toimintapisteessä) ja ohittaa ennakkorekisteröidyn 30 %:n kynnyksen 0,5 prosenttiyksiköllä; QPN-lattia on 21 – 31 % mitatun kohinan alapuolella, kuten laser- ja ilmaisinkohinaa vailla olevalta mallilta odottaa. Gradiometrikoostumus täsmää Janvier ym. 2022 QPN-mallin viivaan (suhde 1,013 – 1,017, Reference). Mitattu testi ei erottele sqrt(2)-koostumusvirhettä; vain epätasaisen kontrastin Janvier-viiva voi
Testit
quantum_imu::tests (k_eff; Mach–Zehnder T²; Freier-2016-lattian haarukka); tests/quantum_inertial_sensor_reference.rs (siirtofunktio |H(ω)|, k_eff·T² ja kvanttikohinan (shot-noise) ASD vs julkaistu Cheinet 2008 / Peters / Freier…
Mach–Zehnder-vyöhykeepäselvyyden dynaaminen alue: 2π-jaksollinen vyölukema asettaa suurimman yksiselitteisen ominaisvoiman a_max=π/(k_eff·T²), ja yksiselitteinen alue erottelusoluina a_max/σ_a=π/σ_Φ on riippumaton optisesta asteikkokertoimesta – T²-herkkyyshyöty maksaa yksiselitteistä aluetta täsmälleen samassa suhteessa (kyselyaika vaihtaa erottelukykyä alueeseen, ja solujen lukumäärän määrää vyölukeman vaihekohina)
Oraakkeli
Interferometrin vyömallin itsejohdonmukaisuus: puolivyön reuna, 2π-jaksollinen laskostumisrakenne ja asteikkokertoimen supistuminen alue/erottelu-suhteessa ovat suljetun muodon algebrallisia identiteettejä, jotka tarkistetaan moottorin omia Mach–Zehnder-vaihe- ja herkkyysfunktioita vasten – sisäisiä johdonmukaisuustarkistuksia, EI ulkoinen aineisto, joten rivi pysyy tasolla InternalConsistency. MODELLED ihanteellinen kolmipulssinen vyöepäselvyys; ei aaltorintaman poikkeaman tai kontrastin menetyksen rajoja yksiselitteiselle alueelle
Testit
quantum_imu::tests (a_max sijaitsee ±π:n puolijuovan reunalla 1/T²-alueskaalauksella; kiedotun vaiheen palautus on täsmällinen välillä [−a_max,a_max] ja laskostuu täsmälleen 2·a_max ulkopuolella; yksiselitteinen dynaaminen alue…
Koottu harha + asteikkokerroin + VRW + vakauden vaimenemisen paikkabudjetti holdoverin aikana
Oraakkeli
Riippumaton numpy-Monte Carlo-SDE-integrointi kahdesti integroidulle valkoisen kiihtyvyyden kohinalle (validoi analyyttisen VRW-varianssin aidosti riippumattomalla algoritmilla) + Grovesin 2013 julkaistu arvoankkuri harha- ja asteikkokerrointermeille; CAI-laitteen luvut kvantifioivat kumppanin laitteistoa ja pysyvät tasolla MODELLED
Testit
budget_tests (harha vs AccelModel-integraattori; VRW vs analyyttinen integraali); tests/quantum_inertial_dead_reckoning_reference.rs (VRW vs riippumaton numpy-Monte Carlo -kaksoisintegrointi valkoisesta kiihtyvyyskohinasta, huonoin…
15-tilainen virhetila-EKF, löyhästi kytketty (validoitu todellisella IMU/GNSS-ajolla NaveGoa vasten); tiukasti kytketty pseudoetäisyys/Doppler-UKF ja kytketty kello+paikka-suodin (vain johdonmukaisuus, validoidun väitteen ulkopuolella)
Oraakkeli
NaveGo v1.4 (R. Gonzalez, LGPL-3.0, ajettu työkaluna GNU Octavessa, ei koskaan linkitetty): sen löyhästi kytketty ins_gnss omalla todellisella Ekinox-IMU/GNSS-maa-ajoneuvoajollaan, molemmat ratkaisut pisteytettynä Ekinoxin vertailuliikerataa vasten. Molemmat suotimet lukevat saman 20 Hz:n float32-syötteen, ja Kshanan konfiguraatio kuvataan mekaanisesti aineiston julkaistuista parametreista. Kshanan vaaka- ja pystypaikan RMS sekä paikkainnovaation RMS ovat 1.2x NaveGon sisällä (mitattu 0,912, 0,940 ja 0,861) ja sen keskimääräinen normalisoitu innovaatio on enintään 1,5 (mitattu 0,395: noin 2.5x alivarma aineiston ilmoittamilla GNSS-sigmoilla); toleranssit lukittu ennen vertailua. Laajuus: GNSS on läsnä 5 Hz:llä koko ajon ajan, joten katkoa tai vapaaliukua ei testata ja tarkistus havaitsee suotimen karkeat viat, ei hienosäätöä (vipuvarsikorjatut raakaratkaisut päätyisivät lähelle pystykynnystä); vipuvarsimuunnos lasketaan testiympäristössä. Tiukasti kytketty UKF ja kytketty kello+paikka-suodin säilyttävät filterpy 1.4.5 -johdonmukaisuustarkistuksensa (lineaariset posteriorit tarkkuuteen 2.4e-12) ja pysyvät validoidun väitteen ulkopuolella
Häirinnänsietävän C/N₀:n linkkibudjettiyhtälö ristiintarkistettu riippumattomalla numpy-uudelleenjohdolla (jakaa saman suljetun muodon → InternalConsistency) sekä todellisen JammerTest-2024-aineiston C/N₀-heikkenemän karakterisointi. 0,30 kierros 2, estynyt (pysyy tasolla MODELLED): mitattua JammerTest 2024 C/N0-pudotusta linkkibudjettiennustetta vasten (ennakkorekisteröity 6a66994b, 3 dB:n sisällä) ei ajettu, koska F8.1-antennin sijaintia ja suuntausta Bleikissä eikä monikaistaisen rampin 1.6.4 tehon L1-osuutta ole dokumentoitu testikatalogissa tai viranomaisen lokissa
Testit
jamming::tests (broadband_q_equals_the_spectral_separation_closed_form ja cw_q_equals_the_spectral_separation_closed_form: Q-taulukko, CW ja kapeakaistainen 1, laajakaistainen ja pyyhkäisevä 2, lukittu navsignalin suljettuihin muotoihin…
TEXBAT-skenaarioiden parametrit (Humphreys 2012) – karakterisointi, ei lukittuja vektoreita. 0,30 ulkoinen vertailu, havainto (pysyy tasolla MODELLED): JammerTest 2024 -aineistossa (Bleik; GPL-3.0-data) havaintotason monitorit (kellon avustama khiin neliö, RAIM, ratkaisun epäonnistuminen) eivät antaneet hälytystä 10 s:n sisällä yhdestäkään 8 arvioitavasta julkaistusta harhautuksen alkuhetkestä (kun alkua edeltävä ikkuna oli puhdas, ensimmäinen hälytys tuli 10,2 – 39 s julkaistun ajanjakson alun jälkeen), ja kolmessa alkua edeltävässä ikkunassa kellomonitori antoi vääriä hälytyksiä (81, 64 ja 173 epookkia). Ensimmäinen havaittava vaikutus oli kaksitaajuisen GPS-seurannan menetys, ei RAIM-ristiriita. Julkaistut alkuhetket ovat minuuttitarkkuuden aikataulun jaksojen alkuja; se, että ne edeltävät RF-tallennetta, on tulkinta, ei mittaus. 0,30 kierros 2, järjestäjien virallista JammerTest 2024 -lokia vasten (sekuntitarkkuus; ennakkorekisteröity 6a66994b Hadamard-kalibroidulla kolmitilaisella kellomonitorilla ilman lukitusta), havainto (pysyy tasolla MODELLED): monitori hälyttää 10 s:n sisällä 4 kohdalla 10 lokatusta alkuhetkestä; muissa kuudessa se on 18 – 211 s myöhässä tai antaa alkua edeltäviä kellon vääriä hälytyksiä (1 kohdassa 2.1.4, 85 kohdassa 2.3.15). D9:n kierros 3 (vastaanotinkortti JammerTest-laitteen muista sessioista, ennakkorekisteröity 2ec76864) estynyt: 167 opetusepookkia vaaditun 3600 sijaan. D9:n kierrokset 4 ja 4b (kohinatasot u-blox ZED-F9P -malliluokkakortista, Wrocław 2021, ennakkorekisteröity fb475550; 4b julkistettu uusinta-ajo korjatulla poiminnalla, c9cc0d49), havainto (pysyy tasolla MODELLED): nolla alkua edeltävää väärää hälytystä kaikissa 10 lokatussa alkuhetkessä ja 6 kohdalla 10 alkuhetkestä hälytys tulee 10 s:n sisällä; 2.1.1, 2.3.5, 2.3.10 ja 2.6.1 jäävät myöhäisiksi (+211, +23, +18, +51 s), eikä kellon kohinataso muuta sitä
Testit
tests/spoof_texbat_validation.rs (TEXBAT parameter characterisation); tests/spoof_detection_jammertest_oracle.rs::monitors_against_the_published_onsets_reproduce_the_recorded_disagreement (pins the finding)…
Suljetun muodon yläraja pahimman tapauksen havaitsemattomalle aikavirheelle = monitorin lattia + oskillaattorin vapaaliuku-σ CUSUM-havaitsemisviiveen aikana, raportoituna punaisen kohinan lattiakaistana
Oraakkeli
Kokoaa Validated-primitiivejä (allan/holdover van-Loan, turvallisuuslattia); kalibroitu JammerTest 2024 -skenaariolla 2.1.1 (~1,01 ms todellinen palveltu aikavetäytyminen vs ≤51 ns väitetty). Silta Validated-osien yli – ei itsessään ulkoinen validointi. 0,30 ulkoinen vertailu, havainto (pysyy tasolla MODELLED): JammerTest 2024 -harhautusskenaarioissa mitattu havaitsematon palveltu aikavirhe ylittää nimellisen TPL:n 3 kohdalla 8 havaitusta alkuhetkestä: 184,3 vs 34,6 ns (2.1.4), 295,7 vs 159,3 ns (2.3.5) ja 143,0 vs 69,0 ns (2.3.11); kolme viidestä rajan sisällä olevasta on triviaaleja (lukittu alkua edeltävä väärä hälytys). Todennäköinen syy: 60 s:n kalibroinnista nollan ajautumiskohinalla saatu vapaaliukutermi ei kata vastaanottimen TCXO:n taajuuden vaellusta 15 – 39 s:n aikana. Mitattu virhe on Kshanan oma yhden pisteen kelloestimaatti verrattuna omiin alkua edeltäviin estimaatteihin sovitettuun suoraan, joten sopivuuskaan ei olisi ollut täysin riippumaton. 0,30 kierros 2, virallisen JammerTest 2024 -lokin alkuhetkiä ja mitattua vastaanottimen aikavirhettä vasten (ennakkorekisteröity 6a66994b), havainto (pysyy tasolla MODELLED): 4 kohdalla 10 lokatusta alkuhetkestä havaitsematon virhe ylittää ajautumistilan TPL:n (634,7 vs 458,5 ns kohdassa 2.1.1, 232,6 vs 16,2 ns kohdassa 2.3.5, 41,3 vs 6,0 ns kohdassa 2.3.10, 218,6 vs 47,4 ns kohdassa 2.6.3)
CR3BP STM + yhden ammunnan differentiaalikorjain; L2 eteläinen NRHO
Oraakkeli
NASA/JPL Three-Body Periodic Orbit Database (SSD, periodic_orbits.api; Maa–Kuu L2 eteläinen halo-perhe, Howell/Davis-menetelmä) – ulkoisesti julkaistu jakso T, Jacobin vakio C ja kohtisuoran ylityksen alkuehdot; kshanan yhden ammunnan STM-korjain, jonka siemenenä on katalogin alkuehto ja joka häiritään, konvergoi takaisin katalogin jäseniin
Painovoimakarttasovitus, maastoon perustuva (TERCOM/SITAN), magneettinen poikkeama
Oraakkeli
IGRF-14-kertoimet; ensiperiaatteisiin perustuva sovitettu suodin CRLB. Todellisen kentän painovoimabenchmarkin kenttä on tarkistettu ulkoisesti (rivi 'Gravity-anomaly synthesis from a spherical-harmonic model'), mutta sen navigointitulokselle ei ole ulkoista oraakkelia
Testit
tests/alternative_complementary_pnt_reference.rs (map-matching CRLB; IGRF-14 field); mapmatch::tests; gravimeter::tests; igrf::tests; tests/gravity_map_real_field.rs (the 60-min GPS-denied benchmark on the real EGM2008…
Painovoimapoikkeama pallomaisessa approksimaatiossa (Barthelmes STR09/02 yhtälö 126, ICGEM gravity_anomaly_sa) täysin normalisoiduista kertoimista suljetun muodon tasapintaellipsoidia (WGS84/GRS80) vasten nollannen asteen termin kanssa, ruudukoituna painovoimakarttasovittimelle
Oraakkeli
ICGEM Calculation Service (GFZ Potsdam), riippumaton toteutus: EGM2008 katkaistuna asteeseen 70, gravity_anomaly_sa, WGS84, tide-free, nollannen asteen termi, h = 0. Palvelun tulosteella ei ole nimenomaista lisenssiä, joten ruudukot haetaan testin aikana lukitulla SHA-256-tiivisteellä (tools/fetch_icgem_grid.sh) ja vain kymmenen arvoa esitetään lähteen mainiten
Testit
tests/icgem_gravity_anomaly_oracle.rs (egm2008_n70_matches_cited_icgem_values CI:ssä kymmenellä siteeratulla ICGEM-solmulla; egm2008_n70_gravity_anomaly_sa_matches_icgem koko haetuilla 0.25 asteen ruudukoilla: Tšad 9-15N 19-25E ja…
Käsin kirjoitettu SRTM .hgt -jäsennin (16-bittinen big-endian, pohjoisrivi ensin, aukkotietoinen) + bilineaarinen näytteistin, joka lukee todellisen julkisen alueen DEM-ruudun ja ratkaisee dokumentoidun maastomittauksen vertailuarvon
Oraakkeli
NASA/USGS SRTM v3 (1 kaarisekunti) N36W117-ruutu – Yhdysvaltain hallinnon PUBLIC-DOMAIN-korkeusdataa AWS:n elevation-tiles-prod-avoimesta peilistä, harvennettuna 6 kaarisekuntiin ja sitoutettuna hakemistoon tests/fixtures/terrain/ (ks. NOTICE.md), sekä N36W117:n ja N36W119:n täysresoluutioiset rajaukset, ristiintarkistettu solmu solmulta GDAL:n riippumatonta SRTMHGT-lukijaa vasten, sekä Mount Whitneyn (4421 m) ja Badwaterin (−86 m) maastomittausten vertailuarvot. Dokumentoitu Badwater Basinin vertailuarvo (−86 m, Pohjois-Amerikan matalin) ankkuroi georeferoidun lukemisen. DEM:iä käyttävä maastosovitus/TERCOM-navigointiratkaisu pysyy tasolla Modelled (erillinen Alternative/complementary PNT -rivi)
Testit
tests/terrain_nav_validation.rs (real_srtm_committed_badwater_tile_reads_real_relief — tallennettu 6 kaarisekunnin harvennus julkisen alueen SRTM v3 N36W117 -laatasta sijoittaa Badwater Basinin, Pohjois-Amerikan alimman pisteen…
MallinnettuToistettavuus ja ohjelmistovarmistusreport,scenario; CI (golden/determinism/SBOM)
Ominaisuus
Deterministiset, skenaariotiivisteellä varustetut, SBOM- ja alustojen välisten golden-porttien tarkistukset
Oraakkeli
SBOM:n vastaavuus virallista CycloneDX 1,5 JSON Schemaa vastaan (+ kelvolliset SPDX-tunnisteet) – ulkoinen julkaistu standardi, nolla validointivirhettä koko riippuvuusgraafissa; FoM-determinismi / tavutason toistettavuus on edelleen lukittu itsejohdonmukaisuustarkistus, joten rivi pysyy tasolla MODELLED
Testit
tests/golden.rs, tests/determinism.rs, tests/cross_platform_golden.rs; tests/reproducibility_software_assurance_reference.rs (the generated SBOM validates with zero errors against the official CycloneDX 1.5 JSON Schema…
MallinnettuTekoäly/koneoppiminen: RF-häiriöiden optimismikuilututkimus ja vain jakauman sisäisiin tietoihin perustuva kuilun ennustinimpairment_study,impairment_ml,eval_stats
Ominaisuus
Kontrolloitu synteettinen tutkimus jakauman sisäisen ja ulkopuolisen AUC-optimismikuilun suuruudesta julkaistuilla menetelmillä ja opituilla (logistinen regressio / yhden piilokerroksen MLP) ilmaisimilla: luokkakohtaiset skaalauslakitrendit (Spearmanin ρ + kulmakerroin muuttujalla 1−vakavuus) ja vain jakauman sisäisiin diagnostiikkoihin perustuva harjanneregressio-ennustin, joka arvioi kuilun, pisteytettynä jättämällä yksi ilmaisin pois ja jättämällä yksi luokka pois. Toistettavissa komennolla cargo run --release --example optimism_study
Oraakkeli
Käsin johdetut tunnusluvut suljettuja muotoja vasten (binormaalinen AUC Φ(d'/√2), DeLongin varianssi, sidosjärjestyksen Spearman, tarkka OLS-palautus) + yksi pois -ristiinvalidointi keskiarvon ennustavaa lähtötasoa vasten. Korpus on SYNTHETIC (parametreihin perustuva, ei koskaan kenttädataa/IQ-dataa), ja optimismikuilu on synteettisestä synteettiseen kohdistuva vakavuussiirtymä, EI simulaatiosta kenttään -tulos
MallinnettuKvantti- ja klassisen PNT:n vertailu sekä GNSS-vapaa kestävyys (13503)quantum_trade
Ominaisuus
Mitatun ADEV:n sisäänotto (NNLS), vertailutaulukko (ajoituksen/inertian holdover + hyöty), kestävyys-aika-verhokäyrä; lattiaa koskeva varoitus kulkee artefaktin mukana. Ajettavissa CLI:stä/sidonnoista skenaariolajina quantum-trade (scenarios/quantum-trade.toml)
Oraakkeli
Mitatun ADEV→PSD-sovituksen (NNLS) ydin täsmää scipy.optimize.nnls:ään (tests/scipy_reference.rs / tests/quantum_vs_classical_pnt_trade_reference.rs) – riippumaton ulkoinen ydin; mutta vertailun LUVUT kvantifioivat (eivät koskaan validoi) kumppanin kelloa/CAI:ta, joten itse vertailu pysyy tasolla MODELLED, ilman validointikehää
Testit
quantum_trade::tests (ADEV round-trip recovery, NNLS non-negativity, floor-caveat present/absent, benefit>1, monotone envelope + alt-PNT bound); dominance_demonstrators (measured-ADEV is data-driven not floor-assumed…
MallinnettuAvaruussääympäristö ja aktiivisuudesta riippuva termosfäärin tiheysspace_weather
Ominaisuus
Aurinko- ja geomagneettiset indeksit (määritelmällinen Kp↔ap-taulukko), Jacchia-1971:n eksosfäärin lämpötila ja Jacchia 1971 -termosfääritiheys (SAO Special Report 332: staattiset diffuusioprofiilit, jotka toistavat sen taulukon 7, sekä vuorokausi-, geomagneettiset, puolivuotis-, vuodenaika-leveysaste- ja heliumvaihtelut) staattista USSA76-ilmakehää vasten. Ajettavissa CLI:stä/sidonnoista skenaariolajina space-weather (scenarios/space-weather.toml)
Oraakkeli
Määritelmällinen Kp↔ap-taulukko + Jacchia-1971:n eksosfäärin lämpötilan suljettu muoto (täsmäytetty tarkkuuteen <1 K julkaistuja ankkureita vasten, tests/space_weather_reference.rs); tiheys karakterisoidaan pymsis NRLMSISE-00:aa (riippumaton NRL-malli) vasten: 800 km:n aurinkosyklin heilahdus on 10.4x NRLMSISE-00:n 13.6x:ää vastaan. 0,30 -versiomuutos: kalibroitu ensimmäisen kertaluvun aktiivisuuskerroin korvattiin Jacchia 1971 -mallilla (oletusskenaarion tiheys 400 km:ssä 4.176e-12 -> 6.929e-12 kg/m3; reference_exospheric_temperature_k poistettu, mean_exospheric_temperature_k lisätty). 0,30 kierros 2, mitatut TOLEOS CHAMP/GRACE/GRACE-FO-kiihtyvyysmittaritiheydet (ESA Swarm DISC; ennakkorekisteröity 20eed695), havainto (pysyy tasolla MODELLED): kiertokeskiarvot 400 – 500 km:ssä ovat kertoimen 2 sisällä aurinkomaksimissa myrskyjen ulkopuolella (CHAMP 2001 521/521, GRACE-A 2002 120/120, GRACE-FO 2024 526/547), mutta Jacchia 1971 on noin 1.7x liian tiheä vuoden 2008 aurinkominimissä (GRACE-A 412/544 kertoimen 2 sisällä), joten tiheyttä ei ole validoitu
Testit
space_weather::tests (Kp↔ap täsmälleen ruudukkopisteissä + edestakainen kierto + monotoninen, päivittäisen Ap:n keskiarvo, eksosfäärin T vs julkaistut aurinkominimin/keskiarvon/maksimin + myrskykorotuksen ankkurit, tiheys yksi vertailupisteessä, aurinkosyklin heilahdus…
CCSDS 502,0 OEM -tuoja (parse_oem), joka sietää COMMENT-rivejä / ylimääräisiä metatietosanoja / kovarianssilohkoja ja on kirjoittajan tarkka käänteistoiminto; edestakaisajo + ulkoisen tiedoston sisäänotto nopeuden johdonmukaisuustarkistuksella. Ajettavissa CLI:stä/sidonnoista skenaariolajina oem-interop (scenarios/oem-interop.toml)
Oraakkeli
Riippumaton kolmannen osapuolen CCSDS-502-jäsennin oem 0.4.5 (MIT, https://pypi.org/project/oem/) – erillinen koodikanta, joka dekoodaa kshanan tuottaman EME2000/UTC-OEM:n tavu tavulta identtisesti (24 tilaa 2 testitiedostossa, paikka/nopeus Δ = 0) ja jonka tiukka lukija vahvistaa metatietotunnisteet; kshanan jäsennin samoin täsmää sen kanssa toimitetulla ulkoisella OEM:llä. Kaksi rehellistä yhteentoimivuushavaintoa (oem-kirjasto hylkää kshanan satelliittikohtaisen moniosaisen segmenttikäytännön ja sen monialkioiset kovarianssirivit) on dokumentoitu testissä – siksi tämä validoi vain yhden kohteen vaihtomuodon, ei kaikkien kshanan muunnelmien täyttä CCSDS-502-yhdenmukaisuutta
MallinnettuLaukaisuikkuna ja nousugeometria (tehtäväanalyysi)launch
Ominaisuus
Kahden kappaleen laukaisuatsimuutit (sin Az = cos i / cos lat), pienin saavutettavissa oleva inklinaatio, ympyräradan nopeus, Maan pyörimisen itäsuuntainen hyöty, dogleg-tasonmuutoksen Δv ja päivittäiset mahdollisuudet sekä, kun annetaan epookki ja IERS finals2000A -rivit, aseman nopeus todellisen navan ympäri (launch::site_rotation_speed_at). Ajettavissa CLI:stä/sidonnoista skenaariolajina launch-window (scenarios/launch-window.toml)
Oraakkeli
Suljetun muodon pallotrigonometrinen laukaisugeometria julkaistuja esimerkkilaskuja vasten (Vallado, Fundamentals of Astrodynamics, 4. painos, algoritmi 37 laukaisuatsimuutti + luku 6 tasonmuutos; tests/launch_window_ascent_geometry_reference.rs). Nämä käyttävät samaa suljettua muotoa, jonka kshana toteuttaa (julkaistun arvon yhtäpitävyys / kirjoitusvirheiden tarkistus, InternalConsistency); MODELLED kahden kappaleen malli, ei pyörivän Maan nopeuskolmiota / nousu- / vastushäviömallia. 0,30 ulkoinen vertailu Orekitia 12,2 (Apache-2.0) vasten, havainto (pysyy tasolla MODELLED): geometria täsmää pyöristystarkkuudella (inklinaatio luettuna takaisin polttoloppuatsimuutista 158 tapauksessa, pahin 2.6e-15 rad; pienin inklinaatio, ympyräradan nopeus ja doglegin delta-v tarkkuuteen 3e-16), mutta Maan pyörimisen aseman nopeus ohittaa ennakkorekisteröidyn suhteellisen 1e-6 leveysasteella 62,9 astetta (1.12e-6). Ero kasvaa kuten tan(lat), mikä sopii Orekitin Maa-koordinaatiston noin 5.8e-7 rad:n napaliikkeen napapoikkeamaan, jota pallomainen ω·R·cos(lat) ei sisällä. Väitettä ei rajattu ennen ajoa, joten rivi ei voi nousta tämän vertailun perusteella. 0,30 kierros 2 (ennakkorekisteröity 71bebf63): epookin ja IERS-rivien kanssa todellisen navan aseman nopeus (skenaariokenttä site_rotation_speed_true_pole_m_s) täsmää Orekitin kanssa tarkkuudella 1e-6 24 asemalla neljällä pituuspiirillä (pahin 4.9e-8), mutta nimellinen epookiton nopeus, jonka skenaario antaa oletuksena Maan pyörimisen hyötynä, ohittaa edelleen arvolla 1.12e-6, joten rivi pysyy tasolla MODELLED, kunnes oletustulosteesta päätetään
Huippuhidastuvuus (ballistisesta kertoimesta riippumaton), nopeus ja korkeus huippu-g:n kohdalla sekä huippulämmityksen nopeus eksponentiaalisen ilmakehän ballistiselle paluulle. Ajettavissa CLI:stä/sidonnoista skenaariolajina reentry (scenarios/reentry.toml)
Oraakkeli
Suljetun muodon Allen–Eggers-analyyttinen paluu, lisäksi ristiintarkistettu scipy 1,18 solve_ivp (DOP853) -numeerista integrointia vasten SAMALLE vain vastusta sisältävälle paluun ODE:lle (tests/ballistic_re_entry_corridor_reference.rs, 36 tapausta, pahin a_max suhteellinen 2.9e-9) – numeerinen integraali vs oma analyyttinen muoto, joten edelleen InternalConsistency, EI ulkoinen validointi. MODELLED ballistinen (ei nostovoimaa), ei aerotermistä/TPS-mallia – lämmitystuloste on nopeus, ei lämpövuo. 0,30 ulkoinen vertailu, havainto (pysyy tasolla MODELLED): Stardust SRC -paluun rekonstruktiota vasten (Desai ja Qualls, NASA NTRS 20080008567) Allen–Eggersin huippuhidastuvuus painetulle inertiaaliselle paluutilalle (12,9 km/s, -8.2 astetta, H 7200 m) on 61,8 g parhaaksi arvioitua lentorataa vastaavan 32,89 g:n rinnalla, +88 % 15 %:n toleranssia vasten: vakiolentorataulma ja ei-gravitaatio-ratkaisu likimain kaksinkertaistaa matalan, pakonopeutta nopeamman paluun huipun. Stardustissa ei ollut kiihtyvyysmittaria, joten rekonstruktio on lentoradan arvio. 0,30 kierros 2, estynyt (pysyy tasolla MODELLED): integroitu tasomainen pistemassaratkaisu (reentry::simulate_planar_entry, US76, käänteisneliögravitaatio, kaarevuus) täsmää Stardustin ja Genesisin parhaaksi arvioituihin lentoratoihin 15 %:n sisällä (+11,3 %, +5,6 %), mutta nämä maksimit ovat virastojen simulaatiotulosteita, eivät mittauksia, joten kyseessä on vain ristiintarkistus. Kiihtyvyysmittarivertailu (ennakkorekisteröity a94a283d) on estynyt, koska Hayabusa2 REMM -analyysin luettavaa kopiota ei ole (doi 10.57350/jesa.16)
Testit
reentry::tests (huippu-g ei riipu ballistisesta kertoimesta + fysikaalinen g-kaista, kasvaa jyrkemmällä γ:lla / nopeammalla sisääntulolla, huippu-g-nopeus = V_e·e^(−1/2) ja huippulämmitys = V_e·e^(−1/6) nopeammin, huippu-g-korkeus fysikaalinen +…
ValidoituEO-hyötykuorman jalanjälki ja kattavuusgeometriaeo_payload (j2_node_rate,j2_nodal_period,ground_track_spacing_equator_j2,sun_synchronous_inclination)
Ominaisuus
SMAD:n avaruuskolmiogeometria: Maan kulmasäde, kaistan leveys, nadirin GSD, suurin nadirista poikkeava saavutettavuus ja ympyräradan jakso, sekä ensimmäisen kertaluvun J2-solmujakso (eo_payload::j2_nodal_period) ja päiväntasaajan maanpintajäljen väli R_e (omega_E - dOmega/dt) T_nodal (eo_payload::ground_track_spacing_equator_j2) yhtenäisen kattavuuden lipulla, kun annetaan radan korkeus, inklinaatio ja anturin FOV/IFOV. Ajettavissa CLI:stä/sidonnoista skenaariolajina eo-coverage (scenarios/eo-coverage.toml); sen oletusinklinaatio on aurinkosynkroninen eo_payload::sun_synchronous_inclination -funktiosta, mukavuusoletus, joka ei kuulu validoituun väitteeseen
Oraakkeli
Orekit 12,2 (Apache-2.0) ja GeographicLib 2,1 (MIT), molemmat ajettuina erillisinä ohjelmina, ennakkorekisteröity (766823f3) ennen moottorimuutosta ja ennen oraakkelien ajoa: pallosuureet suhteellisen 1e-9 sisällä (pahin: kulmasäde 5.4e-16, kaista 7.0e-13, saavutettavuus 1.9e-14), jakso 1e-12 (1.6e-16), nadirin GSD 1e-7 (2.9e-10), J2-solmujakso ja solmuväli 0,1 %:n sisällä Orekitin numeerisesta J2-etenemisestä solmuilmaisimella (1.2e-5 ja 6.7e-5), yhtenäisyyslippu täsmälleen (168/168), ja WGS-84-ellipsoidia vasten horisontti 0,3 asteen sisällä (0,186 astetta) ja suurin maanpintaetäisyys 0,5 %:n sisällä (3.2e-3). Solmun regressiotermin poistaminen epäonnistuttaa 35 solmupistettä, joita on yhteensä 42. MODELLED-laajuus: pallomainen Maa -jalanjälki; ei radiometriaa, MTF:ää, ilmakehää, jitteriä eikä kiiltoa; aurinkosynkronista oletusinklinaatiota ei verrata. Aiempi Skyfield/SGP4-ristiintarkistus säilytetään regressiotestinä. 0,30 -versiomuutos: väli sisältää nyt J2-solmun regression (oletusskenaario 2756,37 -> 2752,17 km)
Testit
eo_payload::tests (kulmasäde 64° korkeudella 700 km + pienenee korkeuden mukana, nadir→zeniitti/nollaetäisyys, horisontti→ε=0/suurin keskuskulma, horisontin ohi menevät virheet, kaista-ala kasvaa FOV:n / GSD korkeuden mukana, ~2750 km solmuväli…
ValidoituCCSDS Space Packet (133,0) TM/TC-kehystysspace_packet
spacepackets 0.32.0 (us-irs/spacepackets-py, R. Mueller, Apache-2.0) – riippumaton kolmannen osapuolen toteutus standardista CCSDS 133.0-B-2; kshanan encode_packet/decode_packet täsmäsi tavu tavulta (6 oktetin pääotsikko 33 tapauksessa + koko koodattu paketti 12 tapauksessa)
Testit
space_packet::tests (otsikon bitit vastaavat CCSDS-133-asettelua, koodaus→purku-kierto säilyttää kaikki kentät, alueen ulkopuoliset/katkaistut hylätään); tests/ccsds_space_packet_reference.rs (33 tapausta vs spacepackets 0.32.0, mukaan lukien 12…
ValidoituCCSDS Space Packet -toissijainen otsikko, paketin virheenhallinta ja segmentointispace_packet (TimeCode, SecondaryHeader, paketin virheenhallinta, segmentointi ja kokoaminen, virran dekoodaus)
Ominaisuus
CCSDS 133.0-B-2 Space Packet -laajennukset pääotsikon rinnalla: toissijainen otsikko, joka kuljettaa CCSDS 301.0-B -aikakoodin (CUC tai CDS, eksplisiittinen tai implisiittinen P-kenttä) ja lisädataa, CRC-16-paketin virheenhallintakenttä, suuren käyttäjädatayksikön segmentointi ja kokoaminen takaisin, virran dekoodaus järjestysaukojen ja järjestyksen tarkistuksilla sekä PUS-TM-paketit. Pääotsikon tuloste on tavu tavulta sama kuin ennen
Oraakkeli
Ennakkorekisteröity (003ef3eb) ennen mitään vertailua; neljä riippumatonta toteutusta, yksikään ei ole GPL, mitään ei ole vendoroitu: ccsdspy 2.0.1 (BSD-3-Clause) dekoodaa 34 Kshanan kirjoittamaa pakettia 5 virrassa (pääotsikko, P-kenttä, karkea ja hieno aika, CDS-kentät, lisädata, käyttäjädata, PEC), ja molemmat 1000 oktetin segmentoidut yksiköt rakennetaan sen käyttäjädatasta 0 erolla, ja se merkitsee pudotetun ja vaihdetun paketin virrat, jotka Kshana hylkää; 8 viestin ja 57 PEC-kentän CRC on sama kuin CPythonin binascii.crc_hqx ja spacepackets-rs 0.18.0 (tarkistusarvo 0x29B1); 66 CUC- ja CDS-aikakooditapausta vastaavat spacepackets-rs 0.18.0 -kirjoitusta ja -lukua oktetti oktetilta (3 CDS-tapausta myös spacepackets-py 0.32.0); 4 spacepackets-py 0.32.0 PusTm -pakettia on tavu tavulta samat kuin Kshanan. Ei katettu: viraston epookin aikakoodit (7 tapausta nojaa yksikkötesteihin), TC-siirtokehykset ja kaikki pakettia alempi linkkikerros
Testit
tests/space_packet_ext_oracle.rs (viisi ennakkorekisteröityä kynnystä: CRC, aikakoodit, virrat, aukko ja järjestys, PUS TM; nolla virheellistä vastaavuutta); space_packet::tests
ValidoituSPICE SPK -vienti (tyypit 9 ja 13)spk_writer (SpkSegment,to_bytes,from_bytes,eval,et_from_label,oem_to_spk_segments)
Ominaisuus
NAIF SPICE SPK -ydinten kirjoittaja ja lukija tyypeille 9 (Lagrange, epätasaiset aika-askeleet) ja 13 (Hermite, epätasaiset aika-askeleet), DAF-rakenteella, segmenttikuvaajilla ja epookkihakemistoilla, sekä CCSDS OEM:n vienti SPK-ytimeksi (UTC- tai TDB-epookit efemeridiajaksi)
Oraakkeli
CSPICE N0067 spiceypy 8.3.0 kautta, sekuntihyppytiedosto naif0012.tls, ennakkorekisteröity (5059fd2a) ennen kuin SPICE luki yhtäkään Kshanan ydintä: SPICEn inventaario Kshanan neljästä ytimestä on tarkka; spkpvn ja spkgeo 5 516 epookilla ja 690 ketjuarvioinnilla ovat bitti bitiltä samat kuin Kshanan oma arviointi ja pysyvät kynnyksen sisällä jokaisessa solmussa (pahin 0,022 siitä); Kshana lukee SPICEn kirjoittamat ytimet bitti bitiltä identtisesti; samoilla syötteillä Kshanan ytimet ovat tavu tavulta samat kuin SPICEn (0 eroavaa tavua neljässä tiedostossa); OEM-epookit muunnetaan efemeridiajaksi 6.0e-8 s:n sisällä str2et:stä (kynnys 1e-6 s) ja SPICE arvioi OEM-viennin kynnyksen sisällä (pahin 0,060). Synteettiset Kepler-kaaret: ei mitään fyysisestä tarkkuudesta. Muita SPK-tyyppejä ei kirjoiteta
Testit
tests/spk_writer_spice_oracle.rs (inventaario, arviointi, bitti- ja tavuidentiteetti, OEM-epookin muunnos; neljä suunniteltua mutaatiotarkistusta tekee siitä punaisen)
ValidoituSPICE SPK -tyypit 3 ja 21 (Chebyshev, laajennetut erotusrivit)spk_writer (SpkType::Chebyshev3,SpkType::DiffLines21,SpkSegment,InterpolatedSpk)
Ominaisuus
NAIF SPICE SPK -segmenttien kirjoittaja ja lukija tyypeille 3 (Chebyshev-polynomit paikalle ja nopeudelle kiinteillä väleillä, aste 0 – 27) ja 21 (laajennetut muunnetut erotustaulukot, JPL-integraattorien erotusrivit, MAXDIM 15 – 25), annetuista tietueista, tiedostoissa, jotka sisältävät myös tyyppien 9 ja 13 segmenttejä; tietueen valinta ja arviointi SPICE-lukijoiden järjestyksessä. Kshana ei sovita Chebyshev-kertoimia eikä tuota erotusrivejä
Oraakkeli
CSPICE N0067 spiceypy 8.3.0 kautta (spkw03, spkw13 ja samasta kirjastosta sen f2c-symbolilla spkw21; spkpvn, spkgeo), ennakkorekisteröity (e1cf80d8) ennen koodin olemassaoloa, synteettiset tietueet arvottu kyseisen commitin SHA-1:stä: kolmessa tiedostossa (tyyppi 3 asteet 0, 12 ja 27 3 – 150 tietueella; tyyppi 21 MAXDIM 15, 20 ja 25 1 – 250 rivillä, nollasta kahteen hakemistomerkintään ja keskusketju; tyypit 3, 21 ja 13 yhdessä tiedostossa kommenttien kanssa) SPICEn inventaario Kshanan ytimistä on tarkka, Kshanan ytimet ovat tavu tavulta samat kuin SPICEn samoista tietueista kirjoittamat, ja spkpvn ja spkgeo ovat bitti bitiltä samat kuin Kshanan lukija sekä Kshanan että SPICEn tiedostoilla (48 876 komponenttia kumpaankin suuntaan, kynnys suhteellinen 1e-12). Synteettiset tietueet: ei mitään fyysisestä tarkkuudesta; todellisia JPL:n tuottamia tyypin 21 ytimiä ei ole tapausjoukossa
Testit
tests/spk_3_21_spice_oracle.rs (inventory, evaluation both ways, byte identity); spk_writer::tests
CCSDS 504.0-B-2 -asentoviestien kirjoittaja ja lukija KVN- ja NDM/XML-muodoissa: AEM-versio 2,0 (ja 1,0 KVN:ssä, tunnisteineen ATTITUDE_DIR, QUATERNION_TYPE ja numeeriset kiertojärjestykset) kvaternioni-, Euler-kulma- ja spin-asentotyypeillä sekä niiden derivaatta-, kulmanopeus- ja nutaatiovariaateilla, useita segmenttejä; APM-versio 2,0 kvaternioni-, Euler-, kulmanopeus-, spin-, inertia- ja manööverilohkoilla; tietueen A-B-kvaternioni (504.0-B-2 liite F)
Oraakkeli
Orekit 13.1.8 (Apache-2.0) -jäsentimet ja -kirjoittajat, ajettuina erillisenä ohjelmana (xval/adm-orekit), ennakkorekisteröity (7a6a05fe) ennen mitään vertailua: Orekit jäsentää jokaisen Kshanan kirjoittaman viestin (14 AEM KVN, 11 AEM XML, 4 APM KVN, 4 APM XML) ja jokainen arvo on kynnyksensä sisällä (kvaternionit 1e-14, kulmat 1e-9 astetta; pahin 0,054 kynnyksestä); Kshana jäsentää 31 viestiä, jotka Orekit kirjoittaa samoista syötteistä, jokaisen kynnyksen sisällä; kunkin 135 kvaternioni-, Euler- ja spin-tietueen rotaatio on sama kuin AemSegment.getAngularCoordinates tarkkuudella 1e-12 (pahin 0,0071 kynnyksestä). Kaikki 15 Kshanan XML-viestiä validoituvat NDM/XML 4.0.0 -skeemaa vasten (data-portitettu, haettu lukitulla SHA-256-tiivisteellä). Havainto: Orekitin APM-kirjoittaja kieltäytyy manööveristä ilman MAN_DELTA_MASS-kenttää (valinnainen standardissa), joten APM-manööverit katetaan vain Kshanan kirjoitussuunnassa. Tapausjoukon ulkopuolella: AEM 1,0 */RATE-tyypit ja XML, toistuvat APM-lohkot
CCSDS 502.0-B-3 -ratadataviestien kirjoittaja ja lukija KVN- ja NDM/XML-muodoissa: OPM 3,0 ja 2,0 (tilavektori, oskuloivat Kepler-elementit, avaruusaluksen parametrit, kovarianssi, manööverit, käyttäjän määrittelemät parametrit), OMM 3,0 ja 2,0 (keskiarvoelementit keskiliikkeellä tai isolla puoliakselilla, TLE:hen liittyvät parametrit BSTAR- tai BTERM-kentällä ja AGOM, kovarianssi) sekä OCM 3,0 radalla (CARTP, CARTPV, CARTPVA; absoluuttiset tai suhteelliset epookit), fysikaalisten ominaisuuksien, kovarianssin (CARTP, CARTPV LTM-järjestyksessä), manööverin ja käyttäjän määrittelemien lohkojen kanssa; täystarkkuuksinen OMM SGP4-elementtijoukosta muuttumattoman OmmFile::to_omm_kvn -funktion rinnalla
Oraakkeli
Orekit 13.1.8 (Apache-2.0) OPM-, OMM- ja OCM-jäsentimet ja -kirjoittajat, ajettuina erillisenä ohjelmana (xval/odm-orekit), ennakkorekisteröity (cc6841da) ennen mitään vertailua: Kshanan kirjoittamista viesteistä, joita on 30, 27 (6 OPM-, 5 OMM- ja 5 OCM-tapausta KVN:ssä sekä XML versiolle 3,0) jäsentyy Orekitissa siten, että jokainen arvo on suhteellisen 1e-14 sisällä ja jokainen epookki 1e-9 s:n sisällä (904 arvoa, pahin 0,021 kynnyksestä), ja Kshana lukee kaikki 25 viestiä, jotka Orekit kirjoittaa takaisin, samojen kynnysten sisällä (858 arvoa, pahin 0,020); kaikki 14 Kshanan XML-viestiä validoituvat NDM/XML 4.0.0 -skeemaa vasten (data-portitettu). Havainnot, lukittuina, väitettä rajaten: Orekit vaatii ELEMENT_SET_NO-kentän (valinnainen standardissa 502.0-B-3), kieltäytyy COMMENT-kentästä XML:n käyttäjän määrittelemissä parametreissa (skeema sallii sen), ei kirjoita BTERM-kenttää ilman BSTAR-kenttää (joten BTERM ja AGOM katetaan vain Kshanan kirjoitussuunnassa) ja lisää OCM:n suhteelliset epookit SI-sekunteina, joten TDB:ssä ne eroavat TDB-kalenterilukemasta noin 1.9e-10 s/s (UTC, TAI ja TT täsmäävät). Vanha OmmFile::to_omm_kvn -tuloste, joka kääri OMM:n metatiedot META_START/META_STOP-merkkeihin, jää Orekitin hylkäämäksi (kirjattu). Laajuuden ulkopuolella: OCM:n PERT- ja OD-lohkot, ei-karteesiset elementtijoukot, muut kovarianssijärjestykset
Testit
tests/odm_orekit_oracle.rs (L1 Orekit lukee 30 Kshana-tiedostoa, L2 Kshana lukee 25 Orekit-tiedostoa; havainnot lukittu ja varmistettu toistuviksi); odm::tests
Validoitu3-DOF-asennon ja suuntauksen virhebudjetti (AOCS)attitude_budget
Ominaisuus
Gravitaatiogradientin pahimman tapauksen häiriömomentti ((3/2)(μ/R³)ΔI) asennon yli otettuna huippuarvona (validoitu väite) sekä RSS-suuntausvirhebudjetti nimetyistä 1σ-osuuksista ja hallitsevasta termistä (kutsujan antamien lukujen neliösumma, validoidun väitteen ulkopuolella). Ajettavissa CLI:stä/sidonnoista skenaariolajina attitude-budget (scenarios/attitude-budget.toml)
Oraakkeli
Basilisk 2.9.1 GravityGradientEffector (AVSLab, ISC), riippumaton C++-toteutus täyden tensorin gravitaatiogradienttimomentista: Kshanan huippuarvo (3/2)(μ/R³)ΔI on sama kuin Basiliskin momentti 45 asteen asennossa suhteellisen 1e-12 sisällä (pahin 2.1e-15) 5 korkeudella ja 8 inertiatensorilla, ja rajaa Basiliskin momentin 2000 satunnaisessa asennossa tapausta kohti; toleranssi lukittu ennen vertailua. Validoitu väite: gravitaatiogradienttimomentin huippu. RSS-suuntausbudjetti on kutsujan antamien lukujen neliösumma ilman ulkoista totuutta ja jää sen ulkopuolelle; käsin koodattu Hipparchuksen täyden tensorin maksimointi säilyy tukevana itsejohdonmukaisuustarkistuksena. Ei säätösilmukan / 6-DoF- / joustavien moodien simulaatiota
Testit
attitude_budget::tests (GG-momentti katoaa symmetriselle kappaleelle, kasvaa alempana, lineaarinen ΔI:n suhteen, RSS-neliösumma, varianssiosuuksien summa on 1); tests/attitude_gg_torque_reference.rs (20 tapausta vs riippumaton…
Aikatason näkyvyysylilennot (AOS/TCA/LOS, maksimikorkeuskulma, kesto) moottorin propagaattorille aseman yli korkeuskulmamaskin yläpuolella, interpoloiduin nousu- ja laskuylityksin sekä kokonaissaavutettavuus: passes::predict_passes, geometrinen aikataulutin (ei refraktiota eikä valon kulkuaikaa). Skenaariolaji passes ajaa rivin 'Apparent ground-station pass prediction with refraction and light time' näennäisen ennustimen
ValidoituMaa-aseman näennäisten ylilentojen ennustus refraktiolla ja valon kulkuajallapasses (predict_passes_apparent,apparent_look_angles,ApparentOptions,p834_tau_s_deg,p834_tau_deg,p834_theta_m_deg,p834_apparent_elevation_deg,PassesScenario)
Ominaisuus
Näkyvyysylilennot (AOS, TCA, LOS, suurin näennäinen korkeuskulma, kesto) SGP4-elementtijoukolle WGS-84-aseman yli validoidulla Maa-radan polulla (IAU 2006/2000A, valinnaiset Maan orientaatioparametrit), ITU-R P.834-9 -troposfäärirefraktiolla (yhtälöt 9 – 14, suosituksen painetut kertoimet) ja alalinkin valon kulkuajalla, kumpikin kytkettävissä; ylitykset ratkaistaan bisektiolla tarkkuuteen 1e-7 s ja kulminaatio kultaisen leikkauksen haulla. Ajettavissa CLI:stä/sidonnoista skenaariolajina passes (scenarios/passes.toml), molemmat korjaukset oletuksena päällä
Oraakkeli
Orekit 13.1.8 (CS GROUP, Apache-2.0) ja Hipparchus 4.0.3: TLEPropagator samoille elementtijoukoille TEME-koordinaatistossa, jonka Orekit rakentaa ilmoitetun määritelmän mukaan (sen IERS 2010 TOD kierrettynä GAST - GMST), ElevationDetector ja ElevationExtremumDetector ITURP834AtmosphericRefraction-refraktiolla ja ilman sitä, sekä AngularAzEl AngularRadioRefractionModifier-muokkaajalla valon kulkuajan tapaukselle, ylitykset ja maksimi ratkaistu Hipparchuksella; 60 tapausta (neljä rataa, viisi merenpinnan tason asemaa, maskit 0, 5 ja 10 astetta, 24 tuntia). Kynnykset lukittu ennen ajoa (ennakkorekisteröity e947e69d, 72ea9eb0:n osa 3). Jos valon kulkuaika sivuutetaan (9777 epäonnistumista) tai P.834-vakio 1,728 muutetaan arvoon 1,828 (7883 epäonnistumista), testi muuttuu punaiseksi. Laajuus: asemat merenpinnan tasolla; Orekitin P.834 h*theta0^2 -kerroin on 0,011380, kun suositus painaa 0,01380 (lukittu), joten merenpinnan yläpuolella olevia korkeuksia ei verrata. Kierros 1, Orekitin oletus-IERS 1996 TEME:ä vasten, täytti jokaisen ylilentokynnyksen mutta ohitti suuntakynnyksen 72 mas:n TEME-käytäntöerolla (lukittu)
Testit
tests/pass_predictor_on_path_orekit_oracle.rs (60 cases, 1210 passes: AOS/LOS within 3.4e-6 s, bar 5 ms; maximum elevation within 5.5e-7 deg, bar 1e-3 deg; 8979 apparent directions within 8.8e-7 deg, bar 1e-4 deg)…
MallinnettuDVB-S2 mukautuva koodaus ja modulaatio LEO-alalinkin ylilennon aikanacontact_schedule (es_n0_db,select_modcod,fspl_db,atmospheric_loss_db,ccm_modcod,pass_capacity,AcmLinkScenario); passes::predict_passes_apparent
Ominaisuus
Alalinkin Es/N0 yhden satelliitin jokaisen ylilennon aikana yhden aseman yli (EIRP, vapaan tilan häviö, kosekanttilain ilmakehähäviö, muut häviöt, G/T, Boltzmannin vakio, symbolinopeus), tehokkain DVB-S2 MODCOD, joka ylittää ETSI EN 302 307-1 V1.4.1 taulukon 13 lähes virheettömän kynnyksen lisättynä toteutusmarginaalilla kussakin vaiheessa, ylilennon ACM-datamäärä sekä vakiokoodauksen vertailutaso, joka sulkeutuu maskilla ja pisimmällä etäisyydellä. Ajettavissa skenaariolajina acm-link. Havainnollistavat syötteet; MODELLED.
Oraakkeli
Sisäinen johdonmukaisuus: suljetussa muodossa taulukon 5a K_bch:stä ja kehyspituuksista laskettu spektrinen hyötysuhde täsmää taulukon 13 painettuihin hyötysuhteisiin (kynnystaulukon kirjoitusvirhetarkistus); linkkibudjetin osat täsmäävät suljettuihin muotoihinsa; valinta on monotoninen Es/N0:n suhteen ja kunnioittaa marginaalia; ACM siirtää vähintään vakiokoodauksen datamäärän. Ylilennon geometria tulee erikseen VALIDATED-tasoisesta näennäisten ylilentojen ennustimesta. MITÄ EI OLE: mitään ulkoista työkalua tai mitattua linkkiä ei ole verrattu; kynnykset ovat standardin ihanteelliset AWGN-arvot, eivät modeemin; sadevaimennusta, suuntausvirhettä ylilennon aikana ja pilottisymboleja ei mallinneta.
MallinnettuUsean satelliitin ja usean aseman maayhteyksien aikataulutus konfliktinratkaisullacontact_schedule (conflicts,objective,delivered,schedule_chronological,schedule_greedy,schedule_optimal,ContactScheduleScenario)
Ominaisuus
Ehdokasyhteydet jokaisesta satelliitti-asema-ylilennosta ACM-datamäärineen; konfliktit, joissa yksi antenni palvelisi kahta satelliittia käännösaikansa sisällä tai yksi satelliitti lähettäisi alalinkillä kahdelle asemalle yhtä aikaa; prioriteettipainotettu toimitustavoite, jota rajoittaa kunkin satelliitin kertymä; laiska rajahyötyyn perustuva ahne suunnitelma, ensin tullut ensin palvellaan -vertailutaso ja tarkka branch and bound enintään 26 ehdokkaalle, ahneen ratkaisun optimaalisuuskuilu raportoituna. Ajettavissa skenaariolajina contact-schedule. Havainnollistavat syötteet; MODELLED.
Oraakkeli
Sisäinen johdonmukaisuus: tarkka branch and bound täsmää raakaan kaikkien vaihtoehtojen läpikäyntiin pienillä satunnaisjoukoilla, jokainen suunnitelma tarkistetaan toteuttamiskelpoiseksi konfliktisääntöjä vasten, eikä ahne ratkaisu koskaan voita tarkkaa optimia. MITÄ EI OLE: mitään ulkoista aikatauluttajaa tai operatiivista suunnitelmaa ei ole verrattu; yhteydet otetaan kokonaisina (ei jakamista), kertymä on kiinteä ikkunan alussa, kiinteän käännösajan ylittävää kääntöaikaa ja aluksen tallennustilaa ei mallinneta.
ValidoituYksisuuntainen linkkibudjetti (viestintä / linkin suunnittelu)linkbudget
Ominaisuus
Vapaan tilan etenemishäviö, C/N₀, Eb/N₀, marginaali ja sulkeutuminen CCSDS 401 / DSN 810-005 -linkkiyhtälöllä arvoille EIRP/G·T/etäisyys/nopeus/kaista vaadittua Eb/N₀:aa vasten. Ajettavissa CLI:stä/sidonnoista skenaariolajina link-budget (scenarios/link-budget.toml)
Oraakkeli
Julkaistu syväavaruuden tietoliikenteen suunnitteluohjaustaulukko lukittuina numeerisina vektoreina: DESCANSO / J. H. Yuen (toim.), Deep Space Telecommunications Systems Engineering, JPL Pub 82-76, taulukko 1-1 (Galileo X-kaista) – kshana kokoaa taulukon rivikohdat uudelleen ja toistaa sen julkaistun päästä päähän L_fs 290,54 dB ja Pr/N0 54,6 dB-Hz; vapaan tilan häviö tarkistettu myös ITU-R P.525:tä vasten
MallinnettuTaloudellinen kustannus/kattavuus- ja ROI-kehystysfrugal (over walker)
Ominaisuus
Kustannus per kattavuusprosentti + kattavuus per euro -ROI tähdistön mitoitusmoottorin päälle; satelliittikohtainen kustannus on kutsujan hankkima matala/nimellinen/korkea-haarukka (ei keksittyjä hintoja)
Oraakkeli
Suljetun muodon kustannuslaskenta käsin johdettuja arvoja vasten; mallinnetun kattavuusluvun taloudellinen KEHYSTYS, ei tarjous eikä validoitu kustannusmalli
Testit
frugal::tests (hand-derived cost-per-coverage 48/96=0.5, ROI ratio 2.667, bracket-ordering + zero-coverage guards)
MallinnettuHavaitsemattoman häiriön eheysvaikutus (kontekstitietoinen HPL/VPL vs hälytysraja)integrity_impact (over raim)
Ominaisuus
Kuvaa havaitsemattoman harhautus- (spoofing) tai häirintäharhan (jamming) tehokkaaksi virheeksi → Stanford-alue (available/unavailable/MI/HMI) kontekstikohtaisia HAL/VAL-arvoja vasten (avoin taivas vs kaupunki)
Oraakkeli
Kokoaa ulkoisesti validoidun RAIM-Stanford-luokittelun (raim::classify_stanford); havaitsematta jääneen tapahtuman → AL-kuvaus itsessään on mallinnettu, ei sertifioitu eheysallokaatio
Testit
integrity_impact::tests (sama havaitsematta jäänyt tapahtuma kääntää tilan Available→MI→HMI kontekstin tiukentuessa; konservatiivinen PL→Unavailable; akselikohtainen HMI; syötteiden suojat)
Haarukoitu (paras/nimellinen/konservatiivinen) kylmäatomi-interferometrin suorituskyky – harhan epävakaus, nopeus-/kulmasatunnaiskävely, asteikkokertoimen vakaus, kyselyajan rajoittama näytteenottotaajuus, vyöepäselvyyden dynaaminen alue – jokainen lähdeviitteen kautta jäljitettävissä; syöttää QuantumNavBudgetia mallintamatta laitteistoa
Oraakkeli
Sisäinen johdonmukaisuus: viitattu VRW-haarukka ristiintarkistettu CaiAccelerometer::accel_asd-fysiikkaa vasten + raaka dynaaminen alue laskettuna vyöepäselvyysrajasta; luvut ovat MODELLED-tasoisia kirjallisuuskatsauksen haarukoita (needs_source_confirmation), yhtäkään laitetta ei ole validoitu, ei validointikehää
Testit
inertial::cai_params::tests (fysiikkapohjainen VRW osuu siteerattuun VRW-haarukkaan kaikilla 3 tasolla; raaka vyöhykeepäselvyyden alue laskettu suureesta k_eff·T²; konservatiivinen budjetti ajautuu enemmän kuin paras; jokainen haarukka lähteistetty +…
TIB:n Stanford-eheyskaavion epookkiluokittelu (nominal / unavailable / MI / HMI)
Oraakkeli
Riippumaton numpy-uudelleentoteutus neljän alueen säännöstä (scripts/gen_tib_scorer_reference.py) identtisellä näytejoukolla; menetelmä viitattu Stanford–ESA-eheyskaaviosta (Tossaint ym., ION GNSS 2007) ja RTCA DO-229 WAAS MOPS:sta. EI ExternalDataset-tarkkuusoraakkeli – benchmark on rehellisyydelle immuuni.
Testit
src/benchmark/stanford.rs::tests (neljä aluetta + sisältävät rajat + |virhe| + PL>AL-saatavuuden puute); tests/tib_scorer_reference.rs (luokittelumäärät vs riippumaton numpy kiinteällä synteettisellä joukolla)
TIB:n havaitsemattoman absorboitumisen verdikti (symmetrinen/replay on absorboitava PL:ään, ei koskaan raportoitava havaituksi)
Oraakkeli
Ominaisuustarkistus siitä, että Verdict-enum ei rakenteellisesti voi raportoida havaitsematonta vikaa havaituksi (Mizrahi RFC 7384); absorboitunut ⟺ PL ≥ siirtymä. Ei tarkkuusoraakkelia.
Testit
src/benchmark/scorecard.rs::tests (vertailu-PL absorboi; rikkinäinen PL absorboimaton-ei-koskaan-havaittu; havaittavan kattavuuden tuomio; rehellisyysominaisuus, jonka mukaan mitään kattavuus- tai havaitsemistuomiota ei voi saavuttaa havaitsemattomalle…
Partner-ownedAvaruusaluksen alustan suunnittelu (AOCS/lämpö/rakenteet/propulsio/teho)
Ominaisuus
Ei tarjota – Kshana on navigointisuorituskyvyn simulaattori, ei alustatoimittaja
Oraakkeli
Ei mitään: merkitty kumppanin omistamaksi
Testit
Partner-ownedNavigoinnin RF-hyötykuorman ja antennilaitteiston suunnittelu
Ominaisuus
Ei tarjota – Kshana mallintaa signaalin suorituskykyä, ei hyötykuorma- tai antennilaitteistoa
Oraakkeli
Ei mitään: merkitty kumppanin omistamaksi
Testit
Partner-ownedKvanttihyötykuorman laitteiston suunnittelu ja kypsytys
Ominaisuus
Ei tarjota – vain suorituskykymalleja; kylmäatomi- ja kellolaitteisto on kumppanin
Ashby & Patla 2024, 'A Relativistic Framework to Estimate Clock Rates on the Moon', Astronomical Journal 167:149 (NIST; IAU/IAG LunaNet LTC:n perusta): Kuun pinnan itsepotentiaali L_m = 3.13881e-11 ja pitkäaikainen kokonaisarvo 56,02 µs/vrk täsmäytetty julkaistuina numeerisina arvoina; geosentrinen Kuun nopeus ristiintarkistettu JPL DE440:tä vasten (de440s.bsp SPICEn kautta)
Testit
lunar_time::tests (closed-form rate; round-trip); tests/lunar_coordinate_time_reference.rs (LTC self-potential & secular-rate terms vs published Ashby & Patla 2024 values + geocentric Moon speed vs JPL DE440)
Raportti hybrid-optical-rf ilmoittaa linkkikonfiguraation, jolla se todella ajettiin (kantoaallon aallonpituus, lähetys- ja vastaanottoapertuuri, etäisyys, pulssin leveys, integrointiaika, hyötysuhteet ja häviöt, oletukset ratkaistuina) ja sisältää yksikkölohkon, joka antaa jokaisen sellaisen suureen yksikön ja alkuperäluokan, jonka artikkeli todennäköisesti lainaa, mukaan lukien siirtokovarianssin jäljet neliömetreinä
Oraakkeli
Ei ulkoista oraakkelia, eikä sellainen ole mahdollinen: tämä on itsekuvaus, ei mittaus. Se kirjataan, koska sen puute oli vika – P5:n piti lainata kantoaallon aallonpituus ja lähetysapertuuri lähdekoodin oletuksista ja päätellä sisäisen johdonmukaisuustarkistuksen avulla, että pelkkä variance oli neliömetreinä. Päätelmä oli oikea, ja juuri siksi sillä oli väliä: mikään ei olisi havainnut sen olleen väärä
Testit
hybrid_integrity::tests (ratkaistu kokoonpano toistetaan oletuksille ja ohituksille ilman aallonpituuden edestakaista kiertoa metrien kautta; jokainen units-merkintä sisältää sekä yksikön että alkuperäluokan; jokainen…
Raportti hybrid-optical-rf ilmoittaa RF-linkin saatavuuden, joka on koottu suureista, jotka moottori jo laskee, ei tuodusta ilmastotiedosta, ja ilmoittaa koostamisen nimettynä sääntönä: A_rf = I_closure * I_track, jossa I_closure on yksisuuntaisen CCSDS-401 / DSN-810-005 -linkkibudjetin (linkbudget::link_budget, Eb/N0-marginaali >= 0) sulkeutumisverdikti skenaarion omalla etäisyydellä ja I_track on seurantasilmukan verdikti (jamming::lock_status) siitä C/N0:sta, jonka SAMA budjetti palautti. Jokainen tekijä vie syötteensä alkuperäluokan läpi tulosteeseen, ja tekijät, jotka tarkoituksella EIVÄT ole tulossa mukana – geometrinen näkyvyys, häiriön aiheuttama esto ja RF-katkosten ilmastotiedot – nimetään syineen sen sijaan, että ne asetettaisiin hiljaa arvoon 1. Ratkaistu RF-osuus toistetaan omana rf_link_configuration-lohkonaan, ja indikaattorin vieressä olevat jatkuvat luvut (linkin marginaali, C/N0-marginaali, suljetun muodon sulkeutumis- ja seurantaetäisyydet sekä etäisyyden käyttöaste) ovat saman budjetin etäisyyskäänteisfunktioita. Raportti toteaa täydessä laajuudessaan lohkossa ja yksikkömerkinnässä, johon lukija päätyy, että tämä luku on MARGINAALIN/GEOMETRIAN RAJOITTAMA ja DETERMINISTINEN, kun taas optinen saatavuus on SÄÄN/ILMASTOTIEDON RAJOITTAMA ja todennäköisyyspohjainen, joten niitä ei voi koskaan esittää vertailukelpoisena prosenttilukuparina
Oraakkeli
Ei ulkoista oraakkelia, ja ExternalDataset on hylätty. Kaksi syötettä ovat Eb/N0-marginaali ja C/N0-kynnyksen ylitys, molemmat MODELLED-tasoisen EIRP:n, laatuluvun ja summattujen häviöiden allokaation funktioita; Maa–Kuu-optiselle/RF-hybridipalvelulle ei ole mitattua saatavuustallennetta, jota vasten koostettua lukua voisi tarkistaa. Olemassa olevat tarkistukset ovat sisäisiä ja ilmoitetaan sellaisiksi: koostaminen lasketaan uudelleen raportin omista julkaistuista marginaaleista eikä lähettäjän sisäisistä arvoista, ja sulkeutumisetäisyys varmistetaan ajamalla linkkiyhtälö uudelleen SILLÄ etäisyydellä ja vaatimalla marginaalin häviävän – käänteisfunktion edestakaisajo, ei riippumaton toteutus. Luvun rehellinen raja kirjataan itse raporttiin: se on deterministinen 0/1-indikaattori, ei todennäköisyys, koska mikään tässä moottorissa ei mittaa RF-linkin katkosjakaumaa tällä kaistalla ja geometrialla. Tuo puuttuva syöte nimetään kentässä rf_availability.factors_not_included eikä keksitä, ja sen toimittaminen on se, mitä todennäköisyyspohjainen RF-saatavuus vaatisi
Testit
hybrid_integrity::tests (saatavuus on kahden indikaattorin tulo laskettuna uudelleen raportin omista marginaaleista, ja nämä marginaalit kootaan uudelleen raportin omasta EIRP:stä, vapaan tilan vaimennuksesta…
MallinnettuVertailukelpoinen optisen ja RF-etäisyysmittauksen vertailuhybrid_integrity,optical_linkbudget,linkbudget,navsignal
Ominaisuus
Raportti hybrid-optical-rf antaa optisen ja RF-etäisyysmittauksen suhteen siten, että YKSI konfiguraatio, jolla molemmat osuudet arvioitiin, kulkee samassa oliossa: sama yksisuuntainen reitti, sama etäisyys ja sama kertymäaika. Optinen osuus on moottorin fotonirajoitteinen ToA-CRLB yksisuuntaisella fotonimäärällä; RF-osuus on moottorin DLL:n early-late-lämpökoodinseurantajitter sillä C/N0:lla, jonka moottorin oma linkkibudjetti palauttaa samalle yksisuuntaiselle etäisyydelle. Silmukan kohinakaistanleveys johdetaan, ei valita: B_L = 1/(2*integration_s) asettaa RF-osuuden täsmälleen optiseen kertymäaikaan, ja jos kutsuja ohittaa sen niin, että kaksi keskiarvoistusaikaa eroavat, suhde on REFUSED – null, ristiriita ja molemmat ajat nimettyinä – sen sijaan, että se esitettäisiin kahdessa toimintapisteessä. Suhdetta ei muodosteta skenaarion VALITTUA parametrista rf_position_sigma_m -arvoa vasten, ja kieltäytyminen kertoo syyn: tuo syöte ei sisällä lainkaan konfiguraatiota. Julkaistu kaksisuuntainen optinen otsikkoluku ja tarkka kerroin, joka yhdistää sen yksisuuntaiseen vertailuosuuteen, annetaan suhteen vieressä, jotta raporttia ei voi lukea kahden keskenään ristiriitaisen optisen sigman kantajana
Oraakkeli
Ei ulkoista oraakkelia SUHTEELLE, ja ExternalDataset on hylätty tarkoituksella. Taustalla olevalla RF-ketjulla sellainen on – tests/validate_p5_rf_ranging_precision.rs tarkistaa linkbudget::link_budget- ja navsignal::dll_code_jitter_chips-funktiot riippumatonta Python/NumPy-testiaineistoa vasten sekä kovakoodattua Kaplan & Hegarty -esimerkkiarvoa vasten (2.814e-3 piiriä / 0,825 m kohdassa 45 dB-Hz) – ja optisella CRLB:llä on oma suljetun muodon rivinsä. Kummankin ankkurin väittäminen tälle riville olisi lainattua validointia, jonka estämiseksi matriisin invariantit ovat olemassa: tässä suure on SUHDE konfiguraatiossa, jonka EIRP, laatuluku, lähetysteho ja apertuuri ovat MODELLED-tasoisia, eikä mitattua optisen ja RF-etäisyysmittauksen vertailua yhteisessä toimintapisteessä ole, jota vasten sitä voisi tarkistaa. Sisäisesti tarkistetaan se, minkä suhde voi todella tehdä väärin: että kaksi osuutta ovat yhdessä toimintapisteessä. Se mitataan skaalaamalla yhteistä kertymäaikaa ja vaatimalla, että molemmat osuudet liikkuvat saman neliöjuurilain mukaan ja suhde pysyy paikallaan, ja se pakotetaan hylkäämällä suhde kokonaan, kun keskiarvoistusajat eroavat. Molemmat osuudet ovat lämpö-/laukauskohinarajoja ja molemmat jättävät pois median viiveen, kellovirheen ja epäselvyyden, joten poisjättö on identtinen kummallakin puolella; raportti sanoo tämän eikä jätä sitä pääteltäväksi
Testit
hybrid_integrity::tests (suhde on kahden annetun haaran osamäärä suhteellisella tarkkuudella 1e-15, ja sen käänteisluku ja desibelimuodot ovat samat; kunkin haaran etäisyyden ja ajan sigma liittyvät toisiinsa täsmälleen c:n kautta; annettu yhteinen…
Linkkibudjettiraportti ilmoittaa jokaisen absoluuttisen vakion, josta sen oma marginaali laskettiin – kantoaaltotaajuuden, jota vapaan tilan häviö käytti, EIRP:n, laatuluvun, summatun häviön ja Boltzmannin termin – sekä vaaditun G/T:n, jolla marginaali on nolla, linkkivakion (EIRP - häviöt - vaadittu Eb/N0), joka on ainoa yhdistelmä, jonka julkaistu nopeus/vahvistus-taulukko voi koskaan kiinnittää, ja kun kutsuja ilmoittaa järjestelmän kohinalämpötilan, vastaanottoantennin vahvistuksen, jonka tuo laatuluku edellyttää
Oraakkeli
Ei ulkoista oraakkelia: tämä on itsekuvaus yhtälöstä, joka on jo validoitu julkaistua suunnitteluohjaustaulukkoa vasten (ks. rivi yksisuuntainen linkkibudjetti). Se kirjataan, koska sen puute oli mitattu vika – tiedoston d1_rate_gain_beamwidth.csv toistaminen vaati yhden tehollisen vakion takaisinratkaisua tarkkuuteen 0,0034 dB kaikilta kolmeltakymmeneltä riviltä, ja moottori sekä nimeää nyt tuon yhdistelmän että todistaa testillä, ettei mikään julkaistu taulukko olisi voinut koskaan erottaa sen kolmea osaa
Testit
linkbudget::tests (kolmella kaistalla, neljällä etäisyysdekadilla ja molemmilla sulkeumatuomioilla marginaali ja sen alla oleva vapaan tilan vaimennus lasketaan uudelleen pelkästä raportista paremmalla kuin 1e-9 dB:n tarkkuudella; vaadittu G/T…
MallinnettuKelloluokkakohtainen Kuun ajan risteystaulukkolunar_time_budget
Ominaisuus
Yksi Kuun aikabudjetin ajo tuottaa kello-vs-koordinaatisto-risteysrivin jokaiselle kelloluokalle yhtä jaettua koordinaatistotermiä vasten, joten kello on ainoa vertailun muuttuja; jokainen rivi kantaa kahdella tavalla saavutetun risteyksen – bisektiolla yleisestä potenssilakiaikavirhekäyrästä ja algebrallisesti käänteisfunktiolla rivin hallitsevasta kohinatyypistä – sekä niiden suhteellisen eron
Oraakkeli
Kaksi eri koodikannan sisäistä laskentaa samalle suureelle, ei yhden toistoa: IEEE-1139-potenssilakikäyrän bisektio ei tiedä mitään kohinatyypistä, kun taas suljettu muoto kääntää hallitsevan tyypin algebrallisesti, joten väärin luokiteltu kohinatyyppi tai huono haarukka näkyy ei-pienenä suhteellisena erona. Neljä arvoa toistavat myös artikkelin julkaistun taulukon puoleen viimeisestä painetusta numerosta – mutta tuo taulukko rekonstruoitiin itse samasta suljetusta muodosta, joten se on toistettavuustarkistus eikä ulkoinen oraakkeli, ja koordinaatistotermi, jota vasten se mitataan, on mallinnettu allokaatio
Testit
lunar_time_budget::tests ja lunar_time_budget_scenario::tests (kaikki neljä luokkaa läsnä yhdessä ajossa ja pyydetyssä osajoukon järjestyksessä; jokainen rivi vastaa omaa suljettua muotoaan paremmalla kuin 1e-12 suhteellisella tarkkuudella; skaalaus…
ValidoituYhteinen UT1- ja napaliikevirhe yhteisellä rivijoukollaframe_eop,realtime_frame_eop
Ominaisuus
Yksi taulukko raportoi UT1-ennustevirheen, napaliikkeen napavirheen ja niiden neliösummayhdistelmän Kuussa IDENTTISELLÄ epookkijoukolla horisonttia kohti ja antaa epookit, joissa kukin komponentti mitattiin. Lisäksi skenaario nimeää käytössä olevan EOP-syötteen ja purkaa sen rivilaskennan, ja antaa aina ennustettu vs lopullinen -horisonttitaulukon sekä nimenomaisen toteamuksen siitä, miksi se on tyhjä, kun se on tyhjä
Oraakkeli
astropy 8.0.1 utils.iers (BSD-3), joka lukee IERS finals2000A -tuotteen omalla Bulletin-B-muuten-A-säännöllään, ja pyerfa 2.0.1.5 (SOFA) täydet taivaallisesta maanpäälliseen -rotaatiot (c2i06a, sp00, pom00, c2tcio; Maan kiertokulma IERS 2010 yhtälön 5,15 mukaan tarkassa aritmetiikassa), ajettuina erillisinä ohjelmina jäädytetyn 2026-09-30 finals2000A.all -tiedoston sanatarkoilla riveillä; ennakkorekisteröity (455b8fb5) muutoksilla A1 ja A2, jotka kiinnittivät vain oraakkelin numeerisen tarkkuuden (molemmat julkistettu ajojen kanssa, joita ne seurasivat): jokainen taulukon 3 epookkilista sama, UT1- ja napatunnusluvut 6e-16 sisällä, yhdistelmä 1.9e-7 sisällä, 12/12 ennustettu vs lopullinen -tapausta. Yhdistelmätarkistus ei erottele napatermin virheitä alle noin 1e-4 suhteellisen, koska UT1 hallitsee sitä; navan tarkkuus nojaa napatunnuslukutarkistukseen, jonka kynnys on 1e-9. Epookkijoukko- ja varasäännöt ovat generaattorin peilaamia Kshanan määritelmiä, ja tyhjän taulukon tilat ovat suunnittelukäyttäytymistä ilman ulkoista totuutta. Suuruusluokat: IERS Annual Report 2019 taulukon 3a toteutuneet ennustevirheet, Kshana/IERS 1,001 – 1,100 arvoilla 1 – 90 vrk (kynnys [0,8, 1,25], mitattu). Rivilaskenta: astropy (offline-syöterivi). Kierros 1 (säilytetty regressiotestinä): 178 Bulletin A -julkaisun painettua tarkkuuskaavaa vasten napa täsmää 1.5x:n sisällä eikä UT1 täsmää, mikä testaa IERS-kaavaa sen toteutunutta virhettä vasten
Testit
frame_eop::tests ja realtime_frame_eop::tests (kaikilla kolmella komponentilla on yhtä suuret, alkioittain identtiset, tiukasti nousevat epookkijoukot molemmissa todellisissa IERS-otteissa; yhteinen joukko supistuu leikkaukseksi, kun…
ValidoituOffline-oletuksena oleva Maan orientaatiosyöte on todellinen IERS-tuoterealtime_frame_eop,eop
Ominaisuus
realtime-frame-eop-ajonaikainen oletus on kirjaston oma sulautettu kopio sanatarkasta IERS finals2000A -otteesta (tools/finals2000A_20260930.txt: 174 peräkkäistä päivärivia, MJD 61224-61397, leikattu 2026-09-30:n finals2000A.all -tiedostosta), ja se sisältää kaikki kolme rivivintagea, jotka muoto määrittelee, luokiteltuna IERS:n I/P-lipuilla (eop::row_vintage): 30 Bulletin B finals -riviä, 54 nopeaa mitattua riviä (lippu I ilman Bulletin B -lohkoa) ja 90 Bulletin A -ennustetta (lippu P). Paljas ajo ilman tiedostoargumenttia ja ilman verkkoa antaa täytetyn horisonttikohtaisen taulukon, rivilaskennan rows = final_rows + rapid_rows + prediction_rows (174 = 30 + 54 + 90) ja predicted_rows.n = 90 välillä MJD 61308-61397; ennustettu vs lopullinen -vertailujen julkaisuhetken katkaisu on viimeinen mitattu rivi. Aiempi 32 rivin ote (tools/finals2000A_2026.txt, jokaisen rivin lippu I) ja viiden rivin vain lopullisia sisältävä ote pysyvät toimitettuina ja käytössä: niillä predicted_rows.n on 0, mikä on syötetiedoston ominaisuus eikä jäsentimen tulos
Oraakkeli
astropy 8.0.1 astropy.utils.iers.IERS_A (BSD-3-Clause), joka lukee samat tavut omalla lukijallaan, ja IERS Bulletin A Vol. XXXIX No. 039 -taulukko kopioituna numero numerolta; ennakkorekisteröity (6fdae01b) kuudella tarkalla kriteerillä ennen kuin astropy ajettiin. Kaikki kuusi täyttyvät: 30 lopullista, 54 nopeaa ja 90 ennustettua riviä yhtäpitävillä MJD-listoilla, jokaisen ennustetun rivin lippu P, oletusajon rivilaskenta sama ja ennusteet täsmäävät Bulletin A:han viimeisen painetun numeron tarkkuudella. Julkistettu: leikkaus valittiin lippujen ja Bulletin B -lohkon pelkällä sarakeviipaloinnilla, joka näytti 30/54/90, ennen commitia; ote on sanatarkka viipale, jonka tämä repositorio leikkasi IERS-tuotteesta (SHA-256 testiaineiston NOTICE-tiedostossa). Validoitu väite on toimitetun oletussyötteen vintage-luokittelu ja rivilaskenta sekä sen ennustetut rivit; mielivaltaiset käyttäjäsyötteet luokitellaan samalla lippusäännöllä mutta eivät kuulu vertailuun. 0,30 kierros 1 (korvattu): aiempi oletus kutsui 12 lippu-I-riviä Bulletin A -ennusteiksi; moottori luokittelee nyt lipun mukaan. REVISIONS: oletusajon solut, jotka muuttuivat, on lueteltu vanhasta uuteen tiedostossa docs/revisions/M035-default-eop-recut-cell-changes.md (predicted_rows 12 -> 90, napalattia 0,06776 -> 0,05550 mas, Maan orientaatiotermi 14,01601 -> 14,01583 m, kokonaisuus 20,09759 -> 20,09746 m ja 67,03834 -> 67,03790 ns, tiedoston tests/golden/realtime-frame-eop.csv taulukon 2 rivit ja operatiivisen ennustimen yhtäpitävyysluvut); aiemmat tiedostossa docs/revisions/G12-default-eop-cell-changes.md
MallinnettuKaappausjalanjälki korkeuden ja keilanleveyden funktionaantenna
Ominaisuus
Kaksiakselinen pyyhkäisy kuviopainotetusta, korkeusrajoitetusta pintakaappausjalanjäljestä lähettimen korkeuden ja antennin halkaisijan yli, yksi rivi toimintapistettä kohti ja kunkin halkaisijan edellyttämä puolitehokeilanleveys, sekä limbin kaappaus raportoituna KYNNYKSENÄ – riviä kohti limbin J/S, sen marginaali ja lähetysteho, joka sulkisi sen; ruudukkoa kohti paikannetut ylitykset tai nimenomainen toteamus siitä, ettei limbiä saavuteta missään ruudukossa, vajeen kanssa
Oraakkeli
Joukkoon sisältyminen: häiriö-signaali-suhde tulee tasaisena desibelisiirtymänä, joten kaapattu joukko suuremmalla lähetysteholla sisältää joukon pienemmällä ja osuus voi vain kasvaa – ominaisuus, jota Airy-kuvio EI anna keilanleveyden tai korkeuden suhteen, jossa kaapattu alue hajoaa renkaiksi ja osuus on aidosti ei-monotoninen. Mikään julkaistu taulukko ei anna Kuun kiertoradalla olevan lähettimen kaapatun kiekon osuutta korkeuden ja keilanleveyden funktiona, joten näille soluille ei ole mitään ulkoista tarkistuskohdetta; alla oleva kuvio on erikseen validoitu julkaistuja Bessel-arvoja vasten ja pitää oman rivinsä
Testit
antenna::tests ja attack_surface::tests (ruudukko on täydellinen ja jokainen kaapattu osuus on välillä [0 1]; kaapattu osuus ei ole laskeva lähetystehon suhteen jokaisessa solmussa; se EI ole monotoninen keilanleveyden tai…
Skenaario lunar-time-budget julkaisee taulukkoarvoiset tulosteensa pitkän muodon (ruudukkoindeksi, keskiarvoistusaika, termi) taulukkona raportin rinnalla, joten seitsemän termikohtaista x(tau)-käyrää ja neliösummakokonaisuus ovat moottorin tulostetta eikä jotain, minkä lukija rakentaa uudelleen menetelmäosiosta
Oraakkeli
Vain itsejohdonmukaisuus: julkaistu kokonaisuus tarkistetaan saman tiedoston termien neliösummaa vasten, ja tuotettu käyrä toistaa julkaistun p3_time_budget_curve.csv-tiedoston kaikissa 57 pisteessä. Molemmat tarkistukset jakavat tämän moottorin omat termimääritelmät, joten kumpikaan ei ole riippumaton. Kellotermi nojaa julkaistuihin kellomäärittelyihin, mutta linkin, koordinaatiston, relativistisen ja efemeridilattian SUURUUDET ovat dokumentoituja budjettiallokaatioita ilman ulkoista oraakkelia
Testit
lunar_time_budget_scenario::tests (kaikki 57 keskiarvoistusaikaa x 8 termiä läsnä, ruudukon indeksi kulkee 0..=56 ja kantaa 8 riviä kutakin; kokonaisrivi on sen vieressä olevan seitsemän termin neliösumman neliöjuuri jokaisella tau-arvolla;…
MallinnettuKuun aseman aikalaboratorio: miniRAFS-holdover vs LTClunar_time_lab (over clock_specs,lunar_time_budget,lunar_time)
Ominaisuus
Skenaarion lunar-time-budget valinnainen [time_lab]-lohko mallintaa Kuun vertailuaseman kelloa (oletuksena miniRAFS-luokka, tai mikä tahansa nimetty luokka, tai ilmoitettuihin vakauspisteisiin sovitettu laitekortti), joka ohjataan Kuun koordinaattiaikaan ja sen jälkeen joko vapaasti käyvänä tai uudelleenohjattuna N sekunnin välein: aikavirhekäyrä x(t) kellon potenssilakitermin, vakioisen ohjausjäännöksen (ILLUSTRATIVE), vakioisen LTC-toteutusjäännöksen ja valinnaisesti mukaan otettavan aseman korkeuden nopeustermin neliösummana; ohjauksen jälkeinen aika arvoihin 1, 10 ja 100 ns (tai ilmoitetut kynnykset) bisektiolla hallitsevan kohinatyypin suljetun muodon käänteisfunktion rinnalla sekä hallitseva termi kullakin ilmoitetulla horisontilla, kaikki yksiköineen
Oraakkeli
Vain sisäinen johdonmukaisuus: bisektiolla saatu aika kynnykseen tarkistetaan kellon hallitsevan kohinatyypin suljetun muodon käänteisfunktiota vasten ja vapaasti käyvä kellotermi budjetin omaa kellotermiä vasten. Kelloluokat nojaavat julkaistuihin yhden vuorokauden määrittelyihin (niiden omat rivit); LTC-nopeutta ei johdeta tässä uudelleen ja sillä on oma VALIDATED-rivinsä (Lunar coordinate time); ohjausjäännös on ILLUSTRATIVE, toteutusjäännös on budjettiallokaatio, eikä lämpömallia sisällytetä. ICG WG-B:n Lunar PNT -aineiston kesäkuun 2024 nanosekuntitason tavoite lainataan lähteen toteamuksena, ei omaksuta väitteeksi; mikään tässä ei ole väite minkään todellisen asemakellon ominaisuuksista
Testit
lunar_time_lab::tests (free_run_clock_term_is_the_budget_clock_term: kun ohjaus on pois, kelloterm vastaa budjetin kelloterm-arvoa bitilleen kaikilla neljällä luokalla; bisection_matches_the_closed_form 1e-9 sisällä…
MallinnettuKuun geodeettinen VLBIlunar_vlbi
Ominaisuus
Lähikentän VLBI-viive Maa-peruslinjalle, joka havaitsee Kuun majakan + osittaisderivaatat
Oraakkeli
Tasoaaltomallin delta_dor (sama koodikanta) kaukokentän rajalla; äärelliset differenssiosittaisderivaatat. 0,30 ulkoinen vertailu, havainto (pysyy tasolla MODELLED): ANISE 0,10 konvergoituja valon kulkuaikoja vasten DE440:n kautta (75 viivettä 2024-01-01 kolmella DSN-peruslinjalla, tuotettu ilman Kshanan koodia työkalulla xval/anise-lunar-od), yksikään viive ei ole 1 ps:n toleranssin sisällä. Suurin ero on 24 µs, joka johtuu analyyttisestä Kuun keskipisteestä (noin 200 km DE440:stä), yhdestä hetkellisestä geometriasta ilman valon kulkuajan iterointia (3,6 µs) ja pudotetusta napaliikkeestä; majakan osittaisderivaatat eroavat jopa 2.9e-3 suhteellisesti kynnyksen 1e-6 sijaan. Moduulidokumentaation väite, että koordinaatistoapproksimaatiot ovat mallin tarkkuuden alapuolella, ei pidä tällä tasolla. 0,30 kierros 2: ydinpolku (lunar_vlbi::KernelGeometry) on validoitu NAIF SPICEn valon kulkuaikoja vasten omalla rivillään, Lunar geodetic VLBI, kernel path; tämän polun ANISE-vertailu (75/75 1 ps:n sisällä, pahin 0,12 ps, tests/lunar_vlbi_anise_oracle.rs::kernel_delay_matches_the_anise_light_time_difference) on vain ytimen arvioinnin ristiintarkistus, koska valon kulkuajan ratkaisu kyseisessä testialustassa on tämän projektin oma. Tämä rivi (analyyttinen oletuspolku) pysyy tasolla MODELLED ylläolevan havainnon kanssa
Lähikentän VLBI-viive Maa-peruslinjalle, joka havaitsee Kuun majakan, majakan ja aseman osittaisderivaatoilla, ydinpolulla (lunar_vlbi::KernelGeometry): DE440:n Maa ja Kuu, DE440:n Kuun pääakselit, ITRF93-Maan orientaatio UT1:llä ja napaliikkeellä, kukin valon kulkuaika konvergoitu barycentric-koordinaatistossa, osittaisderivaatat valon kulkuaikakertoimella 1/(c - u.V). Ajettavissa skenaariona lunar-vlbi, kun planetary_kernel_path, earth_orientation_kernel_path ja moon_orientation_kernel_path on asetettu; validoidut tulosteet ovat ydinpolun geometric_delay_s-sarja ja epoch_partials. Ydinpolulla delay_s lisää analyyttisen erotetun Shapiro-termin, jota ei verrata, eikä delay_rate- ja near_field_correction_us -arvoja verrata
Oraakkeli
NAIF SPICE Toolkit N0067 (spiceypy 8.2.0, MIT) konvergoidut newtonilaiset valon kulkuajat (spkcpt/spkcpo, CN) MOON_PA_DE440-koordinaatistoon kiinnitetystä majakasta DSN-asemille DSS-14, DSS-43 ja DSS-63 NAIF:n asemaytimestä earthstns_itrf93_260814.bsp, tiedostoilla de440s, moon_pa_de440_200625, moon_de440_250416.tf, earth_latest_high_prec ja naif0012; osittaisderivaatat ovat SPICEn valon kulkuaikojen viiden pisteen keskeisdifferenssejä, eivät Kshanan kaavaa 1/(c - u.V). Ennakkorekisteröity (a689c797, 2024 epookkia) kynnyksillä 1 ps jokaiselle viiveelle ja 1e-6 suhteellinen jokaiselle osittaisderivaatalle. Tuo ensimmäinen ajo epäonnistui (17/75 viivettä 1 ps:n sisällä, pahin 1.03e-11 s): SPICE kantaa ET:tä yhtenä double-arvona, jonka väli vuonna 2024 pyöristää lähetysepookin jopa 6e-8 s, noin 6 ps valon kulkuaikaa, ja jäännös täsmää tähän pyöristykseen korrelaatiolla 0,99999 (lukittu; tarkastaja toisti sen riippumattomasti). Muutos 66e365d4, kirjoitettu tuon tuloksen jälkeen ja ennen kuin sen testiaineistoa oli olemassa, siirsi saman oraakkelin ja kynnykset 25 tunnin välein oleviin epookkeihin lähelle J2000:aa, jossa ET-väli on enintään 1.5e-11 s: 75/75 viivettä 1 ps:n sisällä (pahin 6.2e-14 s), 75/75 majakan osittaisderivaattaa (pahin 7.4e-9), 150/150 aseman osittaisderivaattaa (pahin 3.8e-11). Väitteen ulkopuolella: analyyttinen oletuspolku (sarjamuotoinen Kuu ja keskimääräinen Kuun koordinaatisto, 24 µs ANISEsta DE440:n kautta, rivi Lunar geodetic VLBI), erotettu Shapiro-termi, jonka skenaario lisää analyyttisesti, media sekä barycentric-geosentrinen asteikko
Moottorin oma puhtaasti Rust-kielinen NAIF-binääriytimien lukija (naif_kernel): DAF-säiliö (molemmat tavujärjestykset, linkitetyt yhteenvetotietueet), SPK-tyypin 2 Chebyshev-paikkasegmentit ketjutettuna keskustensa kautta alimpaan yhteiseen kantaan, ja binäärisen PCK-tyypin 2 Euler-kulmasegmentit muutettuna J2000-koordinaatistosta kappaleen koordinaatistoon -rotaatioksi, epookit kaksiosaisena ET:nä niin, että alle mikrosekunnin siirtymä säilyttää tarkkuutensa. Sen kautta lukevat DE440:n KernelEphemeris (ephem_provider) sekä lunar_vlbi-, lunar_llr- ja lunar_vlbi_fim-moduulien ydinpolut. Väite on, että se lukee JPL:n ytimiä oikein; se ei ole väite siitä, että DE440 tai moottorin analyyttiset Aurinko- ja Kuu-sarjat olisivat tarkkoja
Oraakkeli
Kaksi riippumatonta ytimenlukijaa samoilla NAIF-tiedostoilla: NAIF SPICE Toolkit N0067 (CSPICE spiceypy 8.2.0 kautta, MIT; spkezr ja pxform) ja ANISE 0.10.6 (Nyx Space, MPL-2.0; Almanac.translate ja Almanac.rotate), molemmat ajettuina erillisinä ohjelmina tiedostoilla de440s.bsp ja moon_pa_de440_200625.bpc. Ennakkorekisteröity (abcd9133) ennen kuin mitään testiaineistoa tai oraakkeliarvoa oli olemassa: ruudukon siemen on kyseisen commitin tiivisteen 16 ensimmäistä heksadesimaalinumeroa, joten kumpaakaan 200 epookkia tai kappalepareja ei voitu valita tulos silmien edessä; jokainen epookki kantaa myös Kuun ja Auringon suhteessa Maahan. Kynnykset kiinnitetty etukäteen kaksoistarkkuuden Chebyshev-arvioinnista (enintään 15 kerrointa, n^2 u = 2.5e-14 arviointia kohti, kaksi arviointia ja enintään kaksi hyppyä puolta kohti): paikka 1e-13 R + 1e-5 m, nopeus 1e-13 V + 1e-10 m/s, R ja V suurempi suuruus suhteessa alimpaan yhteiseen kantaan; rotaatioalkio 1e-13 W + 1e-15, W kattavan tietueen kerroinsumma; ANISE lisää 2 ns suhteellista liikettä nanosekuntiepookeilleen. Tulos: jokainen 600 tilasta ja 200 rotaatiosta on kynnyksensä sisällä molempia oraakkeleita vasten, sekä leikatuilla että täysillä ytimillä; pahin 6.0e-3 kynnyksestä (paikka), 5.9e-3 (nopeus), 3.7e-3 (rotaatio). Mutaatio: kunkin tietueen arviointi arvolla -s epäonnistuttaa 3597 vertailua. Julkistettu: aiempi 25 epookin tarkistus SPICEä vasten (4.6e-5 m, tests/naif_kernel_reader_check.rs) nähtiin ennen tätä riviä eikä se ole sen todiste; testiaineiston generaattorin ensimmäinen ajo keskeytyi tyhjään ruudukkoväliin ennen kuin se tuotti yhtään arvoa ja korjattiin. Molemmat puolet lukevat DE440:n, joten yhtäpitävyys validoi lukijan, ei efemeridiä
Testit
tests/naif_reader_spice_oracle.rs::reader_matches_spice_and_anise_on_the_post_registration_grid (600 de440s.bsp-tilaa ja 200 MOON_PA_DE440-kiertoa 200 epookilla 1849-2150 ja satunnaisia kappaleparit arvottuna…
MallinnettuMaan GNSS Kuun etäisyydelläearth_gnss_lunar
Ominaisuus
Maan GNSS:n vastaanotto Kuun etäisyydellä: heikon signaalin kerros, jonka P7:n taulukko 1 nimeää ja jolle moottorilla ei ollut mallia. Satelliittia ja epookkia kohti se laskee poikkeaman keilan akselista suhteessa lähettimen nadiriin, peittääkö Maa suoran reitin, vinoetäisyyden ja sen vapaan tilan häviön, lähetysvahvistuksen tässä kulmassa, vastaanotetun tehon ja kantoaalto-kohinatiheyden; sen jälkeen se aggregoi vain linkit, jotka ylittävät seurantakynnyksen, ja pyyhkäisee koko tähdistökierroksen, jotta vastaus on JAKAUMA eikä yksittäinen otos. Kolme tosiasiaa ohjaa tulosta, ja raportti toteaa jokaisen: Maa näkyy 13,90 asteen kulmassa tähdistön säteeltä, joten keilan HUIPPU ei ole geometrisesti saatavilla yhdellekään Kuuhun suuntautuvalle säteelle; jäljelle jää pääkeilan reuna ja sivukeilat, se alue, jossa LuGRE toimi Kuussa 2025; ja L1-polun häviö on noin 208 dB, noin 25 dB enemmän kuin maanpäällinen käyttäjä maksaa. MEASURED mukana toimitetulla 24 satelliitin GPS-luokan geometrialla 64 epookin yli yhden kiertojakson ajan: SIGNAALIN saatavuus 0,375 parhaan linkin ollessa 30,93 dB-Hz ja PAIKKARATKAISUN saatavuus 0,000 – enintään kaksi samanaikaista seurattavaa linkkiä, ei koskaan neljää, jonka paikka vaatii. Näiden kahden saatavuuden erottelu on koko pointti, ja raportti ei salli niiden sekoittamista: Maan GNSS Kuun etäisyydellä on AJOITUSLUOKAN kerros, ei paikkaluokan, ja kerroksellisen kestävyyden priorin on otettava paikkaratkaisun saatavuus. Ehdollisuus annetaan samasta syystä – jokainen näkyvä satelliitti on Kuusta nähtynä muutaman asteen levyisen kartion sisällä, joten näkölinjat ovat rakenteellisesti lähes yhdensuuntaisia. Ajettavissa lajina earth-gnss-lunar Uudelleenmuotoiltu D7:n mukaan: väite Kuun etäisyydellä on satelliittien välinen SUHTEELLINEN kantoaalto-kohinatiheys yhdessä epookissa, mitatuista kaksiulotteisista lähetyskuvioista (NAVCEN Block IIR/IIR-M) sekä geometrinen näkyvyys; absoluuttista C/N0:aa ei väitetä (Parker ym. raportoivat yhteisen 7 – 12 dB:n häviön).
Oraakkeli
Suljetun muodon identiteetit ja sisäinen johdonmukaisuus; ulkoista oraakkelia EI väitetä. Limbin puolikulma tarkistetaan lausekkeella asin(R_earth/r_orbit) ja geometria sitä vasten; vapaan tilan häviö, DOP-ydin ja tämän kokoama SGP4-eteneminen on kukin validoitu ulkoisesti omilla riveillään, eikä tämä rivi lainaa niiden asemaa. MIKSI MODELLED, ja se on lähetyskuvio: vahvistus kulman funktiona on tasaisesti valaistu ympyräapertuuri, Airy-kuvio, kun taas todellinen GPS L1 -antenni on kahdentoista elementin kierukkaryhmä, jonka muotoiltu pääkeila huipentuu akselin ulkopuolelle tasoittaakseen tehoa Maan kiekon yli ja jonka sivukeilat eivät ole Airy-muotoisia. Julkaistuja mitattuja kuvioita on olemassa, eikä niitä ole vendoroitu tänne, joten järjestykset ja suuruusluokat pitävät, mutta yksittäisen satelliitin dB ei. TÄMÄN RIVIN ENSIMMÄINEN TOTEUTUS OLI VÄÄRIN TAVALLA, JOKA ON KIRJAAMISEN ARVOINEN: Airy-lauseke on voimassa vain eteenpäin suuntautuvalla pallonpuoliskolla, sen argumentti kulkee kuten sin(theta), ja kulman theta ollessa lähellä 180 astetta se kiertyy ympäri ja palauttaa TÄYDEN KEILAN AKSELIN VAHVISTUKSEN apertuurin takana – joten ensimmäisen raportin kaksi vahvinta linkkiä olivat satelliitteja, jotka osoittivat antenninsa pois Kuusta, ja ne olivat ainoat kaksi, jotka ylittivät kynnyksen. Apertuurin takana malli soveltaa nyt tasaista takakeilan lattiaa, ilmoitettuna rajana eikä keksittynä kuviomuotona. Tarkoituksella poissa, kukin tekee budjetista OPTIMISTISEN: ei ionosfääri- tai troposfäärihäviötä limbiä hipovilla säteillä, ei polarisaatio-, suuntaus- tai toteutushäviötä, ja pallomainen Maa ilman refraktiivista laajennusta. Kuun paikka on SYÖTE, ei efemeridihaku, koska testattava suure on linkki ja keilageometria. Rivin nostaminen tasolle validoitu edellyttää mitattua lähetyskuviota ja LuGRE:n normaalipisteitä, joita vasten tarkistaa; kumpikaan ei ole repositoriossa eikä kumpaakaan keksitä tässä. 0,30 kierros 2, havainto (pysyy tasolla MODELLED): mitattuihin syötteisiin perustuva linkkipolku (todelliset SP3-paikat, lohkokohtainen lähetysteho, taulukoidut lähetys- ja vastaanottokuviot, kaappauksen ja seurannan hystereesi) tarkistettiin Montenbruck ym. 2023 taulukkoa 3 vasten GENESIS:lle 6000 km:ssä (ennakkorekisteröity 5b414f0a): zeniittiantennin keskiarvot täsmäävät 6 tapauksesta 5 yhden dB:n sisällä artikkelin herkkyydestä; nadir-antennin keskiarvot ovat 1,0 – 2,4 satelliittia painettua korkeampia, todennäköisesti koska artikkeli käytti atsimuutista riippuvia GPS:n sivukeilakuvioita, joita ei ole julkaistu. Tämän rivin Kuun etäisyyden luvut käyttävät edelleen Airy-sijaiskuviota. 0,30+ D7, havainto (pysyy tasolla MODELLED): uudelleenmuotoiltu suure, Block IIR/IIR-M-satelliittien yhdessä epookissa seurattujen C/N0-ERO, ennustettuna NAVCENin satelliittikohtaisilla (SVN) mitatuilla L1-kuvioilla (kaksiulotteiset, yaw-ohjauskoordinaatisto) LuGRE-lennon C/N0:aa vasten (ennakkorekisteröity 768cb62b: 99 % näkyvä, parin RMS <= 3,0 dB, mediaani <= 2,0 dB, vähintään 50 tietuetta ja 30 paria) sisältää liian vähän dataa: 26 kelpuutettua siirto- ja Kuun kiertoradan epookkia sisältävät 15 seurattua IIR/IIR-M-tietuetta (useimmat seuratut ovat IIF ja III) ja yhden parin. Kaikki 15 ennustetaan näkyviksi ja yhden parin jäännös on -0.06 dB; mitään ei väitetä
Testit
earth_gnss_lunar::tests (11 kirjastotestiä: Maan reunan puolikulma vs sen suljettu muoto asin(R/r) ja lisäväite, että KAIKKI peittymättömät yhteydet ovat tämän kartion ulkopuolella, joten peittotesti ja reunakulma…
MallinnettuKuun radanmääritys: Maan GNSS vs maalta tehty radiometrinen mittauslunar_infra::{orbit,gnss,od}
Ominaisuus
Radanmääritys lähes suoraviivaisella haloradalla (tai elliptisellä jäädytetyllä radalla) kahdesta riippumattomasta datatyypistä: aluksella vastaanotetut Maan GNSS:n pseudoetäisyydet (rivin Earth-GNSS-at-lunar-distance linkkisääntö sekä Kuun peitto) ja kolmen Deep Space Network -aseman maalta tehdyt kaksisuuntaiset etäisyys- ja etäisyysnopeusmittaukset. Kumpikin on yhden askeleen eräkäsittelyn pienimmän neliösumman ratkaisu vertailuradan ympäri formaalilla kovarianssillaan; siemenellä alustettu Monte Carlo kahden estimaatin erolle testaa, selittävätkö kaksi kovarianssia eron (q = d' (P_G + P_R)^-1 d, khiin neliö kuudella vapausasteella, kun mallit täsmäävät) ja mitä mallintamaton kiihtyvyys tekee tunnusluvulle.
Oraakkeli
Riippumaton scipy/numpy-ohjelma integroi samat variaatioyhtälöt (kynnys O1). Mitään ei verrata Kuun radan mittaukseen. Oraakkeli tarkistaa ilmoitettujen kaavojen numeriikan, ei fysiikkaa, joten rivi pysyy tasolla MODELLED. Rajoitettu kolmen kappaleen malli: ei Aurinkoa, ei Kuun harmonisia, Maan pyörimisakseli radan normaalin suuntaan, ILLUSTRATIVE vastaanotin- ja asemasyötteet.
Testit
tests/lunar_infra_od_consistency.rs (kynnys O1: kolmen päivän ja yhden kiertoajan yli ketjutettu tilasiirtymämatriisi vastaa scipy DOP853:a suhteellisella tarkkuudella 1e-6; kynnys C1: keskimääräinen q ja 95 %:n sisällä oleva osuus; kynnys C2: otos yli…
MallinnettuKuun kantoaallon vaiheen kokonaislukuepävarmuuden ratkaisu: pinta ja kiertolainenlunar_infra::phase; lambda
Ominaisuus
Vastaanottimien välinen yksittäisdifferentioitu Maan GNSS:n kantoaallon vaihe ja koodi Kuun pinta-asemalla ja kiertolaisella, epookkikohtainen kellosta aiheutuva ero profiloituna pois, yksi kokonaislukuepävarmuus jatkuvaa ylilentoa kohti ja pisin ylilento mittapuuna. Float-ratkaisun kovarianssi on Schurin komplementti; LAMBDA ratkaisee kokonaisluvut, bootstrap-menetelmän onnistumisosuus raportoidaan siemenellä alustetun Monte Carlo -kokonaislukuvähimmäisneliösumman onnistumisosuuden sekä float- ja kiinnitettyjen paikkasigmojen rinnalla. Raportoitu sellaisena kuin löydettiin: rekisteröidyllä 12 dBi:llä kaksoisdifferenssiongelmaa ei voida muodostaa (muutos 1 siirsi oletuksen arvoon 25 dBi vasta kun vain saatavuuslaskennat oli nähty), ja 25 dBi:llä kokonaislukukiinnitystä EI saavuteta – se on ulottumattomissa (korkeintaan muutama prosentti), vaikka float-ratkaisu paranee kaaren myötä.
Oraakkeli
Riippumaton numpy-ratkaisu samoille normaaliyhtälöille viedyistä riveistä (Q3) ja raakaan voimaan perustuva kokonaislukuluettelointi (Q4). Mitään GNSS- tai Kuun kantoaaltovaihemittausta ei verrata. MODELLED.
Testit
tests/lunar_infra_carrier_phase.rs (kynnys Q1: Monte Carlo -onnistumisosuus vähintään bootstrap-raja miinus kolme keskivirhettä; Q2: ei laskua kaaren pituuden mukana yli kolmen keskivirheen; Q4: LAMBDA vastaa raakaa voimaa…
MallinnettuKuun koordinaatiston yhteisestimointi: pinta-asemat ja kiertolaisetlunar_infra::frame; lunar_datum; lunar_identifiability; lunar_llr_geometry
Ominaisuus
Seitsenparametrisen Kuun koordinaatiston datumin Fisher-informaatio Maa-aseman laseretäisyysmittauksesta viiteen heijastimeen yksin ja kiertolaisen ja pinta-aseman välisten etäisyyksien kanssa: informaatiomatriisi, aste, Cramér–Rao-sigmat, Kuun tunnistettavuusmoduulin degeneroituneisuusmitta ja siemenellä alustetut satunnaiset asemajoukot. Rata oletetaan tunnetuksi Kuun akseleissa (sen virhe kulkee kiertolaisen etäisyyssigman mukana).
Oraakkeli
Riippumaton numpy-äärellinen differenssi eteenpäinmallista (F2). Mitään ei verrata todellisiin Kuun koordinaatiston ratkaisuihin. Tekijä on ehdollinen oletetulle tunnetulle radalle ja 1 m:n etäisyyssigmalle. MODELLED.
Testit
tests/lunar_infra_studies_3_5.rs (kynnys F1: CRLB-jälki ei nouse eikä pienin ominaisarvo laske kiertäjäyhteyksien myötä, esimerkissä ja 20 siemenluvulla arvotussa satunnaisjoukossa; kynnys F2: etäisyyden osittaisderivaatat vastaavat…
MallinnettuAvaruussidoksen koordinaatistosidoksen toistotarkkuus: samassa paikassa sijaitseva GNSS, VLBI ja laseretäisyysmittauslunar_infra::tie; fim::crlb_srif
Ominaisuus
GNSS-, VLBI- ja laseretäisyysmittauskoordinaatistojen välisten tekniikkojen välisten siirto-, mittakaava- ja kiertosiirtymien Cramér–Rao-toistotarkkuus, kun yksi avaruusalus kantaa kaikkia kolmea, avaruusaluksen paikka eliminoituna jokaisessa epookissa ja yhdeksän paikallisen sidoksen häiriöparametria priorilla, pyyhkäisty paikallisen sidoksen tarkkuuden yli. Kovarianssit neliöjuurireittiä (normaaliyhtälöt menettävät numerot, kun tekniikat ovat lähes täydellisiä).
Oraakkeli
Riippumaton numpy-pinottu järjestelmä, jossa paikkatuntemattomat on eliminoitu eksplisiittisillä Schurin komplementeilla (T3). Mitään GRASP-, Genesis- tai muuta tehtäväaineistoa ei verrata. MODELLED.
Testit
tests/lunar_infra_studies_3_5.rs (kynnys T1: siirtymän sigmat eivät laske paikallisen sidoksen löystyessä; T2: kun tekniikoiden sigmat skaalataan arvolla 1e-6, kunkin parin siirtymän sigma on 1 %:n sisällä arvosta sqrt(2) kertaa paikallisen sidoksen…
MallinnettuKuun Love-lukujen ja libraation herkkyyslunar_infra::geodesy; lunar_od::degree2_tide_accel; lunar_time
Ominaisuus
Suureiden h2, k2, l2 ja fysikaalisten libraatioamplitudien Fisher-informaatio laseretäisyysmittauksesta (säteittäinen ja vaakasuuntainen vuorovesisiirtymä, heijastimen kierto), kiertolaisen seurannasta (asteen 2 k2-kiihtyvyys integroituna näkölinjaa pitkin, trendi poistettuna), pinta-gravimetristä (gravimetrinen tekijä 1 + h2 - 1,5 k2) ja pintakellosta (suhteellinen nopeus (1 + k2 - h2) W2/c2, sidottu Kuun aikavakioihin). Suureiden h2 ja l2 nimellisarvot ovat linearisointipisteitä; tutkimus kertoo, mikä on herkkä millekin, ei sitä, mitä luvut ovat.
Oraakkeli
Riippumaton numpy-äärellisen differenssin kokoonpano (G2) ja suljetun muodon arviointi (G4). Kiertolaisperheen k2-herkkyys on ylärajan luku (radan tila absorboi tässä vain vakion ja trendin). Mitään Kuun vuoroveden tai libraation mittausta ei verrata; k2 lainataan Lemoine ym. 2014 nimellisarvona. MODELLED.
Testit
tests/lunar_infra_studies_3_5.rs (kynnys G1: analyyttiset osittaisderivaatat vastaavat kunkin suoran mallin keskeistä äärellistä erotusta tarkkuudella 1e-8; G2: 5x5-informaatio vastaa riippumatonta numpy-kokoamista tarkkuudella 1e-6; G4: kellon vuorovesi…
Majakoilla täydennetty tarkkuuden heikkenemiskerroin (DOP) Kuun pinnan käyttäjälle: näkyvien satelliittien näkölinjarivit ja näkyvien pintamajakoiden etäisyysmittausrivit yhdistetään yhdeksi suunnittelumatriisiksi ja arvioidaan jaetun DOP-ytimen kautta, ja tuloksena oleva DOP kuvataan toteutuneeksi 1-sigman tarkkuudeksi METREINÄ majakkakohtaisen käyttäjän vastaavan etäisyysvirheen kautta, joka kootaan kellosynkronoinnin, monitie-etenemisen ja kartoitustermien neliösummana. Majakan näkyvyys on ilmattoman Kuun kahden korkeuden geometrinen horisontti, jolla ei ole refraktiivista laajennusta ja joka on siksi tarkka eikä likimääräinen. Ajettavissa skenaariolajina lunar-beacon, joka raportoi pelkät satelliitit, satelliitit plus majakat ja suuremman tähdistön kilpailevana reittinä samaan geometriaan. MEASURED mukana toimitetulla golden-geometrialla (käyttäjä -80 asteessa, kolme kartoitettua majakkaa, kuuden satelliitin havainnollistava LCNS hetkellä t=0, 5 asteen maski): 5 näkyvää satelliittia antaa PDOP-arvon 9,6941 ja 3D-1-sigman 11,222 m; lisäämällä majakat, jotka todella ylittävät horisontin, saadaan PDOP 4,1160 ja 4,765 m, kerroin 2,355; 24 satelliitin palvelu antaa sen sijaan PDOP-arvon 2,4226 ja 2,804 m, kerroin 4,002. Raportti tulostaa NÄKYVIEN majakoiden määrän eikä määritettyä, ja tällä geometrialla vain YKSI kolmesta majakasta ylittää horisontin: kaksi reunimmaista paikkaa ovat noin 333 km:n päässä käyttäjästä 2 m:n antennin 86 km:n horisonttia vasten, joten lukijan ei koskaan jätetä olettamaan kaikkien kolmen vaikuttaneen
Oraakkeli
DOP-aritmetiikka on crate::orbit::dop-ydin, joka on erikseen validoitu ulkoisesti gnss_lib_py:tä vasten tiedostossa tests/dop_reference.rs; tämä rivi ei lainaa uudelleen kyseisen rivin asemaa. Majakan näkyvyyshorisontti on L01-suljettu muoto, ja sigma = DOP x sigma_URE on standardi GNSS-suhde (Kaplan ja Hegarty, Understanding GPS/GNSS, luku 7). Tällä rivillä täydennys itse tarkistetaan riippumatonta repositorion sisäistä DOP-polkua vasten ja lukitaan sitoutettuun golden-tiedostoon. MIKSI MODELLED: tähdistösuunnittelu, majakoiden sijoittelu, antennikorkeudet ja kaikki kolme virhebudjetin suuruutta ovat havainnollistavia syötteitä eivätkä käyttöönotettu kartoitus tai mitattu linkki, joten raportoidut metrit ovat valitun skenaarion ominaisuus eivätkä minkään käytössä olevan palvelun. HUOMAUTUS ALKUPERÄSTÄ: tämä kyvykkyys mainostettiin README:ssä ja sitä harjoitti kaksi validointitestiä, mutta sillä EI ollut matriisirivia eikä skenaariolajia, joten sitä ei voinut saavuttaa ajosta lainkaan. Se väitettiin proosassa, puuttui kirjanpidosta (ledger) ja oli moottorissa tavoittamattomissa yhtä aikaa. Rivi ja laji lisättiin yhdessä. 0,30 kierros 2 (ennakkorekisteröity db0eb9ec), estynyt (pysyy tasolla MODELLED): ANISE 0.10.6 -näkyvyys ja numpy-DOP rivin geometrialla täsmäävät (näkyvät joukot tarkasti, mukaan lukien 72 horisontin lähellä olevaa ja 48 maskin lähellä olevaa tapausta; DOP 7.2e-13 sisällä), mutta raportoidut metrit ovat DOP kertaa havainnollistava 1,158 m:n neliösummaetäisyysvirhe ilman oraakkelia; rajaus, joka sulkisi ne pois, odottaa omistajan päätöstä
Testit
lunar_beacon::tests (horisontin näkyvyys vs L01:n suljettu muoto; majakoilla täydennetty DOP vs paljas; virhebudjetin neliösumman neliöjuuri; DOP–metrit-suhde)…
Tarkka pariteettialiavaruuden jako mittausvirheestä osaan, jota RAIM ei näe, ja osaan, jonka se näkee. Linearisoidulle hetkellismallille y = G·x + e mikä tahansa virhe dy hajoaa yksikäsitteisesti SOKEAKSI komponentiksi avaruudessa range(G) – absorboituu tilavirheenä S·dy ja nollautuu residuaaliprojektorissa Pperp = I − G·S, joten se on näkymätön MILLE TAHANSA residuaalitestille, ei vain tietylle kynnykselle – ja HAVAITTAVAKSI komponentiksi pariteettiavaruudessa. Moduuli palauttaa projektorin, jaon ja sokean osuuden, jotta kutsuja voi kvantifioida, kuinka suuren osan tietystä virheestä hetkellinen monitori ei rakenteellisesti kykene raportoimaan. Sovellettuna todelliseen efemeridien väliseen lattiaan: metritasoinen DE440 vs INPOP21a ja DE440 vs EPM2021 -ero geosentrisessä Kuun paikassa absorboituu lähes kokonaan käyttäjän paikkavirheeksi (sokean osuuden mediaani 1,000000; sokean paikkavirheen mediaani 2,3955 m ja 2,0050 m) pariteettijäännöstä vasten tasolla 1e-15 m
Oraakkeli
P2: numpy linalg.lstsq (LAPACK gelsd SVD, BSD-3) laskee pienimmän neliösumman jaon uudelleen sitoutetuilla syötteillä, joissa on todellinen pariteettiosa (dy = E·Δs + w, w ~ N(0, 1 m), siemen 20261001) 8 satelliitin geometrialla ja 6 satelliitin osajoukolla, 1464 tapausta molemmilla todellisilla efemeridien välisillä pareilla, ennakkorekisteröity (f672a314): blind_dx, residual, blind_norm ja detectable_norm suhteellisen 1e-12 sisällä arvoon |dy| nähden ja blind_fraction absoluuttisen 1e-12 sisällä (pahin blind_dx 1.06e-14, residual 4.4e-15, blind_fraction 3.1e-15). numpy rakentaa G:n itse sitoutetuista paikoista, kun taas moottori käyttää normaaliyhtälöitä Gauss–Jordanilla; vino vasen käänteismatriisi tekee testistä punaisen arvolla 5.5e-2 |dy|. Muutos 1 (86c53301, ensimmäisen ajon jälkeen, julkistettu) lievensi vain syötteen esiehtoa pariteettiosuudelle (jokainen tapaus vähintään 1e-3 ja 95 % kustakin geometriasta vähintään 0,05), ei täsmäävyyskynnystä. Validoitu väite, kuten P2 sallii: jaon lineaarialgebra näillä syötteillä; efemeridien välisen lattian suuruudet ja havainnollistava Kuun geometria (8 LCNS-tyyppistä solmua 5000 km:ssä) ovat syötteitä, eivät validoituja, ja sokeus on kaikkien hetkellisten RAIM-menetelmien tunnettu ominaisuus. Kierroksen 1 numpy-vertailu (tests/lunar_common_mode_integrity_reference.rs) tarkisti vain identiteetin S·G = I, koska sen syötteet olivat avaruudessa range(G); se säilytetään regressiotestinä. Efemeridien alkuperä: tests/fixtures/inter_ephemeris/NOTICE.md (JPL, IMCCE, IAA RAS)
Testit
lunar_common_mode::tests (8 kirjastotestiä: jako on additiivinen ja rekonstruoi dy:n; yhteismuotoinen kovarianssi antaa positiivisen yhteismuotoisen suojaustason, kun taas pelkkä pariteettikovarianssi antaa lähes nollan; …
MallinnettuYhteismoodin suojaustaso ja eheyden kokonaisverhokäyrälunar_common_mode
Ominaisuus
cmpl_horizontal rajaa sokean yhteismoodiluokan aiheuttaman k-sigman vaakapaikkavirheen muodostamalla blind_position_covariance = S*Cov*S^T ja projisoimalla sen ENU-koordinaatistoon; integrity_envelope raportoi hpl_total = hpl_araim + cmpl. Ero, jonka tekemiseksi pari on olemassa: RAIM/ARAIM-RESIDUAALItesti on todistettavasti sokea range(G)-virheille, mutta ARAIM-SUOJAUSTASO ei ole – sen vikaton termi rajaa ne jo tarjoajan URA:han plus nimelliseen harhaan asti. CMPL on siksi vain tarjoajien välinen YLIMÄÄRÄ, jota yhden tarjoajan tarjoajakohtainen URA/ISM ei ylärajaa, ja summa on konservatiivinen kolmioepäyhtälöraja eikä RSS, voimassa vain siellä, missä tämä ylimäärä ei jo sisälly URA:han.
Oraakkeli
Analyyttinen projektorialgebra tarkistettuna itseään vasten: range(G):hen rajoittuvan kovarianssin on annettava positiivinen CMPL, pariteettiavaruuteen rajoittuvan kovarianssin likimain nolla, ja verhokäyrän on summattava kaksi mittausavaruudessa ortogonaalista osuutta. Yhteismoodin kovarianssi, tähdistön geometria ja k ovat edustavia mallinnettuja syötteitä, EI sertifioitu budjetti, eikä väitetä, että kolmioraja olisi tiukka. HUOMAUTUS ALKUPERÄSTÄ: cmpl_horizontal, blind_position_covariance ja integrity_envelope ovat julkisia ja toimitettuja, ja niiden yksikkötesteihin oli jo viitattu yhteismoodin sokeusrivillä, mutta itse VERHOKÄYRÄVÄITTEELLÄ ei ollut riviä – joten ainoaa varoitusta, joka pitää sen rehellisenä, eli että summa on kolmioraja eikä RSS, ei ollut kirjattu minnekään kirjanpidossa (ledger). Rivi rekisteröi väitteen ja varoituksen yhdessä.
ValidoituKuun yhteinen monitekniikka-OD + kellolunar_combination (problem,model,estimate,formal_covariance); batch_ls (gauss_newton_qr)
Ominaisuus
VLBI:n + Kuun paikallisen etäisyysmittauksen + satelliittien välisen etäisyysmittauksen eräfuusio aseman ja tähdistön paikkojen ja kellojen palauttamiseksi
Oraakkeli
P2: numpy 2.4.6 (numpy.linalg.lstsq LAPACK gelsd:llä, numpy.linalg.inv; BSD-3) laskee uudelleen jokaisen Gauss–Newton-askeleen, suppenneen painotetun pienimmän neliösumman ratkaisun, formaalit sigmat ja aseman virheen kuuden simuloidun verkon sitoutetuilla jakobiaaneilla ja havainnoilla, ennakkorekisteröity (5094bc31) tarkkuudella max(1e-8, 100 kappa eps) suhteellinen. Ensimmäinen ajo ei läpäissyt VLBI-vapaata verkkoa (6.1e-7 kynnystä 1e-8 vasten, normaaliyhtälön käänteismatriisi ehtoluvulla 1.4e5); tuon tuloksen jälkeen kirjoitettu moottorikorjaus (batch_ls::gauss_newton_qr, Householder-QR-askel, jota käyttävät estimate ja formal_covariance) ajettiin uudelleen muuttumattomalla kynnyksellä: askeleet 1.1e-14 – 2.4e-11, sigmat enintään 1.3e-11. Validoitu väite on fuusioratkaisun lineaarialgebra näillä syötteillä, ei simuloidun verkon fysikaaliset suuruudet eikä sen havaintomallit: Kuun geodeettisen VLBI-viiveen rivi pysyy tasolla MODELLED (sen analyyttinen polku eroaa ANISEsta jopa 24 µs), ja koordinaatistoilla on omat rivinsä. Injektoidun simuloidun totuuden palautus ja NEES-johdonmukaisuus ovat edelleen sisäisiä tarkistuksia; aiempi Orekit 12,2 / Hipparchus Levenberg–Marquardt -ristiintarkistus (tests/lunar_joint_multi_technique_od_reference.rs) harjoittaa funktiota batch_ls::gauss_newton, jota estimate ei enää kutsu, ja se säilytetään kyseisen primitiivin tarkistuksena. 0,30 -versiomuutos: oletuksena lunar-joint-od-clock-aseman virheet 3,541344 -> 3,541350 m VLBI:n kanssa ja 2183,119 -> 2183,558 m ilman (QR-ratkaisu). 0,36 -versiomuutos (STUDIO-15, siirrettävä matematiikka; docs/revisions/STUDIO15-portable-math-rebaseline.md): 3,541350 -> 3,536885 m VLBI:n kanssa ja 2183,558 -> 2184,021 m ilman, ja VLBI-vapaa ratkaisu pysähtyy 5 iteraation jälkeen, ei 2 (pyöristysvirheen rajoittama pysähdys huonosti ehdollistetussa verkossa); ennakkorekisteröity vertailu ajettiin uudelleen uudelleenviedyillä syötteillä muuttumattomalla kynnyksellä (numpy 2.4.6, kaikki kuusi verkkoa läpäisevät)
Testit
lunar_combination::tests (palauttaa simuloidun totuuden; VLBI palauttaa aseman 3D-havaittavuuden; deterministinen); tests/lunar_joint_multi_technique_od_reference.rs (6 geometriaa × 16 parametria, 31 havaintoa kukin, vs Orekit 12,2 /…
ValidoituFisher-informaatio ja Cramér–Rao-havaittavuusfim
Ominaisuus
Fisher-informaatio M=HᵀWH, Cramér–Rao-alaraja, havaittavuuden aste ja datumvajeen nolla-avaruus (Moore–Penrose-pseudokäänteismatriisi) sekä D/A/E/T-optimaaliset koesuunnittelun skalaarit symmetrisestä Jacobin ominaisarvoratkaisijasta
Oraakkeli
NumPy 2.4.1 (numpy.linalg.eigh / .inv; BSD-3-Clause, LAPACK-pohjainen) — riippumaton kolmannen osapuolen auktoriteetti, joka laskee samat yksikäsitteisesti määritellyt ominaisarvot, σ²(XᵀX)⁻¹ Cramér–Rao -kovarianssin ja GNSS-tarkkuuden heikkenemiskertoimet (DOP) eri algoritmilla (LAPACK divide-and-conquer + LU) kuin Kshanan syklinen Jacobi-pyyhkäisy ja spektraalinen pseudokäänteismatriisi; tulokset täsmäävät toleranssilla 1e-9. Sama ulkoisen kirjaston luokka validoi jo DOP-moottorin (gnss_lib_py-kirjastoa vastaan) ja χ²- ja erf-ytimet (SciPyta vastaan). Lisäksi ristiintarkistettu Kayn (1993) suljetun muodon CRLB-arvoja ja Monte Carlo -CRLB:n saavuttamista vastaan (sisäinen)
Testit
tests/fim_observability_reference.rs (ominaisarvot vs numpy.linalg.eigh; CRLB-kovarianssi vs σ²(XᵀX)⁻¹ funktiolla numpy.linalg.inv; GNSS GDOP/PDOP/HDOP/VDOP/TDOP informaatiomatriisista vs numpy — kaikki täsmäsivät tarkkuudella 1e-9)…
MallinnettuKuun absoluuttisen aseman havaittavuus (datumvaje)lunar_combination (lunar_observability) + fim
Ominaisuus
Yhteisen Kuun ratkaisun Fisher-informaatiohavaittavuus: ilman Maa-peruslinjoja absoluuttisen koordinaatiston datum on matriisin HᵀWH nolla-avaruudessa (aseman sijaintia ei voi havaita); ≥3 peruslinjaa palauttaa täyden asteen ja rajaa aseman Cramér–Rao-virheen, jonka estimaattori saavuttaa
Oraakkeli
Analyyttinen datumvajeen rakenne — havaitsematon absoluuttisen koordinaatiston moodi on Fisher-informaation nolla-avaruudessa (suljettu muoto), asteen kynnys vastaa julkaistua 3 aseman suunnitteluperustetta ja estimaattori saavuttaa tuloksena olevan CRLB:n Monte Carlossa. Kuun geometria itsessään on edustava verkko (ei lennetty efemeridi), joten rivi pysyy MODELLED; taustalla oleva FIM/CRLB-moottori tarkistetaan erikseen Kayn (1993) suljettuja muotoja vastaan. 0,30 kierros 2 (ennakkorekisteröity fab02df9), estynyt (pysyy MODELLED): NumPy/SciPy laskevat uudelleen asteen ja vajeen ilmoitetulla kynnyksellä 1e-9, aseman akselien osuuden nolla-avaruudesta (poikkeama enintään 8.4e-10) ja aseman CRLB:n (poikkeama enintään 1.2e-10) 17 sitoutetulla Kshanan tuottamalla kokoonpanolla (P2). Ei ylennetty: väitteellä, että estimaattori saavuttaa rajan (Monte Carlo -tehokkuus noin 0,98), ei ole oraakkelia, ja rajaus, joka jättäisi rivin tilaan MODELLED, odottaa omistajan päätöstä
Testit
lunar_combination::tests (aste-vajaa ilman Maa-perusviivoja; kolme perusviivaa palauttaa täyden asteen — 3 aseman kynnys informaatioasteesta, ei ratkaisuvirheestä; aseman CRLB saavutetaan estimaattorilla…
Riippumaton suljetun muodon painotettu Umeyama (Horn) -yhdenmuotoisuusmuunnosratkaisija (numpy/scipy, SVD-pohjainen; Umeyama 1991 IEEE TPAMI, Horn 1987 JOSA A) — eri algoritmi kuin kshanan iteratiivinen Gauss–Newton-sovitus, ja se päätyy samaan yksikäsitteisesti määriteltyyn painotetun pienimmän neliösumman optimiin tavu tavulta identtisillä pisteverkoilla
Testit
lunar_frame_realise::tests (palauttaa lisätyn Helmert-muunnoksen); tests/lunar_reference_frame_realisation_reference.rs (14 tapausta vs riippumaton suljetun muodon Umeyama-SVD-ratkaisin; huonoin |Δ| siirtymä 2.0e-5 m…
Moonlight-luokan Kuun DOP / kattavuus / saatavuus + yleistetyt Kuun ARAIM-suojaustasot palvelutilavuudessa
Oraakkeli
Riippumaton kolmannen osapuolen auktoriteetti ANISE 0.10.2 astro::Orbit -Kepler-propagaattori (Nyx Space, MPL-2.0) — ekvinoktiaalinen kahden kappaleen koodipolku, joka eroaa kshanan Newton–Raphson-Keplerista; satelliittikohtainen MCI-paikka täsmää arvolla <1e-3 m, ja johdettu näkyvien satelliittien lukumäärä ja joukko täsmäävät täsmälleen jokaisessa ruudukkopisteessä. DOP-ydin on validoitu gnss_lib_py-kirjastolla; eheys käyttää julkaistuja LunaNet/LCNS-parametreja
Testit
lunar_service::tests (DOP käyttää uudelleen validoitua ydintä; PL supistuu etelänavan tapaukseksi); tests/lunar_navigation_service_volume_reference.rs (satelliittikohtainen MCI-paikka tarkkuudella <1e-3 m + TÄSMÄLLEEN näkyvien satelliittien joukko yli…
LSIS V1.0:n Augmented Forward Signal -koodit (29 tammikuuta 2025): AFS-Q:n 10230 sirun primäärikoodi generoituna IS-GPS-800 L1C -pilottirakenteesta IS-GPS-800J-indekseillä (samat 210 määritystä, jotka LSIS:n liite D tulostaa), AFS-I:n 2046 sirun Gold-koodit generoituna polynomeista g1 = x^11 + x^2 + 1 ja g2 = x^11 + x^8 + x^5 + x^2 + 1, kunkin PRN:n G2-viive palautettuna standardin liitteen 3 tiedostosta, neljä sekundäärikoodia, 1500 sirun tertiäärikoodit, välivaiheen taulukon 11 solmumääritys ja portaittainen pilottikoodi. LSIS-sisältö luetaan ajon aikana SHA-256-varmennetusta paikallisesta välimuistista, joka täytetään NASAn ylläpitämästä PDF-tiedostosta; sitä ei koskaan jaeta edelleen
Oraakkeli
Viite: arvot, jotka LSIS V1.0 tulostaa validointia varten (taulukot C-1 – C-5, D-1 – D-6, E-1 – E-6), ja sen liitteen 3 sähköiset koodi-tiedostot, nollan eroavuuden kriteerillä, joka on asetettu ennen vertailua. Kriteeri ei täyty yhden tulostetun solun osalta, joka on sisäisesti ristiriidassa standardin oman liitteen 3 tiedoston kanssa, joten rivi pysyy MODELLED; virheluettelomerkintä on luonnosteltu. Samat sirut vastaavat myös LANS-AFS-SIM:n siruja (rivi ”LunaNet AFS -kantataajuuden renderöinti riippumatonta generaattoria vastaan, kun sen kanavatila on annettu”)
ValidoituLunaNet AFS -kantataajuuden renderöinti riippumatonta generaattoria vastaan, kun sen kanavatila on annettu (LSIS V1.0)lunar_afs::waveform::render,lunar_afs::codes,lunar_afs::frame
Ominaisuus
AFS-kantataajuuden renderöintiydin (LSIS-130: kompleksinen verhokäyrä I + jQ, I = AFS-I Gold -koodi kerrottuna 500 symbolia/s kehyksellä nopeudella 1,023 Mchip/s, Q = portaittainen AFS-Q-pilotti nopeudella 5,115 Mchip/s, kantoaallon pyöritys, sirun ja symbolin kohdistus) tuottaa uudelleen riippumattoman generaattorin näytteet, kun sitä ohjataan kyseisen generaattorin oman tallennetun kanavatilan avulla (koodivaiheet ja -nopeudet, kantoaallon vaihe ja taajuus, kanavakohtainen amplitudi). Ei katettu: solmumalli, joka johtaa tilan Dopplerista, viiveestä ja kantoaalto-kohinatiheydestä, 50/50-tehojako, joka lasketaan kantoaalto-kohinatiheydestä (amplitudit otetaan simulaattorista), sekä SigMF-metadata ja 8-bittisten näytteiden kirjoitus
Oraakkeli
Kirjasto: LANS-AFS-SIM (T. Ebinuma, BSD-2-Clause, commit 480c6bf353717bafc04b5ee5bafb38ed90e61aae, S-band-versio, ajettu erillisenä ohjelmana); Kshanan näytteitä ohjataan vain simulaattorin tallennetulla kanavatilalla, ja pelkän tulostusjäljen sisältävä versio tarkistetaan tavu tavulta identtiseksi korjaamattoman kanssa. Ennen ajoa asetetut kynnykset: nolla sirun ja symbolin eroavuutta, |rho| >= 0,999 koko ajon yli ja >= 0,99 jokaisella lohkolla (2 ms), vaihe enintään 0,05 rad. Yhtäsuuret I- ja Q-amplitudit ovat vertailun syöte, joten sillä ei testata tehojakoa. LANS-AFS-SIM lukee tertiäärikoodinsa LSIS-liitteen 3 tiedostosta, joten tämä osa ei ole riippumaton koodirivistä. LANS-AFS-SIM ja PocketSDR-AFS jakavat tekijän ja lasketaan yhdeksi riippumattomaksi toteutukseksi. Dataehto: LANS-AFS-SIM-vertailu tarvitsee paikallisen LSIS V1.0 -välimuistin (xval/lunar-afs/fetch_lsis.sh, SHA-256-varmennettu) ja ohitetaan ilmoituksella ilman sitä
Testit
tests/lunar_afs_waveform_lans_afs_sim_oracle.rs::afs_chips_match_lans_afs_sim (210 AFS-Q-ensiökoodia aina; muuttujalla KSHANA_LANS_RUN ja LSIS-välimuistilla kaikki 630 koodia, nolla chip-eroa)…
LSIS V1.0:n 12 s:n, 6000 symbolin FID 0 -kehys: 68 symbolin synkronointikuvio, BCH (51, 8) -alikehys 1 (oktaali-763-generaattori), CRC-24 ((1 + X)·P(X)) alikehyksillä 2-4, nopeuden 1/2 LDPC-koodaus painetuilla A, B^-1, C, D (LSIS-liite 1, luettu ajon aikana SHA-256-varmennetusta paikallisesta välimuistista) ja standardin lävistyksellä, 60 x 98 lohko-interleaver; tyhjentävä alikehyksen 1 dekooderi, joka merkitsee TOI-arvon, joka on alueen 0..99 ulkopuolella, ja normalisoitu min-sum-LDPC-dekooderi, joka on kirjoitettu pelkästä matriisista H = [[A, B, 0], [C, D, I]]
Oraakkeli
Kirjasto: LANS-AFS-SIM (T. Ebinuma, BSD-2-Clause, commit 480c6bf353717bafc04b5ee5bafb38ed90e61aae), jonka omat BCH, CRC, LDPC ja interleaver tuottavat samalle sisällölle symboli symbolilta identtisiä kehyksiä Kshanan kanssa (nolla eroavuutta, kynnys asetettu ennen ajoa). Vahvistavat viitearvot: LSIS V1.0:n kuvan 8 BCH-esimerkki ja CRC-24/LTE-A-tarkistusarvo (Greg Cookin parametrisoitujen CRC-algoritmien luettelo), molemmat bittitarkasti; sekä se, että PocketSDR-AFS dekoodasi kolmessa ajossa jokaisen alikehyksen niistä kehyksistä, jotka se synkronoi, CRC läpäisten ja alikehyksen 2 bittien täsmätessä. Pariteettitarkistustesti on lähellä sisäistä identiteettiä (se vahvistaa, että painettu B^-1 kääntää painetun B:n) eikä sitä lasketa oraakkeliksi. Dataehto: LANS-AFS-SIM-vertailu tarvitsee paikallisen LSIS V1.0 -välimuistin (xval/lunar-afs/fetch_lsis.sh, SHA-256-varmennettu) ja ohitetaan ilmoituksella ilman sitä
Testit
tests/lunar_afs_waveform_lans_afs_sim_oracle.rs::afs_frames_and_baseband_match_lans_afs_sim (LSIS-välimuistilla: 3 kehystä, jotka LANS-AFS-SIM lähettää, rakennettuna samoista FID-, TOI- ja databiteistä: nolla 18 000 symbolista…
MallinnettuLunaNet AFS:n suljetun silmukan dekoodattavuus riippumattomalla vastaanottimella (LSIS V1.0)lunar_afs::waveform (recording and truth labels),xval/lunar-afs/run_pocketsdr.sh
Ominaisuus
Kshanan AFS-tallenne, jonka riippumaton ohjelmistovastaanotin sieppasi, seurasi ja dekoodasi ja jota verrattiin tallenteen omiin totuusmerkintöihin. Tämä osoittaa vain, että tallenne vastaa standardia ja että merkinnät ovat johdonmukaisia; se ei ole väite kanavafysiikasta, etenemisestä, vastaanotetusta tehosta tai linkkibudjeteista, joiden arvot tallenteessa ovat valittuja syötteitä
Oraakkeli
Kirjasto: PocketSDR-AFS (T. Ebinuma T. Takasun PocketSDR-ohjelman (versio 0,13) pohjalta, BSD-2-Clause, commit 5b23809f30d68518b7fad7a564fd0fac57cc497d, S-band-versio, vain tulostava lokitason kopio), ennen kutakin ajoa asetetuilla kriteereillä. Kolmas ennakkorekisteröity vertailu täyttää dekoodauksen ja seurannan kynnykset C1 ja C2 kokonaan mutta ei suojaehtoaan G0 sellaisenaan (kaksi muuttamattoman vastaanottimen ajoa eroavat samoissa neljässä sieppaustietueessa), ja toinen ei täyttänyt kynnystä, rikkomuksia oli 5, joten rivi pysyy MODELLED. LANS-AFS-SIM ja PocketSDR-AFS jakavat tekijän ja lasketaan yhdeksi riippumattomaksi toteutukseksi; kehyskoodausrivin painettujen vektorien tarkistukset suojaavat yhteistä virhelukemaa vastaan
MallinnettuGPS L1 C/A -generaattorien välinen vertailugps_lnav,sdr
Ominaisuus
GPS L1 C/A -levityskoodit (sdr::CaCode) ja LNAV-alikehykset 1-3 (gps_lnav: IS-GPS-200-kenttien kvantisointi spesifikaation piin arvolla, kahden komplementin pakkaus, TLM- ja HOW-sanat, taulukon 20-XIV pariteetti D29*/D30*-inversiolla, sanojen 2 ja 10 pariteettia ratkaisevat bitit) verrattuna bitti bitiltä gps-sdr-simiin sen mukana tulevalla tiedostolla brdc0010.22n (32 satelliittia)
Oraakkeli
gps-sdr-sim (MIT, commit 28ca29a6, ajettu erillisenä ohjelmana sitoutetun harnessin kautta), ennakkorekisteröity f88f2969, bittitarkka kynnys (A) C/A-siruille, (B) jokaiselle lasketulle LNAV-kentälle, (C) jokaiselle pariteettibitille. HAVAINTO: (A) 32 736 sirusta 0 eroaa, (C) 1 920 sanasta 0 sanan pariteetti eroaa, (B) 1 152 lasketusta kentästä 230 eroaa yhdellä yksiköllä: gps-sdr-simin eph2sbf typistää kohti nollaa C-tyyppimuunnoksilla siellä, missä lähetettävä kokonaisluku vaatii pyöristystä (jokainen eroava arvo on enintään 0,01 yksikön päässä Kshanan pyöristetystä kokonaisluvusta). Pysyy MODELLED: rekisteröity kynnys oli konjunktio
ValidoituGNSS IQ -kohtauksen signaaligeometria riippumatonta kantataajuusgeneraattoria vastaaniq::scene (Scene,SatGeometry,TruthRecord)
Ominaisuus
IQ-kohtausgeneraattorin satelliittikohtainen totuus GPS L1 C/A -broadcast-efemeridikohtaukselle (iq::scene: broadcast-efemeridi SatGeometry, generoituna TruthRecord-totuustietueiksi): mitkä satelliitit ovat horisontin yläpuolella, pseudoetäisyys, koodivaihe ensimmäisessä näytteessä, kantoaallon Doppler ja katselukulmat staattiselle vastaanottimelle, verrattuna kanavatilaan, josta gps-sdr-sim rakentaa oman I/Q-tulosteensa ensimmäisen lohkon samalle efemeridille, vastaanottimelle ja aloitusajalle (ionosfääri pois molemmilla puolilla)
Oraakkeli
gps-sdr-sim (T. Ebinuma, MIT, commit 28ca29a6), riippumaton GPS L1 C/A -kantataajuusgeneraattori, käännetty omalla Makefilellään ja ajettu erillisenä ohjelmana mukana tulevalla tiedostolla brdc0010.22n sen käyttötekstin esimerkkisijainnissa (scripts/gen_iq_gpssdrsim_ref.sh); samaan käännökseen linkitetty sitoutettu harness tulostaa kanavatilan (computeRange, computeCodePhase) ohjelman ensimmäisen lohkon takaa. Kynnykset asetettu ennen generaattorin ajoa (ennakkorekisteröity 7777da53). Rajaus: GPS L1 C/A -geometria staattiselle vastaanottimelle ilman ionosfääriä, troposfääriä tai vastaanottimen kelloa; kohtauksen kanavamallit, kohina ja navigointidatan sisältö eivät kuulu tähän riviin
Testit
tests/iq_gpssdrsim_cross_generator.rs::scene_geometry_matches_gps_sdr_sim_channels (11 channels: worst pseudorange 1.6e-3 m against 0.05 m, code phase 5.5e-6 chip against 2e-4, Doppler 7.4e-5 Hz against 0.02 Hz, look…
iq::acq::acquire (FFT-rinnakkainen koodivaihehaku neliölakisella Marcum-Q-kynnyksellä) GpsL1Ca-replikalla, gps-sdr-simin oman 8-bittisen I/Q-tulosteen jaksolta 20 ms, jonka iq::io-näytedekooderi on dekoodannut (ci8, 2,6 MHz, 11 satelliittia, ei kohinaa): jokainen PRN 1–32 haettu kahdessa ikkunassa (kukin 10 ms), tulosta verrattu koodivaiheeseen ja Doppleriin, jonka gps-sdr-sim moduloi
Oraakkeli
gps-sdr-simin (MIT, commit 28ca29a6) I/Q-näytteet ja sen oma kanavatila, ennakkorekisteröity 7777da53: (B1) jokainen simuloitu PRN sieppautuu, (B2) mikään muu PRN ei sieppaudu, (B3) koodivaihe enintään 0,5 sirun päässä, (B4) Doppler enintään 125 Hz päässä. HAVAINTO: B1, B3 ja B4 pätevät molemmissa ikkunoissa (pahin 0,195 sirua, 72 Hz), mutta B2 ei päde: kaikki 21 PRN:ää, joita gps-sdr-sim ei simuloinut, ylittävät myös kynnyksen (tunnusluku 151–206 kynnystä 79,5 vastaan; simuloitujen PRN:ien arvot 1 300 ja ylöspäin). Kynnys on asetettu mitatun näytetehon Gaussin kohinalle; gps-sdr-sim ei lisää kohinaa, joten poissaolevan PRN:n solut sisältävät muiden satelliittien ristikorrelaation. Pysyy MODELLED: rekisteröity kynnys oli konjunktio
MallinnettuLaboratoriotoistokampanjoissa pisteytetyt IQ-monitorit: havaitseminen, havaitsematta jääneet tapahtumat, väärät hälytykset ja väärän hälytyksen suljetun muodon luvutiq::campaign (detect,runner,spec); iq::monitor (stats::gaussian_two_sided_pfa,sqm)
Ominaisuus
iq::campaign::detect ja kampanjan ajaja: valinnainen [monitors]-taulukko ajaa IQ-monitorit jokaisessa solussa ajajan yhdellä läpikäynnillä. Teho- ja spektrimonitorit näkevät näytteet kunkin etupään ketjun jälkeen; C/N0-, SQM- ja lukitusmonitorit näkevät kunkin seuratun kanavan silmukkapäivitykset. Jokainen hälytys pisteytetään ilmoitettuja tapahtumia vasten: havaittu tai havaitsematta jäänyt per (tapahtuma, hälytyslaji, kanava), havaitsemisaika ja tapahtumien ulkopuoliset väärät hälytykset suhteessa niiden altistukseen. Kunkin testin suljetun muodon väärän hälytyksen luku ilmoitetaan: teho per lohko (tarkka Gamma-häntä), spektrin ylijäämä per lohko (approksimaatio), huipukkuus (yksipuolinen Gaussin), pulssit (binomiyläraja), SQM per keskiarvoistettu päivitys (2Q(k) = Q(1/2, k^2/2), uusi) ja C/N0 CUSUM:n ARL0 (Siegmund). Ilman taulukkoa solut, avaimet ja tiivisteet pysyvät ennallaan. Mitään häiriöaaltomuotoa ei synteesoida
Oraakkeli
Monitorien omat suljetut muodot Kshanan omissa GPS L1 C/A -kohtauksissa (kohina ja lailliset signaalit; satelliittien omien signaalien vaimennustapahtumat), kynnyksiä vasten, jotka on ennakkorekisteröity tiedostossa docs/design/MONITORS-IN-CAMPAIGN.md (382ab2f4). HAVAINTO: M1, M2 ja M4 täyttyivät. M3 täyttyi havaitsemisen osalta (18 / 18 vaimennusta, P_md 0) ja NOT MET sen ajoituslausekkeen osalta: havaitsemisajan mediaani on 1,001 s, kun vaatimus on 2 x ARL1 näytettä = 0,433 s. CUSUM näkee yhden estimaatin kunkin ikkunan (1 s) osalta, joten näytemäärän yläraja on alle yhden näytteen. Vain sisäinen johdonmukaisuus: mitään todellista vastaanotinta tai tallennettua häiriötä ei tarkisteta
Testit
tests/iq_campaign_monitors.rs: m1_power_test_false_alarm_rate_matches_the_closed_form (73 of 5900 blocks against the 99 % binomial interval [40, 80] of P_fa 0.01)…
iq::campaign::detect (windows, roc) ja iq::campaign::report::rocs: monitoreilla varustetun kampanjan jokainen solu säilyttää hälytyslajia ja kanavaa kohti monitorin oman testitunnusluvun maksimin kunkin ilmoitetun tapahtumaikkunan yli (positiivinen) ja tapahtumien ulkopuolisten laatoitettujen roc_window_s-ikkunoiden yli (negatiivinen). Tunnusluvut ovat lohkotehon poikkeama, PSD-ylijäämä, huipukkuus z, keskiarvoistetun metriikan SQM |z| ja C/N0 CUSUM. Raportti yhdistää ne lajeittain empiiriseksi ikkunatason ROC-käyräksi, jossa on AUC ja toimintapiste asetetulla kynnyksellä, kirjoitettuna tiedostoon roc.json (kshana.campaign-roc/1) ja tiedoston report.html Detection ROC -osioon. Ilman monitoreita kampanja ei kirjoita kumpaakaan
Oraakkeli
Synteettiset kampanjat Kshanan omista GPS L1 C/A -kohtauksista (satelliittien omien signaalien vaimennukset), kynnyksiä vasten, jotka on ennakkorekisteröity tiedostossa docs/design/DETECTION-ROC.md (b47e358d). HAVAINTO: R2 täyttyi (satunnaistaso, kun havaittavaa ei ole). R1 NOT MET: cn0_drop AUC 0,7855 kynnystä 0,95 vastaan, koska jokainen tapahtuman jälkeinen negatiivinen ikkuna perii CUSUMin vaimenemisen havainnosta (kaikki 18 tapahtuman jälkeistä negatiivista saavuttavat arvon 81 tai suuremman; kaikki 18 ennen tapahtumaa olevaa pysyvät arvossa 0). Vain sisäinen johdonmukaisuus: mitään todellista vastaanotinta tai tallennettua häiriötä ei tarkisteta
Testit
tests/iq_campaign_roc.rs: r2_with_nothing_to_detect_the_roc_sits_at_chance (AUC cn0_drop 0.500, sqm_delta 0.566, power_drop 0.639 on stated events that attenuate nothing)…
iq::labfit (campaign, cn0, iqfit, iqreport) ja [input] campaign, komento kshana iq labfit, Python-moduuli kshana.iq_labfit ja MCP-labfit-työkalu (vain sen työhakemiston sisällä olevat kampanjakansiot): lukee kampanjan tulostekansion (kshana iq campaign) tiivisteensä (DIGEST) perusteella ja ryhmittelee pisteytetyt solut sovitusyksiköiksi (signaali x silmukan rakenne x etupään ketju x häirintälaitteen tyyppi, ei koskaan yhdistetä). Kullekin yksikölle se sovittaa mitatun C/N0:n ilmoitettua J/S:ää vasten spektrierotusmuodolla. Q_eff ei ole tunnistettavissa C/N0-datasta ilman riippumatonta häirintälaitteen ja signaalin tehojen mittausta, joten Q ilmoitetaan eikä koskaan sovitetaan (tyyppitaulukko, tapahtuman q tai tuntemattomalle tyypille vahingollisin ilmoitettu arvo, cw Q = 1). Sovitettava parametri on tunnistettava siirtymä delta_eff = delta - 10 log10 Q, ja korrelaatiosuoja raportoi degeneraation. C/N0-binit, jotka ovat lukittuina alle 90 % ajasta, sensuroidaan ja luetellaan. Kynnys-J/S annetaan suoraan ja suljetulla muodolla; seurantasilmukka- ja empiiriset lukitusmallit kytketään C/N0-mallin kautta pudotus- ja uudelleenlukitusviipymillä. Siemenluvulla ajettu klusteribootstrap tallenteiden yli (1000 toistoa) antaa persentiilivälit; 90 %:n ennustevälit tulevat residuaaliotannoista; leave-one-recording-out-holdoutit jaetaan interpolaatioon ja ekstrapolaatioon; ennakkorekisteröity [validation]-taulukko tiivistetään ja jokainen kynnys arvioidaan PASS/FAIL. Raportti kshana.labfit-iq/1 JSON-, CSV- ja generoituna Markdown-muodossa, yksikkölohkolla. Vain synteettinen (ei kolmannen osapuolen tallennetta, ei häirintäaaltomuotoa). Vastaanottimen lokin labfit-polku on ennallaan
Oraakkeli
Synteettinen parametrien palautus Kshanan omissa GPS L1 C/A -kohtauksissa, joihin on pakotettu tunnettu C/N0-profiili osion 3,1 kaavasta, seurattuna ja pisteytettynä komennolla kshana iq campaign, kynnyksiä vasten, jotka on ennakkorekisteröity tiedostossa docs/design/LABFIT-FROM-IQ.md (osio 5,1, muutettu 2026-10-12 commitissa b7117bf, osio 13). Kampanjoiden C/N0-estimaattori (M2M4) lukittiin commitissa 5b13e3c2, joka työnnettiin ennen ensimmäistä kynnysarviointia (sitoutettu yhdessä sovituskoodin kanssa, ei yksinään), yhden ilmoitetun diagnostisen seuranta-ajon jälkeen. HAVAINTO 18 tapahtuman kynnyskampanjassa: (c) PASS; (a') NOT MET, delta_eff-virhe -1.097 dB kynnystä 0,5 dB vastaan (yhä -0.89 dB biniloilla tasolla 38 dB-Hz ja sen yli); (b') NOT MET, 50 kampanjasta 0 kattaa totuuden (virhe -1.189 +/- 0,093 dB, väli noin 0,3 dB); (d) NOT MET, suljettu muoto 2,20 dB suoran J/S:n alapuolella lukituksen menetyshetkellä, noin sovitettu pudotusviipymä kertaa ramppinopeus (2,09 dB); (a):n ja (b):n alkuperäiset Q-lausekkeet ovat NOT MET, koska Q ei ole tunnistettavissa. JATKOTOIMI (kynnykset ennakkorekisteröity commitissa 1e532f84, docs/design/evidence/labfit-followup/RESULTS.md): porrastetun J/S:n kampanjassa delta_eff palautuu +0,185 dB sisällä (S1 MET: ramppivirhe on estimaattorin viive); (d) sellaisenaan täyttyy seurantasilmukkamallilla (0,45 dB) mutta ei empiirisellä mallilla (6,42 dB), joten S2 on NOT MET; uudessa ramppikampanjassa (d), kun sovitettuun pudotusviipymään lisätään kunkin tapahtuman ramppinopeus, poikkeama on enintään 1 dB molemmilla malleilla (R1 MET), ja (a') ja (d) sellaisenaan eivät jälleen täyty (-1.25 dB; 2,32 ja 9,47 dB). Menetelmä tarkistetaan, ei yhtään vastaanotinta: sitä ei voi saada tilaan VALIDATED synteettisestä datasta
Testit
tests/iq_labfit_campaign.rs: bar_c_holdout_prediction_intervals_cover_between_80_and_98_percent (PI90 coverage 0.891 over 558 bins, 0.900 over 10 time-to-loss events under each lock model)…
Kshanan LNAV-alikehykset 1-3 (gps_lnav::encode_subframes) 32 efemeridille tiedostosta brdc0010.22n, syötettynä RTKLIBin funktioille decode_word ja decode_frame: jokaisen sanan pariteetti, alikehysten dekoodaus johdonmukaisella tietojen julkaisutunnuksella (issue of data) ja jokainen dekoodattu parametri Kshanan kokonaislukua ja syöttöarvoa vastaan
Oraakkeli
RTKLIB v2.4.2-p13 (BSD-2-Clause, commit 71db0ffa) decode_word/decode_frame erillisenä ohjelmana, ennakkorekisteröity ca5f0142: R1 pariteetti ja dekoodaus, R2 dekoodattu arvo yhtä suuri kuin Kshanan kokonaisluku kertaa IS-GPS-200-skaalaus suhteellisella tarkkuudella 2^-52, R3 enintään puolen kvantin päässä syötteestä. HAVAINTO: R1 960 / 960 sanaa ja 96 / 96 alikehystä; R3 jokainen parametri, viikko ja vertailuaika täsmälleen; R2 epäonnistuu 41 arvolla (af1, delta-n, IDOT), joissa ero on 1–4 yksikköä viimeisellä numerosijalla, koska RTKLIBin P2_43 on desimaaliluku 1.136868377216160E-13, 2.6e-16 suhteessa arvoon 2^-43; RTKLIBin vakiolla jakaminen palauttaa Kshanan kokonaisluvun joka tapauksessa. Pysyy MODELLED: rekisteröity R2-kynnys oli liian tiukka oraakkelin oman vakion kannalta
IS-GPS-200 LNAV-alikehykset 1-3 (gps_lnav::encode_subframes: jokaisen kello- ja rataparametrin lähimpään pyöristävä kvantisointi spesifikaation skaalauskertoimilla ja piin arvolla, kahden komplementin pakkaus, TLM- ja HOW-sanat, taulukon 20-XIV pariteetti D29*/D30*-inversiolla, sanojen 2 ja 10 pariteettia ratkaisevat bitit), viesti, jonka GPS L1 C/A -signaaligeneraattori lähettää
Oraakkeli
RTKLIB v2.4.2-p13 (BSD-2-Clause, commit 71db0ffa) readrnx jäsentää IGS:n päivittäisen broadcast-tiedoston BRDC00IGS_R_20250610000_01D_MN.rnx ja decode_word/decode_frame dekoodaa Kshanan sanat, ajettu erillisenä ohjelmana; ennakkorekisteröity d4d9eb9d ennen tiedoston hakua, tarkka kokonaislukukynnys. Mutaatio: pyöristyksen sijaan typistäminen antaa 235 virhettä. Saman enkooderin aiemmat vertailut on tallennettu havaintoina: gps-sdr-simiä vastaan, joka typistää (230 kenttää), ja RTKLIBin skaalattuja arvoja vastaan, joiden desimaalinen 2^-43-vakio ei täyttänyt yhden ulpin kynnystä (41 arvoa). Integraattorin jälkivarmennus (pysyy MODELLED): vertailu täsmää ja pariteettijoukon mutaatio myös saa testin epäonnistumaan, mutta ennakkorekisteröinti d4d9eb9d saavutti julkisen haaran kello 20:02:29 UTC, kaksi sekuntia tulos-commitin 1783f904 (20:02:27 UTC) jälkeen, joka jo sisältää RTKLIBin tulosteen tiedostolle, joten järjestystä ”rekisteröity ennen tiedoston hakua” ei voida osoittaa; uusi rekisteröinti, joka työnnetään ennen näkemättömän broadcast-tiedoston hakua, ratkaisisi asian
Testit
tests/gps_lnav_rtklib_integer_oracle.rs::kshana_lnav_integers_decode_in_rtklib_from_an_unseen_broadcast_file (32 satelliittia IGS-lähetystiedostosta päivältä 2 maaliskuuta 2025: 960 / 960 sanaa läpäisee RTKLIB-pariteetin, 96 / 96…
MallinnettuSieppaus ja C/N0-estimointi todellisessa Kuun IQ-datassaacquisition,portable_math,realdata::ion_sdr,realdata::lugre
Ominaisuus
Rinnakkainen koodivaihehaku (acquisition::pcps_acquire: siirrettävä FFT, koherentti laskostus, epäkoherentti akkumulointi, khii-toisen kynnys koko haun väärän hälytyksen todennäköisyydelle), tarkennus, avoimen silmukan prompt-korrelaatio koodin Dopplerilla ja M2M4 C/N0 -estimaattori, ajettuna LuGRE L1 4-bittisille IQ-erille, jotka on luettu moduulin realdata::ion_sdr kautta
Oraakkeli
GNSS-SDR 0.0.19 (GPL-3.0, erillinen ohjelma, kiinnitetty konfiguraatio) yhdeksällä ei-pinta L1-erällä ja lentovastaanottimen RAW C/N0:lla (LuGRE Mission Data, Zenodo 16411687, CC BY 4,0), ennakkorekisteröity 768cb62b. HAVAINTO: Kshanan lukija dekoodaa kaikki 288 vertailtua jaksoa identtisesti riippumattoman muuntimen kanssa; GNSS-SDR julistaa 288 haun joukosta 266 positiivisiksi ja Kshana on samaa mieltä kaikissa 266 päätöksessä, mutta vain 250 sijaitsee GNSS-SDR:n solussa (A2 epäonnistuu); C/N0-haara on tyhjä, koska yksikään lennon RAW-epookki ei ole lähempänä kuin 30 s mitään erää (lähin 141 s). Useimmat positiiviset ovat artefakteja: paljaat kahden komplementin tasot sisältävät keskiarvon -0.5 sekä I:ssä että Q:ssa, ja nollataajuuslinja on 32 dB kohinan yläpuolella kaistassa, jonka leveys on 1 kHz, ja molemmat vastaanottimet sieppaavat sen. Kaksi erää (OP5, OP12) suljettiin pois virheellisesti: niiden metadatan numerot poistanut luenta luultiin ristiriidaksi niiden otsakkeiden kanssa; todellinen syy oli, että lukija ei osannut lukea sanaa leveämpää näytettä (korjattu sittemmin). Pysyy MODELLED
MallinnettuSieppaus todellisessa Kuun IQ-datassa kiertoradasta ennustettua Doppleria vasten (näytetehopäätös)acquisition,realdata::ion_sdr
Ominaisuus
acquisition::pcps_acquire näytetehopäätöksellään yhdeksällä ei-pinta LuGRE L1 -erällä, joissa on mid-rise-tasot; sieppattujen satelliittien väliset Doppler-erot verrattuna eroihin, jotka on ennustettu ESAn lopullisista radoista ja Firefly-rekonstruoidusta Blue Ghost -radasta
Oraakkeli
Ennustettu Doppler ESA/ESOCin lopullisista radoista ja NAIF CLPS -rekonstruoidusta radasta (xval/lugre-predicted-doppler/predict.py, Kshanasta riippumaton), ennakkorekisteröity 0d1839d2. HAVAINTO: kaikki 288 hakua ylittävät kynnyksen kohinalla (näytetehotunnusluvut noin 430–520 kynnystä 346,3 vastaan), joten P1 pätee triviaalisti ja P3 pätee (288 haun joukosta 274 ennustettu näkyviksi), kun taas P2 epäonnistuu 4033 parilla 4036 parista. Kaistarajoitettu etupää nostaa jokaisen solun kohinaa noin 1,46 kertaa (kiinnitetty: kohinalattia 292 valkoisen kohinan 200 sijaan kohteessa OP2 PRN 1), jota näytetehotunnusluku ei näe. Pysyy MODELLED
MallinnettuSieppaus todellisessa Kuun IQ-datassa, pisteytettynä kiertoradasta ennustetulla Dopplerillaacquisition,realdata::ion_sdr
Ominaisuus
acquisition::pcps_acquire solujen keskiarvoistavalla päätöksellä (huippu verrattuna ruudukon keskimääräiseen soluun, kestävä kaistarajoitetulle kohinalle) yhdeksällä ei-pinta LuGRE L1 -erällä, joissa on mid-rise-tasot; sieppattujen satelliittien väliset Doppler-erot verrattuna eroihin, jotka on ennustettu ESAn lopullisista radoista ja Firefly-rekonstruoidusta Blue Ghost -radasta
Oraakkeli
Ennustettu Doppler ESA/ESOCin lopullisista radoista ja NAIF CLPS -rekonstruoidusta radasta (xval/lugre-predicted-doppler/predict.py, Kshanasta riippumaton), ennakkorekisteröity a81a9a4e. HAVAINTO: P1 ja P3 pätevät (4 erää, 12 / 12 sieppausta ennustettu näkyviksi) mutta P2 epäonnistuu kaikissa pareissa (8 / 8). Kaksi vahvinta paria vastaa ennustetta suuruudeltaan mutta päinvastaisella etumerkillä (OP2 PRN 18/24: +7670,0 Hz mitattu, -7693.9 ennustettu; OP17 PRN 11/30: +11155,0, -11114.4), joten rekisteröity I-matalassa-nibblessä-järjestys on erien konjugaatti; kuusi juuri kynnyksen yläpuolella olevaa havaintoa ei vastaa kumpaakaan etumerkkiä. Rekisteröinti aliarvioi myös tarkennuksen Dopplerin hajonnan (30–50 Hz kahden ajon välillä). Pysyy MODELLED
MallinnettuSieppaus holdout-datana olevassa todellisessa Kuun IQ-datassa kiertoradasta ennustettua Doppleria vastenacquisition,realdata::ion_sdr,realdata::lugre
Ominaisuus
acquisition::pcps_acquire (solujen keskiarvoistava päätös, väärän hälytyksen todennäköisyys 1e-7) ja refine_doppler_coherent Kuun pinnalla tallennetuilla LuGRE L1 -erillä (I ylemmässä nibblessä, mid-rise-tasot); sieppattujen satelliittien väliset Doppler-erot verrattuna eroihin, jotka on ennustettu ESAn lopullisista radoista ja Firefly-laskeutumispaikan kernelistä
Oraakkeli
Ennustettu Doppler ESA/ESOCin lopullisista radoista ja NAIF CLPS Firefly -laskeutumispaikan kernelistä (xval/lugre-predicted-doppler/predict_surface.py, Kshanasta riippumaton), ennakkorekisteröity 2108e6ff erillä, joita ei ollut aiemmin avattu. HAVAINTO: ei-tyhjyys epäonnistuu; yhdessäkään erässä ei ole kahta sieppausta. OP40 suljettu pois (metadata nimeää puuttuvan tiedoston); OP38, OP73, OP77_0, OP77_1 eivät sieppaa mitään eivätkä näytä väärää hälytystä tasolla 1e-7 (ylimmät tunnusluvut 325–356 kynnystä 385,9 vastaan); OP74 ja OP76 sieppaavat PRN:n 31 ja OP78_0 ja OP78_1 PRN:n 12, kukin yksinään, kaikki ennustettu näkyviksi. Pysyy MODELLED. Ilmoitetut poikkeamat: rekisteröity Doppler-kynnys 10 Hz perustuu koherentin tarkennuksen synteettiseen Monte Carloon, ei jo nähtyjen erien hajontaan, jota integraattori pyysi; OP40 suljettiin pois ennen ajoa, koska sen metadata nimeää näytetiedoston, jota aineisto ei sisällä
ValidoituKuun yhteinen viestintä- ja navigointigeometrialunar_service
Ominaisuus
Satelliittikohtaiset topocentriset katselukulmat (atsimuutti myötäpäivään pohjoisesta, korkeuskulma) ja vinoetäisyys nimetyssä selenografisessa sijainnissa, kun satelliitti on annettu sijainnin Kuun kappalekiinteässä koordinaatistossa (validoitu väite). Avaruussignaalin etäisyysmittaustarkkuus on skenaarioparametri, jotta palvelutilavuuden pyyhkäisy tuottaa etäisyysmittauksen VAATIMUKSEN eikä läpäisy/hylkäys-tulosta yhdellä kiinteällä sigmalla; kyseinen parametri on suunnittelusyöte validoidun väitteen ulkopuolella
Oraakkeli
ANISE 0.10.2 (Nyx Space, MPL-2.0, ajettu työkaluna hakemistosta xval/anise-service-geometry, binääri lunar-look-angles-xval, joka ei kutsu Kshana-koodia): ANISEn oma atsimuutti-, korkeuskulma- ja etäisyysrutiini (azimuth_elevation_range_sez) sijainneille, jotka on rakennettu sen leveys-pituus-korkeus-konstruktorilla pck00011-Kuulle (pallo 1737,4 km), ja satelliitit on kierretty koordinaatistoon MOON_PA_DE440 tiedoston moon_pa_de440_200625.bpc kautta. 768 näytettä 8 sijainnissa (nimettyjä sijainteja 4 ja muita 4, horisontin ylä- ja alapuolella), 12 epookkia ja 8 satelliittia täsmäävät: poikkeama on enintään 1e-6 deg atsimuutissa ja korkeuskulmassa ja 1 mm etäisyydessä ja sijainnissa (asetettu ennen vertailua); mitatut poikkeamat 2.2e-12 deg, 2.1e-13 deg ja 5.6e-9 m. Väite: sijainnin asettaminen ja katselukulmat, kun satelliitti on annettu sijainnin kappalekiinteässä koordinaatistossa. Kshanan oma keskimääräiseen kiertoon perustuva Kuun kappalekiinteän koordinaatiston toteutus ja etäisyysmittaustarkkuuden parametri jäävät sen ulkopuolelle; suljetun muodon geometrian yksikkötestit säilyvät tukevina tarkistuksina
Testit
lunar_service::tests (topocentrinen vs käsin laskettu geometria: yläpuolella, suoraan pohjoiseen/itään/länteen, vastakkainen piste ja rappeutunut napa-itäsuunta; viety näkyvyyslippu vastaa riippumatonta näkyvyyttä…
MallinnettuKuun differentiaalinen PNTlunar_dpnt
Ominaisuus
NovaMoon-luokan differentiaalinen referenssiasema: yhteismoodin kumoutuminen + peruslinjan mukana kasvava jäännös + DGNSS-suojaustasot
Oraakkeli
Differentiaalisen virheenkumoamisen identiteetti + DO-229E SBAS PL -koneiston uudelleenkäyttö; yksittäisero- ja WLS-ratkaisu on lisäksi ristiintarkistettu RTKLIBin lsq()/matinv()-funktioita vastaan (Takasu, BSD-2-Clause, käännetty C) — riippumaton ratkaisijakoodi, mutta sama ensimmäisen asteen LOS-eroalgebra, joten edelleen InternalConsistency
Testit
lunar_dpnt::tests (kellon yhteismuoto kumoutuu täsmälleen; jäännös kasvaa perusviivan mukana; käyttää uudelleen SBAS PL:ää; satelliittimäärä toteutuu rakentajan rajaan 24 asti, joten suurempi tähdistö ei voi hiljaa palauttaa…
LunaNet/IOAG-linjattu Kuun koordinaatisto-, aika- ja efemeridivienti (CCSDS OEM + KIF) edestakaisen kierron vastaavuudella
Oraakkeli
kshanan Kuun OEM-vienti jäsennettynä uudelleen riippumattomalla kolmannen osapuolen kirjastolla oem (R. J. Anderson): koordinaatisto- ja aikatunnisteet sekä epookkikohtainen tila täsmäävät kirjoitustarkkuuteen (1 mm / 1e-9 km/s), ja vienti, josta TIME_SYSTEM on pudotettu, hylätään — rakenteellinen tiedonvaihdon edestakainen kierto; Kuun koordinaatiston ja ajan fysikaalinen semantiikka validoidaan omilla riveillään, joten tämä pysyy MODELLED. 0,30 ulkoinen vertailu, havainto (pysyy MODELLED): toinen riippumaton lukija, Orekit 12,2 CCSDS OEM -jäsennin (Apache-2.0, tiukat oletukset), hylkää molemmat Kuun tiedostot, koska se ei toteuta aikajärjestelmiä LTC ja TCL (se dekoodaa kirjaston (crate) EME2000/UTC OEM:n ja dekoodaa Kuun tiedostot, kun TIME_SYSTEM korvataan arvolla TDB); oem 0.4.5 dekoodaa ne kirjoitustarkkuuden rajoissa vain perääntymällä tukemattomasta aikajärjestelmästä. Näiden Kuun tiedostojen tiedonvaihtoa valtavirran CCSDS-lukijoiden kanssa ei ole osoitettu
Testit
lunar_interop::tests (OEM sisältää kuun REF_FRAME/TIME_SYSTEM; aikametadata säilyy edestakaisessa kierrossa; KIF-kirjekuori); tests/lunar_interoperability_export_reference.rs (kshanan tuottama kuun OEM jäsennetään uudelleen riippumattomalla oem…
Dimensiokohtaiset osapisteet Kshanan omien seitsemän kestävyysluokan (ei DHS-termejä), RethinkPNT RDRR -funktioiden ja Yangin kriteerien yli, kukin merkitty mallinnetuksi ja sen ajurilla; alustava RPCF-taso rajatun heikkenemisen portilla. Simulaatiopohjainen itsearviointi, ei koskaan sertifiointia.
Kvantifioi, miten yksittäinen komposiittipistemäärä / RPCF-taso järjestää arkkitehtuurit uudelleen perustellun painotussimpleksin ja uhkajoukon alla (top-1-kääntymisaste, Kendall-tau-hajonta, tasonkääntymisaste, järjestysalueet); ilmoitettu vs. mitattu -analyysit ja monimuotoisuuden romahtamisen analyysit.
Oraakkeli
Suljetun muodon järjestystunnuslukujen identiteetit (tau välillä [-1,1] käsin lasketuilla arvoilla; deterministinen siemenluvulla ajettu Dirichlet) ja konstruoidut vakaat/epävakaat todistajat
Testit
resilience::stats::tests (Kendall-tau hand example, Dirichlet simplex, flip-rate); resilience::study::tests (stability control, instability witness, declared-vs-measured, diversity collapse)
MallinnettuDemonstraation edustavuus ja aukot lentoonrepresentativeness
Ominaisuus
Tuloskohtainen rehellisyyskirjanpito (ledger), joka kvalifioi demonstraatiotulosteen: sen ulkoiset ankkurit, mallinnetut oletukset, aukot lentoon ja edustava TRL-alue, pakotetuilla invarianteilla (Validoitu vaatii ulkoisen ankkurin; Mallinnettu vaatii aukon eikä voi väittää tasoa yli TRL 4).
Oraakkeli
Suljetun muodon invariantit, jotka kuvautuvat ”edustavuus perusteltu + aukot lentoon tunnistettu” -compliance-käytäntöön; sidottu varmennuksen tilan ja oraakkelilajin rajaan
MallinnettuKvantti- ja klassisen ratkaisun kompromissitodisteet (yhteinen muoto)qtrade
Ominaisuus
Yksi toistettava TradeEvidence-olio (kiinteä kehys: skenaario+siemenluku+moottori; yhteiset kvantti vs. klassinen -arvot laatumittaria kohti polariteetiltaan oikealla hyödyllä, valinnainen luottamusväli 95 %, validoitu/mallinnettu-merkintä) edustavuustietueen kera, jotta jokainen kvantti-PNT-vertikaali raportoi kompromissin samalla rehellisellä tavalla.
Oraakkeli
Suljetun muodon hyöty/voittaja-identiteetit + uskollinen kääre olemassa olevalle quantum_trade::TradeResult-tyypille; rehellisyys sidottu edustavuuskirjanpitoon (ledger) ja varmennusmerkintöihin
Testit
qtrade::tests (hyödyn polariteetti korkeampi/matalampi-on-parempi, kietoo todellisen TradeResultin uskollisesti, epärehelliset todisteet hylätään, validoitu-FoM tarvitsee ulkoisen ankkurin, deterministinen JSON)
Laitekortit (optinen/ioniloukku/elohopea-ioni + klassiset kellot, jotka on käytetty uudelleen moduuleista holdover/clock_state; kylmäatomi-interferometri; klassiset + lomittuneisuus-/yksifotoniajansiirtolinkit), joista jokainen kantaa edustavuustietueen; lomittuneisuuslinkki lisää laukauskohinarajoitetun ajoituksen toistotarkkuusmallin (~jitter/sqrt(R*tau), pimeälaskennan rangaistus, systemaattinen lattia).
Oraakkeli
Uudelleenkäytetyt kello-/CAI-kertoimet (holdover/clock_state, julkaistut arvot) + suljetun muodon laukauskohina- ja häviöidentiteetit lomittuneisuuslinkille
Päästä päähän -kvantti vs. klassinen ajansiirtoketju (kellon holdover + linkin toistotarkkuus neliöllisesti), uudelleenkäytetty ajoituksen suojaustaso, viive-/toistohyökkäyksen turvallisuuslaatumittari (1-P_md) sekä kellopoikkeaman havaitsemistodennäköisyys + CUSUM-viive, ilmoitettuna rehellisenä TradeEvidence-oliona edustavuustietueen kera.
Oraakkeli
Suljetun muodon neliösummabudjetti uudelleenkäytettyjen validoitujen ydinten yli (ADEV vs. Stable32/NIST; TPL-raja; havaitseminen analytic_pd/pmd); rehellisyys sidottu edustavuuskirjanpitoon (ledger)
Testit
timetransfer_chain::tests (toistotarkkuus paranee integroinnilla; kvantti voi voittaa JA hävitä; PL äärellinen-positiivinen; turvallisuuden FoM välillä [0 1] ja kasvaa hyökkäysviiveen mukana; poikkeaman Pd monotoninen; kompromissi is_honest)
Kvantti- (kylmäatomi-interferometri) vs. klassinen navigointiluokan INS-dead-reckoning GNSS-katkon yli: paikkavirheen kasvu, holdover paikkakynnykseen asti ja kvantti vs. klassinen -kompromissi rehellisenä TradeEvidence-oliona; rehellinen havaittavuushuomautus (bias ei ole havaittavissa ilman paikannusta, joten virhe kasvaa).
Oraakkeli
Uudelleenkäytetyt inertiabudjetit ristiintarkistettu riippumatonta saman dead-reckoning-ODE:n Octave-kaksoisintegrointia vastaan (eri ajoympäristö, jaettu malli → ReferenceImpl) sekä julkaistua Freier-2016-lyhyen aikavälin kohinaa yksipuolisena ankkurina; kvantti vs. klassinen -komposiitti pysyy MODELLED
Testit
quantum_nav_od::tests (kvantti voittaa klassisen pitkässä katkossa; etu riippuu katkon kestosta; kompromissi is_honest); tests/gnss_free_quantum_navigation_reference.rs (dead-reckoning-paikan kasvu vs riippumaton…
Merkitty kvanttivikojen luettelo (kellotaajuushyppy/-ajelehtiminen/lukituksen menetys; anturin bias-askel/katkos), havaitsemistunnusluvun ROC AUC bootstrap-luottamusvälillä ja pienin havaittava vika kiinteällä väärän hälytyksen asteella; kvanttikellolla tuettu monitori havaitsee pienempiä vikoja kuin klassinen, ilmoitettuna rehellisenä TradeEvidence-oliona.
Oraakkeli
Suljetun muodon Gaussin AUC = Phi(mu/(sigma*sqrt2)), ristiintarkistettu ulkoisesti validoitua eval_stats::bootstrap_auc_ci-funktiota vastaan (vs. scikit-learn) + analyyttiset havaitsemiskynnykset
Testit
quantum_faults::tests (analyyttisen AUC:n tunnetut arvot; empiirinen bootstrap-AUC kehystää suljetun muodon; kvantti havaitsee pienempiä vikoja / suurempi AUC; etu katoaa valtavilla vioilla; 5 luokan katalogi; kompromissi is_honest)
ValidoituVääntömomentiton jäykän kappaleen asentodynamiikkaattitude_dynamics
Ominaisuus
Eulerin pyörimisliikeyhtälöt (I ω̇ = τ − ω × Iω, pääakseli ja yleinen inertiatensori) kytkettynä kvaternioniasentokinematiikkaan (q̇ = ½ q ⊗ ω) ja propagoituna kiinteäaskeleisella RK4-integraattorilla, joka renormalisoi kvaternionin joka askeleella
Oraakkeli
Basilisk 2.9.1 avaruusaluksen hubin jäykän kappaleen propagointi (AVSLab, ISC; MRP-asento omilla kytketyillä hub-yhtälöillään, svIntegratorRKF78 suhteellisella toleranssilla 1e-12), vääntömomentittomien jäykän kappaleen yhtälöiden riippumaton toteutus: Kshanan RK4-kvaternioni (dt 0,01 s) ja kappalekiinteät kulmanopeudet täsmäävät toleranssilla 1e-9 jaksolla 1e4 s kahdella yleisellä ei-diagonaalisella inertialla (pahimmat 3.3e-11 ja 3.4e-12 rad/s); toleranssi asetettu ennen vertailua. Validoitu väite: vääntömomentiton liike; ulkoisen vääntömomentin termiä ei vertailla. Säilymislaki- ja symmetrinen-pyörrä-tarkistukset säilyvät tukevana itsejohdonmukaisuutena. Ei joustavaa kappaletta / ohjaussilmukkaa / ulkoisen vääntömomentin ympäristöä
Testit
attitude_dynamics::tests (apply/solve inverse, spherical-top zero torque, principal-axis fixed point, short-run energy+momentum conservation, q̇=½q⊗ω, symmetric-top rate sign + body-cone precession)…
ValidoituClohessy–Wiltshire / Hill -suhteellisen liikkeen dynamiikkacw_dynamics (propagate,second_order_correction,propagate_second_order)
Ominaisuus
Jahtaajan suhteellinen liike kohteen ympärillä ympyräratainen viiteradalla LVLH-kehyksessä: linearisoidut Clohessy–Wiltshire-yhtälöt (ẍ−2nẏ−3n²x=0, ÿ+2nẋ=0, z̈+n²z=0) ratkaistuna suljetun muodon 6×6 tilansiirtymämatriisilla Φ(n,t) (Clohessy–Wiltshire 1960; Vallado Alg. 48) ja rajatun suhteellisen radan ehdolla ẏ₀=−2n·x₀, sekä suljetun muodon toisen asteen korjaus (cw_dynamics::second_order_correction, CW-vaste tarkkojen ympyräratainen chief -yhtälöiden neliöllisille termeille; Karlgaard ja Lutze 2003, Newman, Lovell ja Pratt 2015) koottuna funktioksi cw_dynamics::propagate_second_order. Validoitu tuloste on propagate_second_order; pelkkä lineaarinen Φ on karakterisoitu epälineaarista totuutta vastaan, ei validoitu
Oraakkeli
Orekit 12,2 (Apache-2.0) NumericalPropagator, kahden kappaleen, LOFType.QSW, ajettu erillisenä ohjelmana (fixture muuttumaton kierroksesta 1 lähtien). Ennakkorekisteröity kynnys 1e-3 m jokaisessa jokaisen tapauksen näytteessä; toisen asteen moottorikorjaus ajettiin uudelleen sitä vasten muuttumattomana (muutos 8c8e768d, kirjoitettu ennen propagaattorin olemassaoloa, ilmoittaen että ensimmäisen asteen erot olivat tiedossa). propagate_second_order täsmää: poikkeama on enintään 1.15e-7 m (C1), 9.8e-8, 5.4e-8 ja 2.2e-8 m; toisen asteen termin puolittaminen epäonnistuu virheillä 1.85e-3–3.14e-3 m. Pelkkä lineaarinen Φ poikkeaa epälineaarisesta totuudesta 1,2–6,3 mm etäisyydellä 100 m kolmanneksen kierroksen yli (poisjätetty toisen asteen termi; sen tiukka testi on pidetty ohitettuna), joten se on karakterisoitu, ei validoitu. Säilytetyt sisäiset tarkistukset: Φ RK4-integrointia vastaan Hillin yhtälöille, Φ(t)Φ(−t)=I, rajatun radan ja −12π·x₀-ajelehtimisen identiteetit sekä toisen asteen termin kolmannen asteen jäännöksen skaalautuminen. Rajaus: ympyräratainen chief, etäisyydet lähellä 100 m, korkeintaan kolmannes kierroksesta; ei eksentrisyyttä (Tschauner–Hempel), J2- tai differentiaalisen ilmanvastuksen termejä; pienen erotuksen oletus
Paikantaa lähettimen (häirintälaite/harhauttaja tai oportunistinen lähde käänteis-PNT:tä varten) vastaanotinverkon saapumisaikaerosta (TDOA) — τᵢ=(Rᵢ−R₀)/c-hyperboloidien leikkaus ratkaistuna Gauss–Newton-pienimmällä neliösummalla — ja lisäämällä taajuuserot (FDOA, etäisyysnopeuksien erot) liikkuvilla vastaanottimilla palauttaa yhdessä sijainnin ja nopeuden; sijaintikovarianssin Cramér–Rao-alaraja mittausgeometriasta
Oraakkeli
Estimaattorin ja geometrian itsejohdonmukaisuus: eteen→taakse -edestakaiset kierrokset, Fisher/CRLB-identiteetti J·CRLB=I, GDOP:n monotonisuus ja estimaattori, joka saavuttaa oman Cramér–Rao-rajansa Monte Carlo -kohinassa — sisäisen johdonmukaisuuden tarkistuksia, EI ulkoinen aineisto, joten rivi pysyy InternalConsistency. MODELLED passiivinen geopaikannus — pistelähteen näköyhteysmalli; ei monitie-etenemistä / NLOS:ia, vastaanottimen kellobiasta eikä ilmakehän refraktion termejä. 0,30 kierros 2, Ho ja Chan 1993 ja Ho ja Xu 2004 vastaan (ennakkorekisteröity f89018b8, kynnys 1 % kustakin painetusta arvosta), havainto (pysyy MODELLED): pintarajoitettu TDOA-raja toistaa 40 N geometriset kertoimet (-0.11 %, -0.02 %) ja suurimman TDOA:n; yhteinen TDOA+FDOA-raja toistaa kuvan 6 (+0,06 %, -0.17 %) ja lähteessä, jonka tekijöiden oma koodi nimeää kuvalle 7 (muutos kirjoitettu tuloksen näkemisen jälkeen, ilmoitettu), kuvan 7 (+0,11 %, -0.02 %); se on yhtä suuri kuin tekijöiden julkaistu rajakoodi (BSD-tyylinen, ajettu GNU Octavella) tarkkuudella 3e-12; kovarianssipainotettu suurimman uskottavuuden ratkaisija saavuttaa painetun rajan (+0,3 – +0,4 %). Ottawa-kertoimet, jotka paperi tulostaa Monte Carlosta (251, 7,1), poikkeavat +1,3 % ja +4,4 %, ylittäen kynnyksen 1 %
Testit
geolocation::tests (kohinaton TDOA eteen→käänteinen tarkkuudella 1e-6 m; J·CRLB=I symmetrisellä PD-kovarianssilla; CRLB:n paikkavarianssin jälki ei kasva, kun vastaanotin lisätään; yhteinen TDOA+FDOA palauttaa liikkuvan…
Validoitu3-DoF-ballistisen paluun huippuhidastuvuus verrattuna julkaistuun Stardustin nimellisarvoonentry_eo_ascent::entry_heating (simulate_entry,inertial_to_relative,EntryHeatingScenario)
Ominaisuus
3-DoF-pistemassapaluu pyörivän pallomaisen Maan yli US Standard Atmosphere -mallin (1976) läpi, integroituna RK4:llä inertiaalisesta paluutilasta, raportoiden huippuhidastuvuuden ja sen korkeuden; planeettasuhteellinen paluutila johdettuna inertiaalisesta. Ajettavissa skenaariotyyppinä entry-heating.
Oraakkeli
Desain, Mitcheltreen ja Cheatwoodin Stardust-nimellistapaus (1999, NASA NTRS 20050042027): maksimihidastuvuus 33,4 g nopeudesta 12,6 km/s planeettaan nähden, laukaisumassa 45,8 kg, 6-DoF POST -lentorata täydellä aerodynaamisella tietokannalla; paluurajapinta Desailta, Lyonsilta, Tooleylta ja Kangasilta (NTRS 20090004445): säde 6503,14 km, inertiaalinen 12,9 km/s kulmassa -8.2 deg. Kynnykset ennakkorekisteröity tiedostossa xval/entry-stardust/PREREGISTRATION.md ennen yhtäkään ajoa näillä syötteillä; molemmat kynnykset täyttyivät ensimmäisellä ajolla. MITÄ EI: yksi julkaistu tapaus ja yksi suure (huippuhidastuvuus, joka ballistisessa approksimaatiossa ei riipu ballistisesta kertoimesta); paluun leveysaste ja suunta on oletettu; lämmitystä, lämpökuormaa ja laskeutumispistettä ei tarkisteta sitä vasten; pistemassa vakio-C_D:llä, ei 6-DoF.
Testit
tests/entry_stardust_published.rs (huippu 35,44 g vs julkaistu 33,4 g, +6,1 %, kynnys 10 %; planeettasuhteellinen sisääntulonopeus 12,551 km/s vs 12,6, kynnys 0,1 km/s); entry_eo_ascent::entry_heating::tests (pyörivä kehys…
Pysähtymispisteen konvektiivinen lämpövuo q = k sqrt(rho/R_n) V^3 Sutton-Graves-vakioilla Maan ilmalle ja Marsin ilmakehälle (NASA TR R-376, 1971), sen huippu ja integroitu lämpökuorma 3-DoF-paluulla pitkin, ballistisella tai nostavalla vakiokallistuksella, Maassa tai Marsissa.
Oraakkeli
Sisäinen johdonmukaisuus: relaatio ja vakiot sellaisina kuin ne on painettu julkaisussa NASA TR R-376, puoliaskelkonvergenssitarkistus ja lämmitys- ja hidastuvuushuippujen odotettu järjestys. MITÄ EI: mitään julkaistua lämmitysarvoa ei ole verrattu (Stardust-julkaisut antavat suunnitteluraja-arvon ja konvektiivis-säteilevän arvion noin 1200 W/cm2, johon pelkkä konvektiivinen relaatio ei voi yltää); ei säteilylämmitystä, seinälämpötila- tai katalyyttisyyskorjausta eikä lämpösuojan vastetta.
Nadir-kuvantimen signaali-kohinabudjetti (Lambert-kohtauksen radianssi, kameran yhtälö, laukaus-, pimeä-, luku- ja kvantisointikohina), järjestelmän MTF Nyquistissa esteettömän aukon diffraktion, ilmaisimen aukon, lineaarisen smearin ja Gaussin jitterin tulona, tästä MTF:stä integroitu reunavaste ja suhteellinen reunavaste, Q = lambda F / p sekä GIQE:n versio 4 NIIRS ilman MTF-kompensaatiota. Ajettavissa skenaariotyyppinä eo-radiometry.
Oraakkeli
Suljetut muodot: diffraktio-MTF puolikatkotaajuudella, puhtaan ilmaisinaukon yhden pikselin ramppireuna (RER 1), Gaussin sumennuksen normaali-CDF-reuna (RER = erf(0.5/(sigma sqrt 2))), laukauskohinan skaalaus ja GIQE-kertoimet (versio 4) julkaistuina (Leachtenauer ym., Applied Optics 36(32), 1997). MITÄ EI: ulkoista kuvainta, mitattua MTF:ää tai arvioitua kuvaa ei ole verrattu; GIQE on empiirinen regressio omalla virheellään; ei hajavaloa, ilmakehän MTF:ää, MTF-kompensaatiota eikä aliasoitumista.
MallinnettuLaukaisun nousuvaiheen painovoima-, ilmanvastus-, ohjaus- ja vastapainehäviötentry_eo_ascent::ascent (simulate_ascent,AscentScenario); reentry::us76_pressure
Ominaisuus
Monivaiheisen kantoraketin tasomainen painovoimakäännöksellinen nousu ei-pyörivän pallomaisen Maan yli US Standard Atmosphere -mallin (1976) läpi (tiheys ja paine), pitch-potkulla, suuttimen vastapaineen vähentämällä työntövoimalla, vaiheiden loppuun palamisilla tarkoilla askelrajoilla sekä painovoima-, ilmanvastus-, ohjaus- ja vastapainehäviöillä integroituna tilan rinnalla. Ajettavissa skenaariotyyppinä ascent-losses.
Oraakkeli
Sisäinen johdonmukaisuus: tarkka identiteetti loppuun palamisnopeus = summa Isp g0 ln(m0/mf) miinus neljä integroitua häviötä (jäännös alle 1e-6 m/s), Tsiolkovskin yhtälö pystysuoralla tyhjiöpoltolla, jossa painovoima on ainoa häviö, sekä US76:n merenpinnan ja tropopaussin paineet. MITÄ EI: minkään julkaistun kantoraketin häviöitä ei ole verrattu; ei Maan pyörimistä, vapaata lentoa (coast), kaasutuksen säätöä eikä ohjausta potkun lisäksi; vakio-C_D; ei lentoratojen optimoija.
MallinnettuTWSTFT-kaksisuuntainen yhtälö, epävarmuusbudjetti ja linkin vakaus flicker- ja vuorokautisella epäresiprookkisuudellatwstft_budget (counter_readings,solve_offset,combined_uncertainty,flicker_phase,two_way_series,series_stability); time_transfer_budget (TimeTransferBudgetScenario,read_series)
Ominaisuus
TWSTFT-kaksisuuntainen yhtälö ratkaistuna suureelle T_A - T_B aseman lähetys- ja vastaanottoviiveillä, Ku-kaistan ionosfäärin ylös/alas-epäsymmetrialla, transponderin viive-erolla ja Sagnac-termeillä, tarkkaa suoraa mallia vasten; neliöllinen epävarmuusbudjetti, jossa linkin TDEV on tyypin A termi; kaksisuuntainen sarja valkoisella ja flicker-vaihekohinalla (Kasdin–Walter), vuorokautinen epäresiprookkisuus ja vakioresiprookkisuusjäännös; sekä toimitettujen Circular T-, MJD-CSV- tai IGS RINEX -asemakellosarjojen nopeus, jäännös-RMS, TDEV ja ADEV. Ajettavissa skenaariotyyppinä time-transfer-budget.
Oraakkeli
Sisäinen johdonmukaisuus: suora malli ja ratkaistu yhtälö täsmäävät toleranssilla 1e-15 s, Sagnac-termi on yhtä suuri kuin moduulin riippumaton silmukkamuoto BIPM 2A omega/c^2, ionosfäärin termi on 40,3 TEC (1/f_up^2 - 1/f_down^2)/c, ja kohinaprosessit näyttävät odotetut TDEV-muotonsa. MITÄ EI: mitään todellista TWSTFT-mittausta tai kalibrointiraporttia ei ole verrattu; ilmoitetut viiveet ja epävarmuudet ovat syötteitä, eivät mitattuja; toimitettujen sarjojen vakaudet raportoidaan, ei validoida.
Testit
twstft_budget::tests (kaksisuuntainen yhtälö palauttaa poikkeaman täsmälleen; Sagnac-termi vastaa BIPM-silmukan suljettua muotoa; ionosfääritermi seuraa taajuusjakoa ja troposfääri kumoutuu; flicker-vaiheella on…
MallinnettuOptisen vinoreitin ilmakehän numeriikka: Rytov-varianssi, tuikinta, gamma-gamma-häipymätodennäköisyys, aukon keskiarvoistus, pilven ja kirkkaan ilman optinen syvyysoptical_atmosphere (rytov_variance,scintillation,gamma_gamma_cdf,fade_margin_db,aperture_averaging_factor,cloud_optical_depth,clear_air_optical_depth); optical_linkbudget (optical_link_budget_atmosphere)
Ominaisuus
Hufnagel-Valley Cn2 integroituna vinoreittiä pitkin tasoaallon ja pallo-aallon Rytov-varianssille (ylä- ja alalinkki), Andrews–Phillips-tuikintaindeksille ja gamma-gamma-parametreille, gamma-gamma-häipymätodennäköisyydelle ja häipymävaralle, heikon turbulenssin aukon keskiarvoistuskertoimelle, nestemäisen veden pylvään pilven optiselle syvyydelle ja Kim-näkyvyyden sekä Rayleigh-kirkkaan ilman optiselle syvyydelle, korvaten optisen linkkibudjetin kasatun ilmakehähäviön, kun ilmakehä on annettu. Ajettavissa skenaariotyypin sisällä (optical-atmosphere).
Oraakkeli
Numeriikkaa verrataan riippumattomaan ohjelmaan (xval/optical-atmosphere/oracle.py, mpmath 1.4.1 tarkkuudella 30 numeroa, tanh-sinh-kvadratuuri alkuperäisellä korkeusmuuttujalla ja Bessel-K gamma-gamma-tiheyksillä), joka ei jaa koodia Kshanan kanssa, kynnyksillä, jotka on asetettu ennen kuin mitään toteutusta oli olemassa (xval/optical-atmosphere/PREREGISTRATION.md). MIKSI MODELLED: tämä oraakkeli evaluoi samat julkaistut kaavat, joten se tarkistaa ilmoitettujen kaavojen toteutuksen eikä ilmakehää; mitään ITU-R-validointiesimerkkiä ja mitattua tuikinta- tai vinoreittivaimennustallennetta ei käytetä (ITU-arvot ovat avoin lisenssipäätös ja pidetään poissa repositoriosta). Cn2-profiilin taso, näkyvyys, aerosolin ja molekyylien skaalakorkeudet, aukon keskiarvoistuksen reitin pituus ja momenttisovitus, jolla aukon keskiarvoistus sovelletaan gamma-gamma-parametreihin, ovat ilmoitettuja syötteitä tai konventioita. Moduulin lähderivi kirjaa, että yksi laajasti kopioitu katsaus tulostaa toisen tuikintaeksponentin muodossa 7/6, kun Andrews ja Phillips antavat 5/6; muoto 5/6 on toteutettu
Optisen linkin saatavuus ilmoitettua linkkivarausta vasten log-normaalista pilven nestevesi-ilmastosta (ITU-R P.840 -määrä, geometrisen optiikan vaimennus) ja riippumattomasta gamma-gamma-turbulenssihäipymästä, tavoitesaatavuuksiin tarvittava linkkivara ja katto, jota mikään vara ei nosta, log-normaalit katkon kestot, parannustekniikoiden mitä-jos-tarkastelut sekä yhden tekijän Gaussin kopula-verkkosaatavuus, jonka parikorrelaatio on exp(-etäisyys/dekorrelaatiopituus). Ajettavissa skenaariotyyppinä optical-atmosphere.
Oraakkeli
Sisäinen johdonmukaisuus: diversiteettimallin suljetun muodon rajat ja monotonisuus, pilvikaton suljettu muoto ja log-normaalit katkoidentiteetit. EI väitetä ulkoista oraakkelia eikä sellaista ole verrattu: mitään mitattua optisen maa-aseman saatavuutta tai pilvettömän näköyhteyden tallennetta ei käytetä. MIKSI MODELLED: pilvi-ilmasto (pilven todennäköisyys, nestevesipylvään mediaani ja hajonta, katkojen kestot), pilven ja turbulenssin riippumattomuus, Gaussin kopulan muoto, dekorrelaatiopituus ja jokainen tekniikkahyöty ovat oletuksia; mukana toimitetut skenaariot ilmoittavat ILLUSTRATIVE-ilmastoja, eivät aineistoa. Tämän rivin ylentäminen vaatii siteeratun mitatun saatavuustallenteen ja kynnyksen, joka on rekisteröity ennen vertailua
Testit
tests/optical_atmosphere_identities.rs (kynnys A4: rho = 0 vastaa riippumatonta yhdisteä ja rho = 1 parasta yksittäistä paikkaa tarkkuudella 1e-12, ja nolla monotonisuusrikkomusta paikkojen määrässä ja korrelaatiossa; ensimmäinen…
MallinnettuAjoituksen ja etäisyysmittauksen jatkuvuus optisten katkojen läpioptical_outage_holdover (couple,clock_psds); holdover (coast_phase_sigma,holdover_seconds,phase_to_range_m)
Ominaisuus
Optisen aseman katkon kestojakauma kytkettynä holdover-mallin suljetun muodon vapaa-ajovarianssiin: ajoitus- ja etäisyysmittausvirhe ilmoitetuilla katkokvantiileilla, holdover ajoituskynnykseen asti, katkojen ja katkoajan osuus, joka jää sen sisään, sekä ajoitussaatavuus A + U E[min(D, T_h)]/E[D], klassisille ja kvanttikelloluokille. Ajettavissa skenaariotyypin sisällä (optical-atmosphere).
Oraakkeli
Sisäinen johdonmukaisuus holdover-moduulin kanssa, bitti bitiltä; EI väitetä ulkoista oraakkelia. Luokkien PSD:t ovat synteettisiä pitkän tau:n lattioita, jotka holdover-moduuli jo sisältää, joten luvut perivät sen ilmoitetun varauksen, että holdover tiukkaan kynnykseen asti määräytyy oletetun punaisen kohinan lattian eikä siteeratun Allanin poikkeaman mukaan. Katkojen kestot ovat log-normaali malli ilmoitetuilla parametreilla, ei mitattu pilvessäoloaikojen tallenne
Testit
tests/optical_atmosphere_identities.rs (kynnys A6: katkokohtainen ajoitusvirhe on sama kuin holdover::coast_phase_sigma ja etäisyysvirhe sama kuin phase_to_range_m bitilleen 9 kellolla, 3 keskimääräisellä kestolla, 3 hajonnalla ja 4…
MallinnettuOptisen linkin vara ajan funktiona: yksi siemenluvulla ajettu aseman sään realisaatiooptical_timeseries (site_series,SiteModel,SeriesSpec,Series); optical_atmosphere_scenario (TimeseriesSpec)
Ominaisuus
Valinnainen taulukko [timeseries] (kesto, askel, siemenluku) saa skenaariotyypin optical-atmosphere kirjoittamaan myös kullekin asemalle yhden siemenluvulla ajetun realisaation ilmoitetusta asemamallista ajan yli: pilvijaksot (kirkkaat jaksot eksponentiaalisia, pilvikatkot log-normaaleja ilmoitetulla keskiarvolla ja hajonnalla, pilvessä vietetty aikaosuus asetettu ilmoitettuun pilven todennäköisyyteen), yksi log-normaali nestevesipylväs per pilvijakso, yksi gamma-gamma-tuikintanäyte per askel, ja niistä linkkivara, pilvi- ja tuikintahäipymät ja linkki ylhäällä -lippu, sekä toteutunut saatavuus, pilviosuus, katkojen lukumäärä ja pisin katko. Ilman taulukkoa tulos on asiakirja versiosta 0,37. Arvonnat kulkevat siirrettävien jakauma- ja matematiikkareittien kautta, joten natiivi ja wasm32 antavat samat tavut.
Oraakkeli
Vain sisäinen johdonmukaisuus; EI väitetä ulkoista oraakkelia, eikä sellaista ole säärealisaatiolle. Tarkistukset vertaavat yhtä arvontaa saman mallin tilastolliseen tulosteeseen, joten läpäisy kertoo, että generaattori ottaa näytteitä ilmoitetuista jakaumista (arvonnan saatavuus ja pilviosuus ovat ennakkorekisteröityjen toleranssien sisällä ilmoitetuista luvuista), ei että mikään todellinen asema käyttäytyy niin. Sarja on yksi realisaatio, ei ilmasto: sen saatavuus eroaa ilmoitetusta arvonnan otantavirheen verran, ja eri askelten tuikintanäytteet ovat riippumattomia, mikä on ilmoitettu yksinkertaistus prosessista, joka dekorreloituu millisekunneissa. Sääsyötteet pysyvät skenaarion oletuksina.
Testit
tests/optical_atmosphere_timeseries.rs (kynnykset T1-T6 tiedostosta xval/optical-atmosphere/PREREGISTRATION-timeseries.md, kiinnitetty ennen ensimmäistä ajoa: sama siemenluku samat tavut ja toinen siemenluku toiset tavut; ei avainta ilman taulukkoa; yli…
MallinnettuTRK-2-18 Orbit Data File -lukija ja Marsin rampitettu 2-suuntainen Doppler-malliodf (parse_odf,Odf,OdfObservation,OdfRamp,seconds_1950); mars_od (DopplerModel,RampTable,compress_two_way,MarsDynamics,fit,fit_damped); naif_kernel (SPK type 1); gravity_pds (SphericalHarmonicField::from_shadr)
Ominaisuus
DSN:n Orbit Data File -tiedostojen (TRK-2-18) lukija: 36-tavun tietueryhmät (tiedostotunniste, tunniste, ratadata, asemakohtaiset rampit, kellopoikkeamat, yhteenveto, tiedoston loppu) ja kussakin ratadatatietueessa aikaleima alkaen vuodesta 1950, alalinkin ja ylälinkin viiveet, havaintosuure, asemat, datatyyppi, kaistat, voimassaolo, kanava, avaruusalus, 46-bittinen viitetaajuus ja pakkausaika; rampin alku- ja loppuajat, nopeudet ja alkutaajuudet. Sen päälle rampitettu 2-suuntainen X-kaistan Doppler-malli (integroidut ylälinkin rampit, kiertomatkan valoaika Shapiron ja troposfäärin kera, DSN-asemat IAU 2006/2000A CIO -ketjun ja IERS EOP:n kautta, asema-aika) ja Marsin kiertoradan eräradanmääritys (GMM-3-kenttä, kolmannet kappaleet, SRP, ilmanvastus).
Oraakkeli
PDS3-tunniste, jonka DSN:n navigoinnin datan esikäsittelyprosessi tuotti tiedoston mukana (NASA PDS Geosciences Node, MRO-M-RSS-1-MAGR-V1.0), tarkistettuna kynnyksiä vasten, jotka on ennakkorekisteröity tiedostossa xval/mro-odf/PREREGISTRATION.md ennen lukijan olemassaoloa. MODELLED, koska yksi rekisteröity kynnys (tiedoston loppu -taulukon rivit, 121 tiedostossa ja 120 tunnisteessa) ei täyttynyt; tunniste on siinä sisäisesti ristiriitainen. Vaihe 2 (xval/mro-od/PREREGISTRATION.md, muutokset A1 ja A2 ennen pisteytettyä tulosta): MRO:n navigointitiimin rekonstruktiosta (mro_psp5, NAIF) ennustettu Doppler vastaa havaittua rampitettua 2-suuntaista Dopplera tarkkuudella 12,5 mHz kehityksessä käyttämättömillä ohituksilla, kynnys täyttyi; rekisteröity ratamääritys epäonnistui pisteytetyllä kaarella (normaalimatriisi ei positiivisesti definiitti) eikä tuottanut rataa, joten ratakynnykset eivät täyttyneet. Ajo 2 (xval/mro-od/PREREGISTRATION-RUN2.md, vaimennettu estimaattori, sama kaari ja kynnykset, pisteytysmuutos R2-A1 ilmoitettu tiedostossa docs/revisions) suppeni: estimoidun radan poikkeama rekonstruktiosta on 0,36 km RMS (0,53 km maksimi), kynnykset täyttyivät, mutta jälkisovituksen Doppler-RMS on 48,6 mHz kynnystä 30 mHz vastaan, ei täyttynyt, joten rivi pysyy MODELLED. MITÄ EI: yksikään estimoitu rata ei ole täyttänyt kaikkia rekisteröityjä kynnyksiä; ionosfääriä, aurinkoplasmaa ja suurinta osaa antennin offsetista (säteittäinen offset 1,5 m sovitetaan kehitysohitukseen) ei mallinneta.
Testit
tests/mro_odf_reader_label_oracle.rs (todellinen MRO ODF, 2007-304/305, sen PDS-tunnistetta vasten: tietueiden määrä, ryhmien paikat, asemat, alku- ja loppuajat sekä datatyypit pitävät; tiedoston lopun taulukon rivimäärä ohittaa…
Jäykän hubin inertiaalinen asennonosoituksen ohjaus kolmella tai useammalla tasapainotetulla reaktiopyörällä: MRP-takaisinkytkentälaki L_r = -K sigma_BR - P omega_BR (Schaub ja Junkins), miniminormin pyörän moottorimomentit G_s u = -L_r rajattuna kunkin pyörän rajaan, kytketty hubin ja pyörien dynamiikka, jossa hubin inertia kantaa pyörien spin-inertian, kvaternionikinematiikka, RK4 nollannen asteen pidolla. Ajettavissa skenaariotyyppinä aocs (todellisen tilan silmukka).
Oraakkeli
Basilisk 2.9.1 (AVSLab, ISC; bsk-pyöräajo erillisenä työkaluna, ei koskaan linkitetty eikä vendoroitu): avaruusaluksen hubi, reactionWheelStateEffector (BalancedWheels, vääntömomenttiraja päällä), simpleNav, inertial3D, attTrackingError, mrpFeedback (ei integraalitermiä) ja rwMotorTorque arvolla dt = 0,1 s omalla RK4:llään, Kshanan omaa toteutusta vastaan kolmella tapauksella (kolme ortogonaalista pyörää; neljän pyörän pyramidi; saturoituva neljän pyörän tapaus), kynnykset ennakkorekisteröity tiedostossa xval/aocs-basilisk/PREREGISTRATION.md ennen koodia ja ajoa. Kaikki kynnykset täyttyivät ensimmäisellä ajolla. MITÄ EI: anturikohina silmukassa, integraalitakaisinkytkentä, seurantaohjaus, pyörän kitka, jitter, nopeusrajat ja teho, minkään todellisen avaruusaluksen vahvistukset; vertailu tarkistaa lain ja dynamiikan toteutuksen riippumatonta toteutusta vastaan, ei lentoohjainta.
Testit
tests/aocs_basilisk_oracle.rs (3 tapausta, 601 näytettä kukin: MRP huonoin 2.4e-14, kynnys 1e-9; kappaleen kulmanopeus 1.6e-15 rad/s, kynnys 1e-9; vauhtipyörän nopeus 2.9e-11 rad/s, kynnys 1e-6; käytetty moottorimomentti 1.2e-13 N m, kynnys 1e-9; t = 0 momentit…
MallinnettuMultiplikatiivinen EKF-asennonestimointi gyrosta ja tähtiseurantalaitteestaaocs_mekf (Mekf,GyroSim,attitude_error,spd_solve6); aocs_kind (estimator)
Ominaisuus
Lefferts–Markley–Shuster-multiplikatiivinen EKF: kappalekoordinaatiston asentovirhe- ja gyron bias-tilat, propagointi gyron nopeudella vähennettynä biasestimaatilla ja Farrenkopfin diskreetillä prosessikohinalla (kulma- ja nopeussatunnaiskävely), tähtiseurantalaitteen päivitykset residuaalilla 2 vec(q^-1 q_st) Joseph-muodossa ja multiplikatiivinen nollaus; Farrenkopfin diskreetti gyro- ja tähtiseurantalaitesimulaattori. Skenaariotyyppi aocs voi sulkea ohjaussilmukan oman estimaattinsa varaan.
Oraakkeli
Sisäinen johdonmukaisuus: suodattimen normalisoitu estimointivirheen neliö totuutta vastaan, joka on simuloitu samoista anturimalleista Monte Carlo -siemenluvuilla, sekä asennon ja biasin estimaattien suppeneminen. MITÄ EI: ulkoista estimaattoria tai lentodataa ei ole verrattu (Basilisk 2.9.1 ei sisällä MEKF-moduulia); anturimallit ovat oppikirjamalleja, ilman virheasentoa, skaalauskerrointa tai tähtiseurantalaitteen näkökentän vaikutuksia.
Testit
aocs_mekf::tests::mekf_is_consistent_over_monte_carlo_seeds (40 siemenlukua, keskimääräinen kuusivapausasteinen NEES toisella puoliskolla välillä 4,5 – 7,5); aocs_mekf::tests::star_tracker_updates_bound_the_attitude_error…
ValidoituWahba/TRIAD/QUEST-asennonmäärityswahba
Ominaisuus
Optimaalinen kolmiakselinen asento painotetuista vektorihavainnoista (tähti/aurinko/magnetometrisuunnat): deterministinen kahden vektorin TRIAD, Davenportin q-menetelmä (tarkka Wahba-häviön minimoija — optimaalinen kvaternioni on 4×4 Davenportin matriisin K suurimman ominaisarvon ominaisvektori, ratkaistuna symmetrisellä Jacobin ominaisarvoratkaisulla) ja QUEST (K:n karakteristisen yhtälön Newton/sekantti-juuri, aloitettuna painojen summasta Σ, sitten Gibbs-vektorikvaternionin palautus)
Oraakkeli
scipy.spatial.transform.Rotation.align_vectors (SciPy 1,13; Virtanen ym., Nature Methods 2020) — Wahban ongelman Kabsch/Markley-SVD-ratkaisu, aidosti riippumaton algoritmi (asenneprofiilimatriisin SVD) ja koodikanta verrattuna kshanan Davenport-K-ominaisarvoratkaisuun / QUEST-karakteristisen juuren menetelmään, ja se laskee SAMAN yksikäsitteisesti määritellyn Wahba-optimaalisen asennon. Kohinattomilla painotetuilla vektorihavaintojoukoilla TRIAD, q-menetelmä ja QUEST toistavat scipyn optimaalisen rotaation toleranssilla <1e-9 rad (vertailtuna etumerkki-invariantin asentovirhekulman kautta). Kohinainen Monte Carlo -tilastollinen väite ”optimaalinen voittaa TRIADin” pysyy MODELLED (ei ulkoista oraakkelia); vain pistesuunta-yksikkövektorihavainnot — ei anturin näkökentän/biasin/ajallisen korrelaation mallinnusta, ja QUEST on singulaarinen kulmassa 180° (q-menetelmä kattaa tapauksen)
Testit
wahba::tests (A(identiteettikvaternio)=I; Jacobin ominaisarvoratkaisin toteuttaa Kv=λv:n ja säilyttää jäljen tunnetulla symmetrisellä matriisilla; K on symmetrinen); tests/wahba_reference.rs (TRIAD, Davenportin q-menetelmä ja QUEST…
scipy.stats.ncx2 / scipy.stats.chi2 (SciPy 1,13; Cephes/Boost) — riippumaton algoritmi (jatkuvamurtolukuinen ei-keskeinen/keskeinen χ²) verrattuna kshanan epätäydellisen gammafunktion sarjaan (raim::chi2_cdf / noncentral_chi2_cdf), ja se laskee saman yksikäsitteisesti määritellyn havaitsemistunnuslukujen YTIMEN: yleistetyn Marcum Q_M(a,b)=ncx2.sf(b²,2M,a²), havaitsemistodennäköisyyden P_d, väärän hälytyksen todennäköisyyden P_fa ja käänteisen P_fa→kynnys, täsmäten tarkkuudella ~1e-6 — sama riippumattomuuden perusta kuin validoidulla rivillä ”RAIM/ARAIM-eheyden tilastollinen ydin”. VAIN YTIMEN: solukohtainen CFAR-solukeskiarvo ja koodi/Doppler-binin ylittämishäviö pysyvät MODELLED
Testit
acquisition::tests (Marcum-Q:n keskeinen tapaus Q_1(0,b)=exp(−b²/2); identiteetti P_d=Q_M(√(2Mρ),√γ); P_fa↔kynnys-edestakainen kierto yli M:n ja P_fa:n; ROC:n monotonisuus — P_d kasvaa SNR:n mukana, laskee kynnyksen mukana, P_d→P_fa kun…
ValidoituGNSS-kantoaallon vaiheen kokonaislukuepävarmuuden ratkaisu (LAMBDA)lambda
Ominaisuus
Kokonaislukuepävarmuuden kiinnitys pienimmän neliösumman kokonaislukumenetelmällä LAMBDA-tapaan: tilavuutta säilyttävä kokonaislukuinen (Z) dekorrelaatiomuunnos (L D Lᵀ-tekijän integer-Gauss-kokoreduktio) + tarkka Schnorr–Euchner-syvyyssuuntainen branch-and-bound-kokonaislukuhaku pienimmällä neliösummalla, ja kahden parhaan ehdokkaan suhdetesti (validoitu väite); sekä suljetun muodon bootstrapattu onnistumisaste P_s=∏(2Φ(1/(2σ_{i|I}))−1), joka tarkistetaan vain sisäisesti ja on validoidun väitteen ulkopuolella
Oraakkeli
RTKLIB v2.4.2-p13 lambda() (sen lähdetiedosto lambda.c, T. Takasu, BSD-2-Clause), riippumaton LAMBDA-reduktio ja MLAMBDA-haku käännettynä C:stä ja ajettuna työkaluna, 300 satunnaiskovarianssilla (n 2–10): kokonaislukujen pienimmällä neliösummalla on yksikäsitteinen minimoija, joten kiinnitettyjen kokonaislukujen on oltava identtiset (0 eroavuutta) ja kaksi parasta neliönormia, jotka syöttävät suhdetestiä, täsmäävät suhteellisella toleranssilla 1e-9 (mitattu 5.6e-13); toleranssi asetettu ennen vertailua. Validoitu väite: ILS-ratkaisu ja sen kaksi parasta normia. RTKLIB ei laske bootstrapattua onnistumisastetta, joka pysyy tarkistettuna sisäisesti Monte Carlo -simulaatiota vastaan pyöristysprosessista; Z-muunnoksen invariantit ja raakaenumeraatio säilyvät tukevina tarkistuksina. Vain integer-Gauss-dekorrelaatio (täyden LAMBDA-reduktion uudelleenjärjestelypermutaatiot nopeuttavat hakua mutta eivät muuta tarkkaa ILS-vastausta eivätkä bootstrapattua astetta)
Testit
lambda::tests (L D Lᵀ rekonstruoi Q:n); tests/lambda_reference.rs (Z-muunnos on unimodulaarinen |det Z|=1 ja Q_z=ZᵀQZ SPD, determinantin säilyttävä, ja pienempi kokonaiskorrelaatio epädiagonaalissa; Schnorr–Euchner ILS vastaa…
ValidoituB-tasokohdistus ja patched-conic-painovoima-avusteinen lentobplane
Ominaisuus
Hyperbolisen ohilennon geometria (a=−μ/v∞², e=1+r_p·v∞²/μ, kääntökulma δ=2·asin(1/e), törmäysparametri |B|=|a|·√(e²−1)), B-tason Ŝ/T̂/R̂-tähtäyspistekoordinaatisto ja B·T̂/B·R̂-hajotelma, sekä patched-conic-painovoima-apu (v∞-suuruus säilyy, suunta taipuu kulman δ verran, heliosentrinen Δv=2·v∞·sin(δ/2) ilman ponneainekustannusta) Tisserandin parametrilla T_P=a_P/a+2√((a/a_P)(1−e²))cos i
Oraakkeli
GMAT R2026a (Apache-2.0, ajettu erillisenä ohjelmana) 192 hyperbolisella Maan tilalla: B.T, B.R ja |B| toleranssilla 1e-6 km (pahin 1.35e-8 km), kääntökulma ja molemmat asymptootit toleranssilla 1e-9 rad (pahin 9.3e-15 rad); avun nopeusmuutos GMAT:n C3:sta ja asymptooteista toleranssilla 1e-9 v_inf (pahin 5.6e-14); heliosentrinen SMA, ECC ja INC 350 Aurinko-keskisellä tilalla ennen ja jälkeen avun suhteellisella toleranssilla 1e-9 ja 1e-12 rad (pahimmat 2.2e-14 ja 4.1e-14 rad); Tisserandin parametri sbpy 0.6.0 (BSD-3) vastaan GMAT-elementeillä toleranssilla 1e-9 (pahin 1.3e-15) ja lauseketta 3 - C3/v_c^2 vastaan (8.9e-16); sekä Tisserandin suljettu muoto Kasugan ja Jewittin (2019) taulukkoa 8,1 vastaan 12 kohteelle painetun pyöristysrajan sisällä (pahin 0,39 rajasta; P1 julkaistu työstetty arvo). Ennakkorekisteröity (436293bf; heliosentrinen korjaus 6fd9f5e6); muutos 374c806b, kirjoitettu oraakkelitiedostojen generoinnin jälkeen ja ennen yhtäkään Kshanan arvoa, laajensi inklinaation syötesuodattimen arvosta 1e-2 arvoon 1e-3 rad, säilyttäen enemmän ja huonommin ehdollisia tiloja. Rajaus (MODELLED): patched-conic kahden kappaleen ohilento ympyräratainen planeettaradalla, ei vaikutuspiirin siirtymää, kohtaamishäiriöitä eikä efemeridiä
Testit
bplane::tests (ohituksen skalaarit toteuttavat suljetut muodot kahdella yhtenevällä |B|-identiteetillä ja |B|>r_p; kääntökulma pienenee periapsissäteen mukana ja saavuttaa rajat δ→0 / δ→π; taipuma säilyttää v∞-nopeuden ja…
Kontrolloidun vastaanottokuvion antennin nollaus: kompleksiset ryhmän ohjausvektorit a(û)=exp(j·k·pₙ·û), deterministinen nollaohjaus (yksikkövahvistus kohti SV:tä, tarkat nollat kohti enintään N−1 häirintälaitetta minimi-normi-ratkaisulla w=Aᴴ(AAᴴ)⁻¹b) ja MVDR-adaptiiviset painot w=R⁻¹a_sv/(a_svᴴR⁻¹a_sv), jotka ohjaavat syvät nollat itse voimakkaisiin häiriölähteisiin (alusta asti kirjoitetulla kompleksisella lineaarialgebraytimellä)
Oraakkeli
numpy.linalg / scipy.linalg (LAPACK zgesv -kompleksiratkaisu) — riippumaton lineaarialgebrakoodikanta verrattuna kshanan alusta kirjoitettuun kompleksiytimeen, ja se laskee SAMAT yksikäsitteisesti määritellyt painot: MVDR w=R⁻¹a_sv/(a_svᴴR⁻¹a_sv) ja minimi-normi-nollaohjaus w=Aᴴ(AAᴴ)⁻¹b, sekä tuloksena olevat ryhmävasteen vahvistukset, täsmäten tarkkuudella ~1e-9 — sama oraakkeliluokka kuin validoiduilla DOP- (gnss_lib_py) ja Fisher-informaatio- (numpy) riveillä. MODELLED kapeakaistainen kaukokenttäryhmä identtisillä isotrooppisilla elementeillä — ei keskinäistä kytkeytymistä, elementtikohtaista epäsuhtaa, äärellistä kaistanleveyttä (STAP) eikä ohjausvektorin estimointivirhettä
Testit
crpa::tests (kompleksilukuaritmetiikan identiteetit mm. z/z=1, |exp(jθ)|=1, zᴴz=|z|²; deterministinen nollanohjaus antaa täsmälleen yksikön SV-vahvistuksen ja <1e-9 häirintänollat 4-alkioisessa ULA:ssa 3 häirintälähettimellä; N-alkioinen ryhmä hylkää…
Viiden kertoimen IEEE-1139 PSD↔Allan-varianssi-muunnos S_y(f)=Σh_α f^α → σ_y²(τ) (valkoinen/flicker-PM, valkoinen/flicker/satunnaiskävely-FM), flicker-FM-lattia σ_y=√(2 ln2·h_{-1}) ensiluokkaisena sovitettavana termina, ja ei-negatiivinen FM-perheen sovitus kannassa {(2π²/3)τ, 2 ln2, 1/(2τ)}, joka palauttaa lattian, jota ajelehtimiskanta {1/τ,τ,τ³} ei voi esittää
Oraakkeli
allantools 2024,06 (A. Wallin; Kasdinin & Walterin 1992 / Vernotten 2015 kertoimet) — riippumaton kolmannen osapuolen koodikanta ja viittausjuuret, jotka laskevat SAMAN yksikäsitteisesti määritellyn IEEE-1139 PSD→Allan-muunnoksen σ_y(τ) kullekin viidelle potenssilakikohinatyypille. kshanan powerlaw::allan_deviation täsmää allantoolsin suljettuihin muotoihin (valkoinen/flicker-FM, RW-FM ja valkoinen PM suhteellisella toleranssilla <5e-9; flicker-PM tarkkuudella ~1e-5 — aito riippumattomuussignaali, kun kshana käyttää NIST-SP-1065-taulukoitua vakiota 1,038 ja allantools täyttä 3γ−ln2), ja flicker-FM-lattia √(2 ln2·h_{-1}) täsmää allantoolsin kanssa koko τ-portaikon yli — sama kynnys, jonka validoidut MDEV/TDEV/Theo1/MTIE-rivit täyttävät. MODELLED stationaarinen potenssilakimalli — ei determinististä ajelehtimis- (τ²) termiä; laitekohtaiset kertoimet / mitatut lattiat pysyvät mallinnettuina
Testit
powerlaw::tests (kukin puhdas kohinatyyppi näyttää tunnusomaisen ADEV-log-log-kulmakertoimensa — valko-FM −½, flicker-FM 0, random-walk-FM +½, valko-PM −1; flicker-FM-termi on tasainen lattia, joka on √(2 ln2·h_{-1}) viiden dekadin yli…
Sarjallistaa ja jäsentää CCSDS 502,0 OEM COVARIANCE_START…COVARIANCE_STOP -lohkon — 6×6 paikka/nopeus-kovarianssin kirjoitettuna sen 21-alkioisena alakolmiona (kanoninen CX_X … CZ_DOT_Z_DOT-järjestys) valinnaisella COV_REF_FRAME-kentällä, täydentäen olemassa olevaa OEM-tilavektorin kirjoitinta/jäsennintä, jotta radanmääritys- ja suodinkovarianssit kiertävät edestakaisin standardimuodossa
Oraakkeli
oem 0.4.5 (MIT, https://pypi.org/project/oem/) — SAMA riippumaton CCSDS-502-jäsennin, johon validoitu rivi ”CCSDS OEM -yhteentoimivuus” luottaa, täysin erillinen koodikanta (oma KVN-tokenisoija, kovarianssiosion tilakone ja numpy-matriisikokoonpano). kshana emittoi täyden OEM-segmentin, joka kantaa sen merkitsemättömän paljasnumeroisen alakolmio-COVARIANCE-lohkon; oem jäsentää sen ja rekonstruoi symmetrisen matriisin 6×6, täsmäten kshanan syötekovarianssiin alkio alkiolta f64-pyöristysvirheen tarkkuudella — aito kirjasto vs. kirjasto -tiedonvaihdon edestakainen kierto (verrattuna oemin rekonstruktioon, ei kshana-uudelleenjäsennykseen), sulkien rivin aiemman ”ei kolmannen osapuolen fixturea” -aukon
Testit
oem::tests (symmetrinen PD-kovarianssi säilyy edestakaisessa kierrossa KVN→jäsennys f64-pyöristysvirheeseen asti ja pysyy symmetrisenä; lohko tuottaa täsmälleen 21 alakolmioalkiota — i+1 matriisirivillä — COV_REF_FRAME kanssa/ilman; lohko, jossa…
ValidoituINS/TRN-vapaalentovirheen kasvu ja kynnysylityksetinertial::coast (ErrorDynamics,ErrorSource,source_error_m,CoastModel,Contribution,Combination,TrnFixMode,first_crossing_s,InsTrnCoastScenario); scenario kind ins-trn-coast
Ominaisuus
Paikkavirhe vs. vapaalennon kesto -budjetti, joka on rakennettu IMU-kertoimista, kukin virhelähde (kiihtyvyysanturin bias, gyron bias, nopeuden satunnaiskävely, kulman satunnaiskävely, skaalauskerroin risteilyssä ja jatkuvan ominaisvoiman alla) propagoituna yhdeksän tilan paikallisen tason INS-virhemallin läpi Schuler-takaisinkytkennällä (inertial::coast::ErrorDynamics Grovesin 2. painoksen luvun 14 mukaan: asento-, nopeus- ja paikkavirheet, pystykanava painovoimagradienttineen, WGS-84-säteet ja normaalipainovoima, pohjoiseen suuntautuva vaakatasoalusta konfiguroidulla nopeudella, latitude_deg ja height_m; systemaattiset termit augmentoidulla matriisieksponentilla, satunnaiskävelyt Van Loanilla), litteän Maan monomit säilytettynä vain nimellä leading_order_m; osuudet yhdistettynä ilmoitetulla säännöllä (rss / linear-sum / deterministic-sum-with-stochastic-rss); vapaalennon kestot, jotka saavuttavat kutsujan antamat paikkakynnykset (oletuksena 10 m ja 50 m) paikannettuna eteenpäin kulkevalla haulla ensimmäiseen ylitykseen (first_crossing_s, koska Schuler-rajatut käyrät eivät ole monotonisia), ja hallitseva lähde kussakin ylityksessä; sekä TRN-rajattu moodi, joka antaa suurimman maastopaikannusvälin, joka pitää kunkin kynnyksen. Ajettavissa skenaariotyyppinä ins-trn-coast
Oraakkeli
NaveGo v1.4 (commit 24d9488, LGPL-3.0), ajettu erillisenä ohjelmana GNU Octave 8.4.0 -ympäristössä: vapaa-inertiaaliset vapaalentoajot samalla IMU-virheprofiililla, yhdellä korjatulla numeerisella kuolleella kaistalla sen kvaternioniupdatessa (qua_update.m: kynnysehto nopeudelle alle 1e-8 rad/s korvattu lausekkeella wnorm == 0, sovellettu ajonaikaiseen kopioon ja varmistettu täsmäämään kerran; kynnysehdon ollessa paikallaan hitaasti ajelehtiva alustan asento jäätyi ja katkaisi Schuler-takaisinkytkennän). Ennakkorekisteröity (4262b969) korjatulla generaattorilla ennen sen ajoa; moottori (440b3877) sitoutettiin ennen kuin yhtään korjattua tulostetta avattiin; sama kynnys 5 %, 48 pistettä, termit, siemenluvut ja tunnusluku kuin kierroksella 1. Tulos: 48/48 täyttää kynnyksen 5 % (pahin +3,70 % nopeuden satunnaiskävely kohdassa 1200 s, +3,33 % kulman satunnaiskävely kohdassa 1800 s); kohdassa 3600 s NaveGo/Kshana antavat 2375.4/2376.2 m kiihtyvyysanturin biasille ja 130 885/131 675 m gyron biasille. Schuler-kuljetusnopeustakaisinkytkennän nollaaminen epäonnistuttaa testin (+695 % kohdassa 3600 s). Ilmoitettu: yksikanavaiset Schuler-ennusteet ja kierroksen 1 NaveGo-arvot olivat tiedossa; mallissa ei ole sovitettua parametria. Rajaus: termikohtaiset virhekäyrät taktisen luokan IMU:lla, 45 deg N, vaakatasossa ja pohjoiseen suunnattuna, enintään 3600 s; ylitykset, yhdistämissääntö ja TRN-moodi ovat näiden käyrien deterministisiä funktioita. IMU-luokan kertoimet (Grovesin 2013 taulukon 4,1 kaistaluvut) ja TRN-paikannusjäännös pysyvät syötteinä tilassa MODELLED. Kierros 1 (korvattu): litteän Maan monomit, nyt leading_order_m, yliarvioivat yli 600 s (2.2x–8x tunnin kohdalla). 0,30 revisio: jokainen ins-trn-coast-tulos muuttuu (mukana toimitettu skenaarion TRN-huippu 52,932679 -> 44,711834 m)
Testit
tests/ins_coast_schuler_navego_oracle.rs::coast_error_model_matches_the_corrected_navego_runs (48 pistettä, kuusi virhetermiä välillä 30 s – 3600 s, taktinen luokka, 45 astetta N, vaaka ja pohjoiseen suunnattu: jokainen piste 5 %:n sisällä…
MallinnettuAukon navigointi vs. viestintä -käyttöasteaperture_duty
Ominaisuus
Yksi ajo ottaa kontaktisuunnitelman (aos_s/los_s-ikkunoiden luettelo, jossa kukin pyytää aukkoa navigointiin tai viestintään — sama ikkunasanasto, jonka passes::predict_passes tuottaa, muunnettuna funktiolla aperture_duty::windows_from_passes), aukkojen lukumäärän ja eksplisiittisen välitysperiaatteen, ja palauttaa navigointikäyttöasteen, viestintäkäyttöasteen, joutokäyttöasteen ja istuntokohtaisen katkon. Periaate on syöte dokumentoidulla oletuksella (navigation-priority; myös communications-priority ja ei-keskeyttävä first-come-first-served), ja raportti kantaa ratkaistun periaatteen, sen täyden määritelmän sekä käyttöasteen ja katkon määritelmät, koska ilman välityssääntöään mainittu käyttöasteluku ei ole toistettavissa. Aikataulu on tarkka intervallipyyhkäisy ikkunarajojen yli, joten ikkuna, joka päättyy täsmälleen siihen, mihin seuraava alkaa, ei koskaan kilpaile, ja navigoinnin, viestinnän ja joutoaukon sekunnit kertyvät toisistaan riippumatta tässä yhdessä pyyhkäisyssä. Ajettavissa skenaariotyyppinä aperture-duty-cycle
Oraakkeli
Sisäinen johdonmukaisuus kolmesta suureesta, jotka lasketaan eri lausekkeilla samassa pyyhkäisyssä ja joiden sitten vaaditaan sulkeutuvan. Navigoinnin aukkosekunnit, viestinnän aukkosekunnit ja joutoaukkosekunnit kertyvät erikseen — joutoaukko lausekkeesta (aukot − |palveltu|) alkeisväliä kohti, ei koskaan jäännöksenä — ja niiden summa varmistetaan arvoa aukot × horizon_s vastaan, minkä väärin sidottu raja, kahdesti laskettu väli tai pudotettu väli rikkoo välittömästi; istuntokohtaisten palveluaikojen vaaditaan erikseen summautuvan takaisin kahteen palvelukokonaissummaan. Aikataulutuksen rakenteelliset ominaisuudet mitataan eikä oleteta: palveltu aika varmistetaan ei-vähenevänä aukkojen lukumäärässä 200 pseudosatunnaisen suunnitelman yli kaikille kolmelle periaatteelle (ei ilmeistä ei-keskeyttävälle periaatteelle, jossa ylimääräinen aukko muuttaa, kuka pitää mitäkin jokaisella myöhemmällä rajalla), ja rajalaskenta lukitaan koskettavaan/yhden sekunnin päällekkäisyyden pariin, jossa off-by-one muuten piiloutuisi. Ohitusennustinsilta tarkistetaan tulostetta passes::predict_passes vastaan: yhdellä aukolla ja ilman kilpailevaa palvelua navigoinnin aukkosekunnit ovat yhtä suuret kuin ennustimen oma yhteenlaskettu ohituskesto. Ulkoista oraakkelia ei väitetä eikä sellaista ole: kyky korvaa käsilaskennan sen sijaan, että se tarkistettaisiin sitä vastaan, mukana toimitettu kontaktisuunnitelma on havainnollistava eikä lennetty, eikä mikään operatiivinen aikatauluttaja julkaise suunnitelma-plus-vastaus-paria välitysperiaate ilmoitettuna — määrittelemättömällä periaatteella laskettu käyttöaste ei ole vertailukelpoinen ilmoitetulla periaatteella lasketun kanssa, ja periaatteesta riippuvuus mitataan (navigointikäyttöasteet 100/150 vs. 50/150 identtisellä suunnitelmalla). Kääntö- ja vaihtoaika, datavolyymi, puskurin tila, energia ja linkin sulkeutuminen jätetään pois raportin otsakkeessa sen sijaan että ne mallinnettaisiin hiljaa
Testit
aperture_duty::tests (ikkuna, joka päättyy täsmälleen kun seuraava alkaa, ei kilpaile, ja sen siirtäminen sekunnin aikaisemmaksi maksaa täsmälleen sekunnin — off-by-one-suoja; päällekkäiset ikkunat apertuurimäärän yli…
Kuun-natiivi häirintä-signaalisuhde, efektiivinen C/N₀ ja lukituksen menetys selenografiselle pintakäyttäjälle Kuun pinnalla (tai korotetulla) olevan häirintälaitteen alla, havainnollistavan, julkisiin lähteisiin perustuvan Moonlight/LCNS-luokan satelliittitähdistön yli. Koostaa avoimen häirintäketjun (j_over_s_db, effective_cn0_dbhz, rx_antenna_gain_db, lock_status, q_factor, nominal_cn0_dbhz, free_space_path_loss_db) avoimen Kuun taivasgeometrian kanssa (lunar_service::LunarConstellation + topocentric, lunar::selenographic_to_mcmf); geometriaa tai radiometriaa ei johdeta uudelleen. Toisin kuin Maan skenaariotyypissä jamming signaalihaara ei ole kiinteä vastaanotettu teho: kunkin satelliitin isotrooppinen vastaanotettu teho on sen oma linkkibudjetti-EIRP − FSPL(vinoetäisyys), joten J/S vaihtelee satelliitista toiseen Kuun etäisyyden ja korkeuskulman mukaan. Emittoi YHDEN RIVIN JOKAISTA NÄKYVÄÄ (epookki, satelliitti) -LINKKIÄ kohti JSONina ja *.table.csv-artefaktina, ja molemmat vastaanotetut tehot, joiden erotus J/S on, tulostetaan sen rinnalle; yhteenvetolaatumittarit ovat taulukon vieressä, eivät sen tilalla. Ajettavissa skenaariotyyppinä lunar-jamming
Oraakkeli
Koostamisen ristiintarkistus riippumatonta repon sisäistä koodipolkua vastaan: jokainen linkkikohtainen J/S johdetaan uudelleen kahden linkkibudjetin erotuksena, jotka on laskettu funktiolla linkbudget::received_signal_power_dbw, jonka vapaan tilan häviö on yksittäinen lauseke 20·log10(4πRf/c) eikä kolmen termin summa, jota jamming::free_space_path_loss_db käyttää — nämä täsmäävät toleranssilla < 1e-9 dB jokaisella rivillä (mitattu pahin tapaus 7.11e-14 dB, eli liukuluvun pyöristys). Taustalla oleva häiriöketju, jonka tämä koostaa, on erikseen ulkoisesti ankkuroitu tiedostossa tests/gnss_denied_jamming_resilience_reference.rs (riippumaton numpy/scipy-uudelleenjohto J/S:lle ja efektiiviselle C/N₀:lle, kiinnitetty lähteeseen Kaplan & Hegarty §9,4, sekä JammerTest 2024 mitattu C/N₀, Zenodo 10.5281/zenodo.15910563); Kuun geometria, jonka se koostaa, on lunar_service/lunar-geometria omine oraakkeleineen. Täällä tarkistetut suljetun muodon identiteetit: puolitettu häirintälaitteen etäisyys lisää täsmälleen 20·log10(2) dB jokaiselle riville; J/S on täsmälleen invariantti käyttäjäantennin boresight-vahvistukselle, kun taas C/N₀ liikkuu täsmälleen sen vahvistuksen verran; korkeuskulmamaski ei muuta yhtään säilyvää riviä bitti bitiltä. Rivi itse pysyy tasolla ReferenceImpl/mallinnettu: mitattua Kuun häirintäkampanjaa ei ole, jota vasten validoida, ja tähtistö on havainnollistava julkisiin lähteisiin perustuva Moonlight/LCNS-luokan geometria, ei lennetty efemeridi
MallinnettuKuun kieltokontuuri epävarmuuskaistalla mitatusta C/N₀-hajonnastalunar_jamming (denial_js_db,range_for_free_space_path_loss_m,Cn0Distribution,DenialContourPoint,ContourBand,DenialContour; inverting jamming::effective_cn0_dbhz,jamming::j_over_s_db and jamming::free_space_path_loss_db)
Ominaisuus
Raportti lunar-jamming ei enää perusta kieltokontuuriaan yhteen skalaariin. Se emittoi koko mitatun toivotun signaalin C/N₀-jakauman satelliittikohtaisen taulukon yli — n, min, p05, p25, mediaani, p75, p95, max, keskiarvo, otoshajonta ja otoksen oma epäsymmetria (p95 − mediaani) − (mediaani − p05) — rivikohtaisten rivien rinnalla, jotka ovat ennallaan. Kontuuri raportoidaan sitten kussakin näistä järjestystunnusluvuista MOLEMPIEN moottorin tunnistamien kieltokriteerien mukaan, ei koskaan toisen sijaan: vakiintunut tehosuhdekriteeri (J/S = 30 dB, sama kynnys, jota attack_surface ja tracking_loop käyttävät ja jonka varassa on julkaistun Kuun linkkihäirintätaulukon sarake denial), ja lukituksen menetyksen kriteeri (efektiivinen C/N₀ putoaa tasolle tracking_threshold_dbhz), jolla tämän raportin oma links[].status-sarake pisteytetään. Kukin kontuuripiste annetaan kieltotason kummallakin akselilla — vaadittu häirintälaitteen EIRP skenaarion etäisyydellä ja kieltoetäisyys skenaarion EIRP:llä — joten kaista on väli samoilla akseleilla, joilla kontuurikuvaaja piirretään. Kaistan reunat OVAT contour(p05) ja contour(p95): sama suljetun muodon kuvaus sovellettuna otoksen omiin kvantiileihin, ei otokseen sovitettu sigma eikä mediaani ± k·stdev, ja raportti sanoo niin merkkijonossa band_definition lukujen vieressä. stdev emittoidaan jatkuvuuden vuoksi eikä mikään käytä sitä. Kvantiili, jonka C/N₀ on jo seurantakynnyksen tasolla tai alle, ei ole äärellistä kieltävää J/S:ää; nämä sarakkeet emittoidaan arvolla null ja lasketulla syyllä, ei äärettömänä eikä rajattuna säteenä
Oraakkeli
Sisäinen johdonmukaisuus moottorin omia eteenpäin-funktioita vasten, mikä on kaikki, mitä tämä kyky voi rehellisesti väittää. Jokainen kontuuripiste on suljetun muodon inversio, ja jokainen inversio tarkistetaan työntämällä sen vastaus takaisin siihen ETEENPÄIN-funktioon, jolla raportin omat rivit pisteytettiin: J/S-sarake funktion jamming::effective_cn0_dbhz kautta (jonka on palautettava tracking_threshold_dbhz toleranssilla < 1e-9 dB-Hz), etäisyyssarake funktioiden jamming::free_space_path_loss_db ja jamming::j_over_s_db kautta (sama J/S toleranssilla < 1e-9 dB), EIRP-sarake funktion jamming::j_over_s_db kautta skenaarion omalla etäisyydellä. Kontuurin tarkistetaan lisäksi olevan kieltojoukon RAJA eikä sen sisällä oleva piste — lock_status menettää lukituksen tiukalla epäyhtälöllä, joten tuomion mitataan kääntyvän tilasta DEGRADED tilaan LOST, kun J/S vaihtelee 1e-4 dB kontuurin molemmin puolin; epsilonin verran pielessä oleva kontuuri epäonnistuisi tässä. Vahvin tarkistus on linkkikohtainen eikä kvantiilikohtainen: saman kuvauksen soveltaminen jokaisen rivin omaan C/N₀:hon toistaa raportin status-sarakkeen täsmälleen — 0 erimielisyyttä 38 / 38 rivillä dokumentoidussa toimintapisteessä (kind = lunar-jamming, jokainen syöte oletus paitsi jammer.range_m = 25 000 m), jossa 26 riviä ovat LOST ja 12 eivät ole. Monotonisuus mitataan eikä oleteta: 20 001 näytettä välillä [tracking_threshold + 1e-3, 80] dB-Hz, 0 rikkomusta tiukasti laskevalle etäisyydelle ja tiukasti kasvavalle vaaditulle teholle, joten kaistan kvantiilijärjestys osoitetaan eikä väitetä. ExternalDataset on evätty ja sen mukana validoitu-tila: mitattua Kuun häirintäkampanjaa ei ole, jota vasten kieltosädettä voisi verrata, tähtistö on havainnollistava julkisiin lähteisiin perustuva Moonlight/LCNS-luokan geometria eikä lennetty efemeridi, ja kontuurin syötteet (EIRP, häirintälaitteen teho, antennivahvistukset, kohinalämpötila) ovat edustavia suuruuksia. ReferenceImpl harkittiin ja evättiin myös — käänteis- ja eteenpäin-lauseke ovat SAMAA algebraa luettuna kahteen suuntaan, joten edestakainen kierto tavoittaa kirjoitus- ja etumerkkivirheet mutta ei ole riippumaton toteutus; sen kutsuminen ristiintarkistukseksi olisi lainattua riippumattomuutta koskeva veto, jonka estämiseksi matriisin invariantit ovat olemassa. Mitä kaista tuo, mitataan ja siteerataan eikä väitetä: kyseisessä toimintapisteessä yksittäisen skalaarin kontuuri on 27,402916 km ja asettaa etäisyyden 25 km kielletylle puolelle kaikille 38 riville, kun taas kaista 21,256108 .. 29,921360 km sisältää toimintapisteen ja raportoi siksi jaon, jonka taulukko todella näyttää. Kahden kriteerin mitataan myös olevan eri mieltä — tehosuhdekaista (38,186527 .. 53,691675 km) ei sisällä lainkaan arvoa 25 km — minkä vuoksi molemmat tulostetaan
Raportti hybrid-optical-rf kertoo, mitä ristimodaalinen khii-toinen-monitori todella voi HAVAITA, ei vain että se läpäisee virheettömän tapauksen: pienin havaittava bias monitoroitua akselia kohti (itä, pohjoinen, ylös, kello) skenaarion ilmoitetuilla väärän hälytyksen ja havaitsematta jäämisen todennäköisyyksillä, havaitsemistehokäyrä sen kummallakin puolella, kohinaton biaskerroin, jolla toteutunut tunnusluku ensimmäisen kerran ylittää kynnyksen, sekä havaitsemisaika biasrampille ilmoitetulla nopeudella. Viat myös injektoidaan todellisen monitorin läpi ja sen palauttama tunnusluku raportoidaan analyyttisen ennusteen rinnalla
Oraakkeli
Kaksi sisäistä oraakkelia, ei ulkoista aineistoa. (1) Suljetun muodon edestakainen kierto: pienin havaittava bias tuotetaan kääntämällä ei-keskeisen khii-toisen häntä epäkeskeisyysparametrille (raim::pbias) ja varmistetaan syöttämällä saatu epäkeskeisyysparametri takaisin funktion raim::noncentral_chi2_cdf läpi monitorin omalla kynnyksellä, jonka on palautettava P_md. (2) Injektio vs. analyysi: bias kirjoitetaan yhden akselin RF-estimaattiin ja cross_raim::run_cross_raim ajetaan uudelleen, joten analyyttiseen epäkeskeisyysparametriin verrattu tunnusluku on se, jonka monitori laski, ei uudelleenjohto. Siemenluvulla ajettu Monte Carlo itse tunnusluvusta kuljetetaan testeissä kolmantena tarkistuksena; se on tarkoituksella EI raportissa, koska otosestimaatti olisi hitaampi eikä toistettavissa bitti bitiltä. ExternalDataset evätty: suure on TÄMÄN monitorin havaitsemisteho TÄMÄN skenaarion sigma-allokaatiolla, ja sigma-suuruudet, joilla MDB skaalataan, ovat mallinnettuja edustavia syötteitä, eivät mittauksia. ReferenceImpl harkittiin ja evättiin myös — Monte Carlo ottaa näytteitä samasta tunnusluvusta, jota analyysi kuvaa, joten se tavoittaa kirjoitus- ja kerroinvirheet mutta ei ole riippumaton monitorin toteutus. 0,30 kierros 2 (ennakkorekisteröity 0135a9e4), estynyt (pysyy MODELLED): SciPy 1.18.1 chi2/ncx2/brentq toistavat raportin kynnyksen (poikkeama enintään 5.4e-12), akselikohtaisen MDB:n, tehokäyrän, ylitysmonikerran ja ramppi-havaitsemisajan (poikkeama enintään 5.3e-10) viidellä konfiguraatiolla; injektoiduilla vikatunnusluvuilla ei ole riippumatonta oraakkelia ja sigma-suuruudet ovat mallinnettuja syötteitä, joten rajaus odottaa omistajan päätöstä
Testit
hybrid_integrity::tests (havaitsemisvoimakäyrä kulkee väärän hälytyksen nopeudesta nollavirheellä arvoon 1 − P_md pienimmällä havaittavalla harhalla; pienin havaittava harha syötettynä takaisin funktion noncentral_chi2_cdf läpi…
MallinnettuKovarianssin uudelleenkasvu luovutuksen jälkeen hälytysrajaa vastenhybrid_integrity
Ominaisuus
Raportti hybrid-optical-rf paljastaa suodattimen prosessikohinamallin ja kertoo, kuinka kauan luovutuksen jälkeinen ratkaisu pysyy hälytysrajan sisällä: kummallekin luovutussuunnalle se ottaa luovutuksen jättämän akselikohtaisen kovarianssin, etenee sillä eteenpäin ilmoitetulla satunnaiskulun prosessikohinalla ja raportoi hetken, jolloin kattavuuskertoimella skaalattu 1σ saavuttaa vaaka-, pysty- ja ajoitushälytysrajan, minkä raja ensin sitoo, varianssin kaksinkertaistumisen aikavakion sekä otannalla muodostetun vapaan etenemisen profiilin, joka haarukoi ylityskohdan. Prosessikohinan PSD:t, kattavuuskerroin ja hälytysrajat ovat kaikki syötteitä dokumentoiduin oletuksin
Oraakkeli
Ei ulkoista oraakkelia. Ylitys on satunnaiskulun varianssin kasvun suljetun muodon ratkaisu, ja testit laskevat sen uudelleen riippumattomasti raportin itse julkaisemista arvoista eikä lähettäjän sisäisistä arvoista. Lähtökovarianssi on lukittu bitti bitiltä jäljelle, jonka olemassa oleva luovutuslohko jo raportoi, joten vapaa eteneminen ei voi edetä kovarianssilla, jota kukaan muu ei nähnyt. Prosessikohinan PSD:t ovat MODELLED edustavia syötteitä, ja ylitysajat skaalautuvat suoraan niiden mukana, minkä skaalaustesti toteaa mitattuna ominaisuutena eikä väitteenä. ExternalDataset on tarkoituksella hylätty: vapaan etenemisen aika on suora funktio kahdesta mallinnetusta PSD:stä ja hälytysrajoista, jotka ovat itsekin edustavia, eikä mitattua kuun optisen ja RF-luovutuksen vapaata etenemistä ole vertailtavaksi. Ulkoinen oraakkeli vaatisi tässä julkaistun luovutuksen jälkeisen kovarianssin kasvun tai holdover-tarkkuuden käyrän vertailukelpoiselle vastaanottimelle, jonka prosessikohinamalli on ilmoitettu, tarkistettuna toleranssiin
Testit
hybrid_integrity::tests (rannikointi alkaa täsmälleen kovarianssin jäljestä, jonka luovutuslohko raportoi, molempiin suuntiin, joten toistettu diagonaali ei voi ajautua raportoidusta luovutuksesta; raportoitu ylitysaika…
MallinnettuKeilan suunnan ulkopuolinen antennikuvio kuun geometrian viennissälunar_service,antenna
Ominaisuus
Satelliittikohtainen geometrian vienti sisältää kullekin (epookki, satelliitti) -parille keilan suunnan poikkeaman SATELLIITILLA ja lähetysvahvistuksen kohti paikkaa todellisesta tasaisesti valaistusta ympyräaukon (Airy) kuviosta ja raportoi keilan sisällä olevien satelliittien lukumäärän tällä kuviolla SYMMETRISEN vahvistus–keilanleveys-approksimaation (θ_3dB[deg] = √(31000/G_lin)) mukaisen lukumäärän VIERESSÄ; erotus annetaan eksplisiittisenä korjauksena linkeissä, satelliiteissa epookkia kohti ja pahimpana yksittäisenä epookkina. Approksimaation molemmat implisiittiset aukkohyötysuhteet annetaan (0,641 verrattuna sääntöön 70·λ/D astetta, jolla se esitetään, 0,920 verrattuna tasaiseen ympyräaukkoon), jotta sen hiljaisesti olettama hyötysuhde on ilmoitettu eikä pääteltävä. Oletuksena pois: lohko näkyy vain, kun sekä vientipaikka että aukko on annettu
Oraakkeli
Sekoitettu, ja erotettu eikä yhdistetty. Alla oleva KUVIO on validoitu ulkoisesti ja sillä on oma rivinsä (scipy.special.j1-vertailuaineisto tarkkuudella < 0,05 dB tiedostossa tests/validate_p1_orbital_footprint.rs, lisäksi tässä julkaistu Airyn puolitehon abskissa x = 1,61634 paikannettuna puolitusmenetelmällä eikä oletettuna). GEOMETRIA on tarkistettu suljetun muodon kolmiotrigonometriaa vasten, joka on kirjoitettu eri lausekkeena kuin testattava pistetulo. Todellisen keilan RAJAUTUMINEN approksimatiiviseen kartioon on johdettua algebraa (28.019/√η vs 29,479 astetta per λ/D), joten korjaus voi olla vain ei-positiivinen, kun η ≤ 0,9035. Mutta keilan sisällä olevien satelliittien LUKUMÄÄRILLÄ itsellään ei ole ulkoista oraakkelia: mikään julkaistu taulukko ei kerro, kuinka monta Moonlight/LCNS-luokan kuoren satelliittia pitää etelänapaisen paikan tietyn lautasen puolitehokeilan sisällä, ja tähdistö on havainnollistava julkisiin lähteisiin perustuva approksimaatio, ei lennetty efemeridi. Mitattu ero dokumentoidussa työpisteessä, 0 linkkiä keilassa todellisella kuviolla verrattuna lukuun 28 approksimaatiolla, −2,33 satelliittia epookkia kohti, pahin epookki 3, 76 arvioidulla linkillä, on siksi approksimaatiota koskeva MODELLED havainto, lukittu regressiolitteraaliksi (lähin rivi on 0,069° kummastakin keilan reunasta, neljä suuruusluokkaa mitä tahansa viimeisen numeron eroa suurempi), ei ulkoisesti validoitu kattavuusluku. Rivin merkitseminen ExternalDataset-tasolle kuvion oman ulkoisen ankkurin perusteella olisi lainattua validointia, juuri sitä, minkä estämiseksi matriisin invariantit ovat olemassa. 0,30 kierros 2 (ennakkorekisteröity d9755d28), estetty (pysyy MODELLED): SPICE-geometria ja SciPyn Bessel-funktiot toistavat keilan suunnan poikkeaman (pahin 3.0e-5 astetta), Airy-vahvistuksen ja keilan sisäpuolisuuslipun 6 336 rivillä lennettyjen kiertäjien tiloja ja dokumentoitua työpistettä; mutta lennetyllä geometrialla liput jakautuvat satelliitin identiteetin mukaan (lähin linkki on 1,66 astetta keilan reunasta), 5 asteen näkyvyys tarkistetaan lippuna eikä numeerisena korkeuskulmana, symmetrinen approksimaatiolippu soveltaa nyrkkisääntöä 31000/G validoituun kulmaan validoimatta sääntöä, ja implisiittisillä hyötysuhteilla ei ole oraakkelia; rajauksen ratkaisu odottaa omistajan päätöstä
Testit
antenna::tests ja lunar_service::tests (kuviosta puolitusmenetelmällä paikannettu puolitehoylitys vastaa julkaistua Airy x = 1,61634 ja antaa täsmällisen leveyden 1,02899·λ/D, kirjaten, että tavanomainen 1,02…
MallinnettuSeurantasilmukan lukituksen menetys ja harhautuksen sisäänveto häiriön allatracking_loop (composing sdr,jamming)
Ominaisuus
Lukituksen menetys lasketaan silmukkadynamiikasta tehosuhteen sijaan: kantoaallon (Costas) ja koodin (epäkoherentti early/late) 1σ:n terminen värinä C/N₀:n funktiona neliöintihäviöllä, ilmoitettuja sääntöjä 3σ_PLL + θ_e ≤ 45° ja 3σ_DLL + ramppiviive ≤ d/2 sirua vasten; pudotuksen ja uudelleenlukituksen C/N₀-kynnykset sitovaa silmukkaa nimeten ja hystereesi JOHDETTU leveämmästä sisäänvetokaistanleveydestä eikä väitettynä; ilmoitettu lukituksen menetyksen aika kahden kynnyksen lukitusilmaisimesta vahvistusviipeillä, raportoituna erikseen fysikaalisesta vaiheen karkaamisajasta (Viterbin keskimääräinen aika syklihyppyjen välillä, log₁₀ s -yksikössä, koska se kattaa satoja kymmenpotensseja); suurin koodin liukuma ja kantoaallon Doppler-muutosnopeus, joita uhrin silmukat pystyvät seuraamaan; sekä silmukkadynamiikan implikoima ESTOSÄDE raportoituna olemassa olevan tehosuhdesäteen rinnalla niiden etumerkillisellä erotuksella omana nimettynä kenttänään. Ajettavissa skenaariotyyppinä tracking-loop
Oraakkeli
Moottorin oma sdr-korrelaattori (sdr::correlate / synth_if / CaCode) edennyt siemenluvulla generoidulla synteettisellä IF:llä kalibroidulla C/N₀:lla: erillinen koodipolku, joka päätyy samoihin lukuihin näytteistetyn IQ:n numeerisella korrelaatiolla eikä algebrallisella värinälausekkeella, joten se on eri reitti eikä uudelleenmuotoilu, sekä standardit taulukoidut modifioidun Besselin I₀-arvot syklihyppytermille. Silmukkateoria Kaplan & Hegarty -teoksen luvun 8 ja syklihyppyajan osalta Viterbin ja Gardnerin mukaan. Rivi pysyy tasolla ReferenceImpl/MODELLED: ristiintarkistus on samassa koodikannassa, ja bessel_i0-tarkistus validoi yhden erikoisfunktion eikä seurantamallia, joten rivin ylentäminen sillä perusteella olisi itsepalvelevaa merkintää. ExternalDataset vaatisi tallennetun raaka-IF-aineiston, jossa on todellinen C/N₀ ja annotoitu lukituksen menetyksen hetki (TEXBAT/OAKBAT-luokka); mitään sellaista ei ole tässä puussa, ja IQ:n kanssakaan nämä aineistot eivät julkaise epookkikohtaista silmukkatilan totuutta, joten ilmoitettu lukituksen menetyksen aika voitaisiin validoida vain jonkin toisen vastaanottimen lukitusilmaisinta vasten, mikä on mallinnettu valinta eikä oraakkeli. Silmukkakaistanleveydet, integrointiaika, korrelaattoriväli, sisäänvetosuhde, viipeet, häirintälähteen teho ja antennivahvistukset ovat edustavia kaistaan liittyviä lukuja, eivät tietolehteä. 0,30 kierros 2, GNSS-SDR 0.0.19 (GPL-3.0, ajettu ohjelmana) riippumattomasti generoidulla IF:llä (ennakkorekisteröity 6ef7698c, mittausmenetelmän muutokset julkistettu), havainto (pysyy MODELLED): suljetun silmukan PLL- ja DLL-värinä täsmäävät 8 %:n sisällä tasoilla 35–45 dB-Hz, 10 Hz/s:n dynaaminen rasitus 1 %:n sisällä ja ensimmäisen kertaluvun koodin ramppiviive 2 %:n sisällä; tasolla 30 dB-Hz PLL-värinä on 21 % suurempi ja DLL-värinä 32 % pienempi, mitatut 15 asteen säännön kynnykset ovat 1,5 dB moottorin yläpuolella, ja toisen kertaluvun silmukka hyppää 0,5–2 kymmenpotenssia useammin kuin ensimmäisen kertaluvun hyppyaikaraja. 0,30-korjaus: Costas-hyppyaika käyttää nyt silmukan SNR:ää rho/4 (puolisyklin hypyt); oletusarvoinen jitter_table log10_mean_time_to_cycle_slip_s laskee arvosta 11,58 arvoon 2,10 kynnyksellä 25,47 dB-Hz
Testit
tracking_loop::tests (avoimen silmukan Costas-erottimen häiriö vs sdr::correlate eteenpäin askellettuna siemenluvulla luodulla synteettisellä IF:llä, 3 yhdistettyä kohinatoteutumaa × 900 epookkia, yhtenevä tarkkuudella 0,63 % alueella 35-45 dB-Hz, ja…
Viivepartiaalit kertyvät kantaviiva × epookki -aikataulusta Fisherin informaatiomatriisiksi, joka käännetään aseman koordinaattikovarianssiksi ja koordinaattikohtaiseksi aseman sigmaksi ja korvaa oletetun isotrooppisen tasajaon linkin skalaariviiveen toistotarkkuudesta. Tila sisältää Maa-kiinteät (ITRS) asemakoordinaatit, joten Jacobin matriisi on inertiaalinen partiaali kierrettynä kunkin epookin GCRS→ITRS-matriisilla, ja Maan pyöriminen tekee koordinaateista havaittavia: raportti MITTAA Maa-kiinteän näkölinjan pyyhkäisyn ja majakan deklinaation eikä oleta niitä. Aste, datumin vajaus, ehtoluku, informaatiospektri ja vapaan verkon nolla-avaruus annetaan jokaisella ajolla, ja asteen puutteessa otsikkosigma julkaistaan arvona NULL tilan kera sen sijaan, että se luettaisiin lähes singulaarisesta käänteismatriisista. Tasajakoarvo c·σ_τ·√(g/N) SAMALLE aikataululle tulostetaan lasketun arvon viereen niiden suhteella sekä isotrooppisella jälkirajalla √(p/trace(M)), jonka AM-HM tekee kovaksi alarajaksi. Ajettavissa skenaariotyyppinä lunar-vlbi-fim
Oraakkeli
Riippumaton reitti repositorion sisällä. Jokainen Jacobin matriisin rivi johdetaan uudelleen keskeisdifferenssillä funktiosta lunar_vlbi::vlbi_delay_s, joka evaluoidaan tilan omista Maa-kiinteistä ja Kuu-kiinteistä koordinaateista kiertäen ne eteenpäin koordinaatistoketjun läpi: polku, joka ei laske derivaattaa eikä jaa lauseketta analyyttisten partiaalien kanssa, ja kummankin reitin rakentamat informaatiomatriisit täsmäävät tarkkuudella < 1e-6 suurimmasta diagonaalialkiosta. Tämän koostama lineaarialgebraydin (information_matrix, crlb, sym_eig) on erikseen ulkoisesti ankkuroitu numpy.linalg.eigh / numpy.linalg.inv -funktioihin tiedostossa tests/fim_observability_reference.rs, ja viivehavainto kantaa lunar_vlbi:n oman delta-DOR-kaukokenttäoraakkelin; rivi ei lainaa kumpaakaan tilaa. Suljetun muodon identiteetit tarkistettu tässä ja merkitty sellaisiksi: σ²- ja 1/N-skaalaus sekä √(p/trace(M)) AM-HM-alarajana, jota laskettu sigma ei voi alittaa ja joka yhtyy tasajakoarvoon vain isotrooppisella geometrialla, minkä vuoksi mitattu suhde on täsmälleen se anisotropia, jonka oletus hylkäsi. 0,30 ulkoinen vertailu (kirjasto: NAIF SPICE CSPICE N0067 spiceypy 8.2.0 kautta, MIT; DE440, ITRF93 earth_latest_high_prec, MOON_PA), ennakkorekisteröity (50863551) yhdessä moottoripuolen mallivirheherkkyysajon kanssa: jokainen Jacobin matriisin rivi rakennetaan uudelleen SPICE-geometrian konvergoituneiden newtonilaisten valoaikaerojen keskeisdifferensseillä (valoaikayhtälö on lyhyt skripti SPICE-sijaintien päällä; SPICE kantaa geometrian), aikataulu rakennettuna uudelleen SPICE-korkeuskulmista. Aikataulu, aste, vajaus, informaatiospektri, ehtoluku, aseman sigmat, otsikkoarvo, jälkiraja, tasajakosuhteet, vapaan verkon nolla-avaruus, näkölinjan pyyhkäisy ja majakan deklinaatio täsmäävät ennakkorekisteröidyn 1 %:n / 0,1 asteen sisällä, mikä on moottorin tunnetun analyyttisen Kuu-virheen (3.2e-3 sigmoissa, mitattu ennen ajoa) yläpuolella. NumPy 2.3.5 laskee lineaarialgebran uudelleen sitoutetulla moottorin Jacobin matriisilla tarkkuudella 2e-13 (P2). Validoitu Cramér–Rao-rajana ilmoitetulle supistetulle parametrijoukolle ilmoitetuilla havainnollistavilla syötteillä: Kuun keskipisteen efemeridi, kellot, troposfääri ja Maan orientaatioparametrit pidetään kiinteinä molemmissa haaroissa, joten se ei ole todellisen kampanjan tarkkuus
Testit
lunar_vlbi_fim::tests (24 kirjastotestiä: analyyttinen Jacobin matriisi vs funktion lunar_vlbi::vlbi_delay_s keskeinen äärellinen erotus, otettuna reittiä, joka kiertää tilan omat koordinaatit eteenpäin eikä koskaan kosketa…
Kolmas datumvaihtoehto, all-stations-fixed, joka pitää kaikki Maa-asemat kiinteinä ja estimoi vain MAJAKAN Kuu-kiinteät koordinaatit: juuri tämä on konfiguraatio, jolle kuun pintapisteen epävarmuus todellisuudessa ilmoitetaan, koska Maa-asemien koordinaatit ovat viivemallin syöte eivätkä sen tuntematon. Se on olemassa, koska asematason kovarianssi ja pintapistekovarianssi ovat ERI SUUREITA, joita erottaa vipuvarsi ρ/B, eikä mikään aiemmin estänyt ilmoittamasta toista toista vasten. Lähetetty lohko beacon_link sisältää arvon ρ, pisimmän kantaviivan, vipuvarren, tasajakolinkin pintapistemuodon c·σ_τ·(ρ/B)·√(g/N), lasketun koordinaattikohtaisen majakan sigman ja niiden suhteen: suhde on null eikä harhaanjohtava aina, kun majakkaa ei estimoida tai matriisi on asteeltaan vajaa. B otetaan PISIMPÄNÄ läsnä olevana kantaviivana, edullisimpana, joten suhde voi vain aliarvioida. Ajettavissa muodossa datum = "all-stations-fixed" asetuksella estimate_beacon = true, joka evätään viestillä, joka nimeää puuttuvan syötteen, kun majakkaa ei estimoida
Oraakkeli
Suljetun muodon identiteetit, joille ei väitetä eikä ole saatavilla ulkoista oraakkelia. Vipuvarsi on tarkistettu suhdetta ρ/B vasten ja kaksi tasajakomuotoa toisiaan vasten tarkkuudella 1e-15: algebrallisia identiteettejä, jotka siis havaitsevat kytkentävirheen eivätkä muuta, ja ne on merkitty sellaisiksi. Olennainen tulos on MEASURED eikä väitetty: kiinteän kantaviivan viive rajoittaa majakan SUUNTAA, joten näkölinjan komponentti pääsee informaatiomatriisiin vain lähikentän etäisyystermin kautta, ja testi lukee tuloksena olevan anisotropian lähetetystä spektristä eikä johda sitä. AM-HM tekee √(p/trace(M)):stä kovan alarajan, joten isotrooppinen tasajakolinkki voi vain aina ALIARVIOIDA, ja laskettu / tasajako -suhde on täsmälleen se anisotropia, jonka se hylkäsi. MEASURED Goldstone-tyyppisen ja Canberra-tyyppisen parin osalta, jonka jänne on 10726,748 km: 112 otospäivän aikana 36 ei salli lainkaan molemminpuolisesti näkyvää epookkia 10°:n maskilla, suurin koskaan molemminpuolisesti näkyvä määrä on 17 49 otoksen aikataulusta, ja 73 kelvollisella päivällä kolmen komponentin suhde vaihtelee arvosta 113,9× neljään suuruusluokkaan isommaksi, mediaani 1513×, kun taas rajaus kahteen poikittaissuuntaan, joita näkölinja ei näännytä, antaa 3,94×–25,8×, mediaani 7,8×. MITÄ TÄMÄ RIVI EI VÄITÄ: yhtäkään näistä luvuista todellisen kampanjan ominaisuutena. Se osoittaa, että pintapistesuure LASKETAAN nyt eikä oleteta, ja ettei sitä voi hiljaa vaihtaa asematason suureen. Pysyy tasolla ReferenceImpl/MODELLED: julkaistua kuun VLBI-pintapistekovarianssia ei ole olemassa vertailuun, asemat ja majakan paikka ovat havainnollistavia eivätkä mitattuja, ja efemeridi, kellot, troposfääri ja Maan orientaatioparametrit pidetään KIINTEINÄ, joten tämä on Cramér–Rao-raja supistetulle parametrijoukolle ja itsessään optimistinen. Sama suure ydinpolulla (majakka DE440-Kuulla) on validoitu omalla rivillään ”…, kernel path”; tällä analyyttisellä polulla pienin majakan sigma on 3,9 % alle sen rivin SPICE-oraakkelin, minkä vuoksi tämä rivi pysyy tasolla MODELLED
Testit
lunar_vlbi_fim::tests (7 kirjastotestiä: jokainen datumin kirjoitusasu säilyy edestakaisessa kierrossa parse/as_str ja tuntematon hylätään; kaikkien asemien pitäminen ilman majakkaa hylätään virheellä, joka nimeää estimate_beacon; …
Skenaarion lunar-vlbi-fim kaikki asemat kiinteinä -majakkakovarianssi (kaikki Maa-asemat pidetään, majakan Kuu-kiinteät koordinaatit estimoidaan yksin), majakka sijoitettuna JPL:n DE440-Kuulle, jonka moottorin oma ydinlukija lukee (planetary_kernel_path; lunar_vlbi_fim::epoch_geometry_with, ephem_provider::KernelEphemeris). Vain Kuun keskipiste eroaa analyyttisestä polusta; IAU 2015 -kappaleen pyöriminen, asemat, Maan pyöriminen ja lineaarialgebra ovat samat. Validoidut tulosteet ovat havaintojoukko, 3 x 3 -informaatiospektri, aste ja ehtoluku, kolme Kuu-kiinteää majakan sigmaa ja niiden RMS, vipuvarsi sekä laskettu / tasajako -suhde oletusaikataululla. Ajettavissa skenaariona lunar-vlbi-fim asetuksilla datum = "all-stations-fixed", estimate_beacon = true ja planetary_kernel_path asetettuna
Oraakkeli
Sitova kirjastohaara: NAIF SPICE Toolkit N0067 (spiceypy 8.2.0, MIT) tiedostoilla de440s, earth_latest_high_prec (ITRF93 UT1:llä ja napaliikkeellä) ja DE440:n kuukoordinaatistot, majakka kiinnitettynä koordinaatistoon MOON_ME; jokainen Jacobin matriisin rivi on konvergoituneen newtonilaisen valoaikaeron 3 km:n keskeisdifferenssi (M069-oraakkelin oma valoaikakoodi, tuotuna), ei koskaan Kshanan partiaali; näkyvyys rakennettu uudelleen WGS-84-korkeuskulmista; NumPy 2.3.5 / SciPy 1.18.1 (BSD-3-Clause, LAPACK) eigh ja inv. P2-haara: NumPy moottorin sitoutetulla Jacobin matriisilla. Ennakkorekisteröity (4a51256) ennen aineiston tai oraakkelin olemassaoloa, kynnyksinä 1 % ominaisarvoille, ehtoluvulle, sigmoille, RMS:lle ja suhteelle, 1e-4 vipuvarrelle, täsmällinen havaintojoukko ja aste; P2 1e-9. Julkistettu: analyyttisen ja ydin-Kuun moottoripuolinen vertailu (3,9 % y-sigmassa) ajettiin ennen ennakkorekisteröintiä ydinpolun valitsemiseksi, ja se on ilmoitettu siellä. Tulos: molemmat haarat täsmäävät, pahin 1.7e-3 (majakan y-sigma 0,081211 m vs. 0,081351 m). Mutaatio: majakan partiaalin kappalekierron transponointi epäonnistuu kummassakin haarassa. Molemmat puolet lukevat DE440:n, joten yhtäpitävyys validoi geometrian ja lineaarialgebran DE440:llä, ei DE440:ää. Väitteen ulkopuolella: todellisen kampanjan pintapistetarkkuus (kellot, troposfääri ja Maan orientaatio pidetään kiinteinä; havainnolliset asemat ja majakan paikka) sekä analyyttinen oletuspolku (yllä oleva rivi, joka pysyy tasolla MODELLED: analyyttisellä Kuulla y-sigma on 3,9 % tämän oraakkelin alapuolella)
Kolme termiä, jotka differentiaalikorjaus kerää sen hetken, jona se lasketaan, ja sen hetken, jona sitä käytetään, välillä, kukin aiemmin jätetty mallintamattomaksi varaksi: referenssiaseman mittausvirhe (korreloitunut satelliittien kesken, kantaviivasta riippumaton, ~1:1 paikan siirto ja todistetusti DOP:n vahvistamaton), korjauksen vanheneminen (jäädytetty ratavirhevektori projisoituna uudelleen näkölinjalle, jolle moottorin oma propagaattori asettaa satelliitin yhden viiveen myöhemmin, sekä c·σ_y(τ)·τ-kellon ajautuma kalibroidusta potenssilaista) ja tasainen linkin kvantisointi täsmällisellä ±(orbit_err + clock_err) -täyden asteikon alueella varianssilla step²/12. Raportoidaan sekä etäisyys- että paikka-alueella olemassa olevan jäännöksen ja suojaustason rinnalla, ei koskaan niiden tilalla, viivekäyrä yksittäisen luvun vieressä
Oraakkeli
Suljetun muodon identiteetit ja itseyhdenmukaisuus: tasaisen kvantisoijan step²/12-varianssi, täsmällinen (GᵀG)⁻¹GᵀRG(GᵀG)⁻¹-kovarianssin eteneminen supistuen arvoon σ·PDOP yhtäsuurilla σ:illa, mittausvirhetermin 1:1-siirto seurauksena yhtälöstä û_user ≈ û_ref sekä pois kytketyn kvadratuurin sulkeutuminen. PDOP-ristiintarkistus funktiota orbit::dop vasten jakaa [−û, 1]-normaalimatriisin, joten se on johdonmukaisuustarkistus ja merkitty sellaiseksi eikä riippumaton oraakkeli. ExternalDataset-tasoa ei ole saatavilla eikä väitetä: millään kuun pinta-asemalla ei ole julkaistua mitattua tarkkuutta, millään kuun differentiaalikorjauslinkillä ei ole julkaistua viivettä tai viestimuotoa, ja kvantisointitulos on suljettu muoto eikä mittaus. RTKLIB, joka on jo ulkoinen koodioraakkeli yksittäisdifferenssi- ja painotetun pienimmän neliösumman ytimelle, voitaisiin ajaa tahallaan virheellisesti mitatulla tukiasemalla 1:1-mittausvirhesiirron vahvistamiseksi, mutta se on riippumatonta koodia saman ensimmäisen kertaluvun näkölinja-algebran päällä. SUURUUDET OVAT MODELLED: mittausvirheen oletus on tämän kirjaston oma kuun koordinaatiston realisaatiovaraus eikä mitattu asema, viive ja bittimäärä ovat ILLUSTRATIVE syötteitä, eikä lähetetyn efemeridivirheen VEKTORIN itsensä kasvua mallinneta lainkaan: tämä on ilmoitettu lähetetyssä vanhenemislakimerkkijonossa, koska se on termi, joka todennäköisimmin dominoi todellista linkkiä
Testit
lunar_dpnt::tests (puhtaasti additiivinen suoja, jonka avainjoukon ero on täsmälleen {correction_link, units} ja jokainen olemassa oleva arvo bitti-identtinen muutosta ennen tallennettuja literaaleja vasten; kartoitusvirhe EI…
MallinnettuKuun referenssiaseman kattavuus- ja tarkkuuskarttalunar_station (over lunar_dpnt,lunar_service)
Ominaisuus
Kuun differentiaalisen PNT-mallin Monte Carlo -pyyhkäisy etelänapaisen käyttäjäruudukon ja vuorokauden epookkien yli (tyyppi lunar-station-coverage): tunnetulla etelänapaisella paikalla olevalle differentiaaliselle referenssiasemalle pisteittäin ja alueen yli: korjatun ja korjaamattoman paikkavirheen persentiilit (3D, vaaka, pysty), saatavuus syineen jokaiselle ei-saatavilla olevalle epookille (user_lt4, station_missing_sat), ennen ajoa ilmoitettua kynnystä vasten mitattu kattavuus, DO-229E-suojaustasot, kattavuussäde atsimuuttisektoreittain sekä korjauslinkin budjetti asemalla ja pahimmassa pisteessä. Ei lausuma minkään todellisen järjestelmän suorituskyvystä; ei yhteydessä mihinkään virastoon eikä sen hyväksymä
Oraakkeli
Laskenta toistettu riippumattomalla numpy-skriptillä vietyjen tapausten päällä (scripts/gen_lunar_station_ref.py, numpy 2.5.4; ennakkorekisteröity tiedostossa tests/fixtures/lunar_station/PREREGISTRATION.md, sitoutettu yksin versiossa 9caedf97 ennen ensimmäistä ajoa): 20 tapauksessa kaikki virhetermit päällä näkyvät joukot ja tila ovat identtiset, raa'at etäisyysvirheet täsmäävät tarkkuudella 1.4e-14 m, paikkavirhevektorit ja -suuruudet tarkkuudella 1.4e-9 m kynnystä 1e-6 m vasten, ja jokaisen pisteen p95 on bitti bitiltä numpy.percentile; aseman korjaukset EIVÄT TÄYTTÄNEET 1e-9 m:n kynnystään (pahin 3.73e-9 m, tapauksia on 20, joista 15), ja niiden mukana korjatut etäisyysvirheet: 60 numeron aritmetiikalla tarkistettuna molemmat puolet ovat kaksoistarkkuuden pyöristyksen sisällä täsmällisestä arvosta, koska mittausvirhetermi on kahden 1e7 m:n etäisyyden erotus, jonka viimeisen sijan yksikkö on 1.86e-9 m; kirjattu, ei viritetty. Tyyppi supistuu täsmälleen tyypiksi lunar-differential-pnt yhdellä pisteellä, yhdellä epookilla ja yhdellä kokeella. Virhemalli, dekorrelaatiomalli ja jokainen kynnys ovat tämän projektin omia tai ILLUSTRATIVE; mikään tässä ei ole lausuma minkään todellisen järjestelmän suhteen
Testit
tests/lunar_station_coverage_reference.rs (one_point_one_epoch_one_trial_reduces_to_lunar_differential_pnt: tarkkuudella 1e-12 m vastaanottimen kohinan kanssa ja ilman; zero_baseline_floor_is_zero_in_every_trial: 0 tarkkuudella 1e-9 m…
Paikkakohtaiset atsimuutista riippuvat horisonttimaskit tyypille lunar-station-coverage (referenssiasema ja jokainen käyttäjäpiste) sekä moonlight-service-volume-ruudukolle ja sen satelliittikohtaiselle vientipaikalle (jokainen vientirivi saa kentän clears_terrain), versiossa 0,36 olevassa skyline-taulukkomuodossa (skyline::Skyline, lineaarinen atsimuutissa kierrolla kohdassa 360 astetta; ilmoitettu profiili ja DEM-horisontti yhdessä paikassa yhdistyvät pisteittäisenä maksimina): ilmoitettu [terrain] station_horizon tai user_horizon lähteellä merkittynä ja/tai horisontti, joka on säteenseurattu etelänapaisen stereografisen DEM:n yli (LRO LOLA -ruudukotettu napaasettelu, luettu kuvaajasta, joka kiinnittää sen koon ja SHA-256:n, tai leveys-/pituuspiiriin perustuva realdata::lola_dem-laatta asetuksella [terrain] dem_tile_path, kaiuttuna SHA-256:lla) Kuun pallon isoympyröitä pitkin täsmällisellä kaarevuudella, ilmoitetusta mastokorkeudesta, ilmoitetulla atsimuuttiaskeleella ja kantamalla. Satelliitti lasketaan paikassa mukaan, kun se ylittää tasaisen mask_deg-maskin ja horisontin atsimuutissaan (lunar_service::topocentric); epookki, jonka horisontti jättää alle neljään satelliittiin pisteessä, jossa tasainen maski antaa neljä, lasketaan ei-saatavuuden syyksi terrain_masked. Mukana toimitettu DEM on julkisen alueen LOLA LDEM_75S_240M -tuotteen rajaus, 5 x 5 -lohkokeskiarvolla uudelleennäytteistetty tarkkuuteen 1200 m (data/lunar-dem/NOTICE.md). Poissa ollessa jokainen paikka pitää tasaisen maskin ja jokainen asiakirja on tavu tavulta identtinen
Oraakkeli
Suljetun muodon pinnat (InternalConsistency): paljaan pallon horisontin kallistuma, tasangolla oleva kraatteri pallolla havaitsijan ollessa sen keskipisteessä ja sen ulkopuolella sekä analyyttinen kartio omaa rasterisointiaan vasten. Todellisella rajauksella riippumaton numpy-sädeheitto (scripts/gen_lunar_terrain_ref.py, numpy 2.5.3; ennakkorekisteröity tiedostossa tests/fixtures/lunar_terrain/PREREGISTRATION.md, sitoutettu yksin versiossa edbb9b02 ennen skriptin olemassaoloa) täsmää viidessä paikassa: paikkakorkeudet tarkkuudella 1.0e-11 m ja kaikki 1800 horisonttikorkeuskulmaa tarkkuudella 5.5e-10 astetta kynnyksiä 1e-6 vasten, katkaistujen säteiden lukumäärät täsmälleen; tämä tarkistaa laskennan, ei maastoa. Julkaistua napahorisontti- tai valaistuslukua ei ole toistettu: mukana toimitettu 1200 m:n rajaus tasoittaa alle kilometrin pinnanmuodot, jotka julkaistut valaistustutkimukset erottavat, joten DEM-horisontit ovat MODELLED näkölinja uudelleennäytteistetyn todellisen DEM:n yli, eivät validoitu horisontti. Asemapaikka ja tähdistö pysyvät ILLUSTRATIVE; mikään tässä ei ole lausuma minkään todellisen järjestelmän suhteen
Testit
lunar_terrain::tests (bare_sphere_horizon_is_the_dip: säteenseuranta toistaa -acos(R / (R + a)) tarkkuudella 1e-3 astetta jokaisessa atsimuutissa; a_cone_on_a_lat_lon_tile_matches_the_analytic_cone: sama kartio näytteistettynä 0,005 asteen…
MallinnettuKuun referenssiaseman monitie-eteneminen ja vastaanottimen laitteistotermitlunar_receiver; lunar_station
Ominaisuus
Tyypin lunar-station-coverage valinnainen [receiver]-osio (LRS-02): korkeuskulmasta riippuva monitie-sigma sigma(el) = a + b exp(-el / el0) käyttäjällä ja asemalla (RTCA DO-229:n ilmaan sijoitetun käytön funktiomuoto, oletuksina a = 0,13 m, b = 0,53 m, el0 = 10 astetta; Kuulla jokainen arvo on ILLUSTRATIVE), valkoinen käyttäjällä ja ensimmäisen kertaluvun Gauss–Markov epookkien yli asemalla (rho = exp(-dt / tau)); early-minus-late-DLL:n terminen koodikohina sigma = L_c sqrt(B_L d / (2 C/N0) (1 + 2 / ((2 - d) T C/N0))); kanavien väliset kanavakohtaiset harhat vakiona kokeen ajan käyttäjällä ja asemalla. Aseman termit vaikuttavat sen korjauksiin, käyttäjän termit raaka- ja korjattuihin mittauksiin, kukin omalla siemenluvulla generoidulla virrallaan. Poissa ollessa jokainen asiakirja on muuttumaton
Oraakkeli
Suljetut muodot ja mallin omien arvontojen tilastot (InternalConsistency): DLL-kaava käsinlaskentaa vasten, DO-229-muoto, kahden vastaanottimen nollakantaviivan erotus, Gauss–Markovin lag-1-korrelaatio. Vertailtavaa kuun monitie-etenemis- tai vastaanotinmittausta ei ole; arvot ovat ILLUSTRATIVE, eikä mikään tässä ole lausuma minkään todellisen vastaanottimen suhteen
Testit
lunar_receiver::tests (multipath_is_the_do229_form; dll_noise_matches_a_hand_computation: 0.825279 m at 45 dB-Hz, 0.5 Hz, d = 1, 20 ms; bad_sections_are_refused); tests/lunar_station_ext.rs…
MallinnettuKuun referenssiaseman efemeridivirheen kasvu korjausviiveen aikanalunar_station (orbit_growth_range_sigma_m)
Ominaisuus
Tyypin lunar-station-coverage valinnainen syöte orbit_err_growth_m_per_s (LRS-03): korjaus, joka sovelletaan latency_s sen laskemisen jälkeen, ohittaa lähetetyn ratavirheen kasvun g latency_s, g isotrooppinen 3D-RMS-nopeudella, arvottuna satelliittia ja koetta kohti omalla siemenluvulla generoidulla virrallaan (alueen 1-sigma-nopeus tau / sqrt(3)), jäädytetyn virheen näkölinjalle uudelleenprojisoinnin lisäksi. Poissa ollessa jokainen asiakirja on muuttumaton. K5-lisäys julkaistujen väitteiden vertailuun, ennakkorekisteröity yksin, ajaa K5:n arvoilla 0,001, 0,01 ja 0,1 m/s (ILLUSTRATIVE)
Oraakkeli
Kasvutermin suljetun muodon sigma ja ensimmäisen kertaluvun etenemistarkistus (InternalConsistency). K5-lisäys (tests/fixtures/lunar_station_published/ADDENDUM-LRS03.md, ennakkorekisteröity yksin versiossa 59d88248): K5 epäonnistuu jokaisella nopeudella, korjattu p95 3D 369,8 m, 2315 m ja 22797 m kynnystä 1,5 m vasten (292,96 m kirjattu ilman kasvua), kuten ennen ajoa ilmoitettiin. Mikään julkinen lähde ei anna kuun kasvunopeutta: ILLUSTRATIVE
Testit
tests/lunar_station_ext.rs (growth_absent_or_zero_is_the_frozen_error_run; the_growth_term_has_the_closed_form_sigma: kasvu päällä miinus kasvu pois -yhteysvirheen otossigman nopeus tau / sqrt(3) 6 %:n sisällä 1600…
MallinnettuKuun vertailuaseman ratkaisutilat: korkeusrajoite, kolme satelliittia, staattisen käyttäjän ikkunalunar_solution; lunar_station (solution_figures)
Ominaisuus
Valinnainen [solution]-osio skenaariolajissa lunar-station-coverage (LRS-06): korkeuden pseudomittausrivi up . dx = e_h, jonka ilmoitettu 1-sigma painotetaan etäisyysrivejä vasten; kolmen satelliitin vähimmäismäärä sallitaan vain sen kanssa; lisäksi painotettu pienimmän neliösumman ratkaisu viimeisten window_epochs epookin yli, jossa on yhteinen staattinen sijainti ja yksi kello epookkia kohden (suodattimen vastaus staattiselle sijainnille ilman prosessikohinaa samalla datalla; epookkien virheitä käsitellään riippumattomina). Jos osiota ei ole, hetkellinen ratkaisu ja jokainen dokumentti pysyvät ennallaan. Lisäys julkaistujen väitteiden vertailuun lähteiden ratkaisutyylillä, ennakkorekisteröity yksinään
Oraakkeli
Hetkellinen pelkistys ja ratkaisijan suljetun muodon tapaukset (InternalConsistency). Lisäys (tests/fixtures/lunar_station_published/ADDENDUM-LRS06.md, ennakkorekisteröity yksinään tunnisteella 001ca100), jossa korkeusrajoitteen arvo on 1 m, satelliitteja on kolme ja ikkuna on 6 epookkia (asetukset ILLUSTRATIVE; lähteet mainitsevat suodattimen, korkeusrajoitteen ja kolme satelliittia mutta eivät niiden asetuksia): K1–K5 eivät läpäise ja K6 läpäisee, 1 / 6 kuten tallennetussa ajossa; tapauksen R300 korjattu p95 3-D -virhe pienenee arvosta 280,6 m arvoon 2,11 m (vaakasuunta 0,90 m, ei pisteytetty), ja kattavuus pysyy arvossa 0. Ikkunan riippumattomuusoletus suosii sitä. Ei väite mistään todellisesta järjestelmästä
Testit
lunar_solution::tests (one_epoch_without_height_is_the_snapshot_solve: vastaa funktiota lunar_dpnt::position_error_vector_from_range_errors tarkkuudella 1e-8 m, löysä korkeusrivi ei muuta mitään, tiukka kiinnittää korkeusvirheen…
MallinnettuKuun vertailuaseman tarkkuus ja kattavuus julkaistuja väitteitä vastaanlunar_station (over lunar_dpnt,lunar_service)
Ominaisuus
Skenaariolaji lunar-station-coverage ajettuna Kuun differentiaaliselle vertailuasemalle julkaistun aineiston julkisilla oletuksilla (neljä navigointisatelliittia 24 h jäädytetyillä elliptisillä radoilla, 10 m, 95 % SISE, 0,30 m koodikohina, 1 s ja 600 s korjausviive, alle desimetrin aseman mittaus, julkaistu esimerkkiasemapaikka, 300 km ja 600 km etelänapa-alueen ympyrät) ja pisteytettynä lähteiden numeerisia väitteitä vastaan kuuden yksipuolisen kynnyksen mukaan, jotka ennakkorekisteröitiin ennen ajoa: koko etelänavan kattavuus alle metrin p95-tasolla (K1, K2), alle metrin ja desimetritason korjattu p95 (K3, K4), alle metrin taso säilyy 600 s viiveellä (K5) ja tarkkuus säilyy perusviivan välillä 10 km - 500 km (K6)
Oraakkeli
Viite: viiden julkisen lähteen numeeriset väitteet, jotka on rekisteröity URL-osoitteineen, hakupäivineen, SHA-256-tiivisteineen ja lisensseineen tiedostoon tests/fixtures/lunar_station/SOURCES.md (arXiv:2602.08432v3; IOAG Cislunar PNT Workshop 2025 ja 2026 -diat; UNOOSA ICG WG-B Lunar PNT, kesäkuu 2024), litteroituina sivuviittauksineen tiedostoon tests/fixtures/lunar_station_published/CLAIMS.md. Kynnykset, tapaukset ja syötteet ennakkorekisteröitiin tiedostossa tests/fixtures/lunar_station_published/PREREGISTRATION.md (versio 2, 05bf9a19, tallennettu yksinään ennen ajoa). 0,36 ensimmäinen ajo, löydös (pysyy MODELLED): kynnyksistä läpäisee 1 / 6. Kattavuus on 0,00 molemmilla ympyröillä, kun vaatimus on >= 0,95, ja korjattu p95 3-D -virhe on 280,6 m (300 km) ja 293,0 m 600 s viiveellä, kun vaatimus on <= 1,5 m. Desimetrikynnys (K4) ei voinut läpäistä lähteiden 0,30 m koodikohinalla, mikä kuvastaa lähteiden välistä ristiriitaa eikä mallin tulosta. K6 läpäisee (suhde 1,39, kun vaatimus on <= 1,5), mutta kahden geometrian hallitseman luvun suhteena se ei ole todiste dekorrelaatiosta kumpaankaan suuntaan. Syy: satelliittien elementit eivät ole julkisia, ja ILLUSTRATIVE-elementeillä (koodipuussa olevilla) käyttäjä ja asema jakavat neljä satelliittia yli 5 asteen korkeuskulmalla vain 8,2 %:ssa (300 km) ja 6,3 %:ssa (600 km) epookeista, lähes singulaarisella geometrialla (korjaamaton p95 3,8 km, kun lähteiden arvo on < 10 m). Lähteiden simulaatiot käyttivät suodatinta, korkeusrajoitetta ja kolmea yhteisessä näkyvyydessä olevaa satelliittia, joita hetkellinen skenaariolaji ei mallinna. Vertailu ei siksi vahvista eikä kumoa julkaistua väitettä ”alle metrin koko etelänavan alueella”. Se osoittaa, että tämän mallin tulos riippuu radoista, joita ei ole julkaistu. Ei väite mistään todellisesta järjestelmästä; ei sidoksissa mihinkään virastoon eikä sen hyväksymä
Testit
tests/lunar_station_published_oracle.rs::recorded_finding_one_of_six_bars_passes (the recorded figures against the registered bars); tests/lunar_station_published_oracle.rs::published_claims_comparison_run (ignored…
Kuun suojaustason geometriasta kovarianssiin -vaihe — (GᵀG)⁻¹ kaikkien näkyvissä olevien satelliittien ja jokaisen yksittäisen vian aligeometrian yli, projisoituna paikalliselle pystysuunnalle ja vaakalohkon jäljelle — sekä sen tilastollinen ydin: Bonferronin ilmaisinkerroin, jokaisen vikahypoteesin gaussinen yläpyrstö ja juurenratkaisu, joka kuvaa eheysriskibudjetin suojaustasoksi, 7 pisteen Kuun palvelutilavuudessa
Oraakkeli
Kaksi vakiintunutta kolmannen osapuolen toteutusta yhdistettynä, molemmat ajettu offline-tilassa, ja fixture luotu uudelleen päästä päähän ja varmennettu tavu tavulta identtiseksi. RTKLIB 2.4.2-p13 (T. Takasu, BSD-2-Clause), commit 71db0ff, src/rtkcmn.c käännettynä C-lähdekoodista lipulla -ULAPACK: lsq() → matinv() → ludcmp()/lubksb() kääntää normaalimatriisin Croutin LU-hajotelmalla osittaisella pivotoinnilla, algoritmilla, jolla ei ole yhteyttä kshana-toteutuksen käsin kirjoitettuun Gauss-Jordan-käänteisfunktioon invert4(); numpy.linalg.inv (LAPACK getrf/getri) kääntää jokaisen uudelleen kolmantena riippumattomana käänteismatriisina ja on RTKLIB:n kanssa yhtä mieltä suhteellisella tarkkuudella 1.112e-12. SciPy 1.17.0 / NumPy 2.4.1 (BSD-3-Clause) tarjoavat funktiot norm.isf, norm.sf (Cephes ndtri/ndtr) ja optimize.brentq, joita verrataan kshana-toteutuksen Numerical-Recipes-epätäydellisen gammafunktion sarjaan, puolittamalla haettuun käänteisfunktioon ja 200-askeleiseen puolitukseen — ja SciPyn suora sf on eri numeerinen reitti kauas pyrstöön kuin kshana-toteutuksen 1 − Φ, joten syvän pyrstön kumoutuminen mitataan eikä peilata. Pystyakseli on radiaaliyksikkövektori (paikallisen pystysuunnan määritelmä pallomaisella Kuulla) ja vaakavarianssi on vaakalohkon jälki, joten mitään itä/pohjoinen-atsimuuttikäytäntöä ei jaeta. NIMENOMAAN EI VALIDATED TÄLLÄ RIVILLÄ: σ_URE, satelliittikohtainen vika-priori ja havainnollistava Moonlight/LCNS-luokan satelliittitähdistö ovat MODELLED-syötteitä, jotka annetaan oraakkelille sellaisinaan; ja yhden vian MHSS-eheysyhtälön MUOTO on litteroitu samasta julkaistusta rajasta, jonka kshana-toteutus toteuttaa — jaettu suljettu muoto on jaettu oletus, joten tämä rivi kattaa kyseisen yhtälön virheellisen evaluoinnin, ei sen virheellistä valintaa. Kolmannen osapuolen MHSS ARAIM -toteutusta ei ole saatavilla (RTKLIB ei tarjoa suojaustason sisäänkäyntiä, sellaista PyPI-jakelua ei ole, Stanford MAAST on MATLAB-pohjainen), mikä on avoin parannuskohde
Testit
tests/lunar_protection_level_reference.rs (7 palvelualuetapausta — etelänapa-, keskileveysaste-, päiväntasaaja- ja korotettu ylänkö — 6 – 19 satelliittia, σ_URE 10/30/60 m, P_HMI 1e-3 aina arvoon 1e-7 asti, suojaustasot kattaen…
Usean hypoteesin ratkaisuerotteluun perustuva suojaustasoyhtälö itse: kaikkien näkyvissä olevien satelliittien ja vikamoodikohtaiset painotetut pienimmän neliösumman ratkaisut itä/pohjoinen/ylös-geometrialla yhdellä kellotilalla satelliittitähdistöä kohden, aliratkaisujen sigmat, ratkaisuerotuksen sigmat ja yksipuoliset nimellisbiasten projektiot, Bonferronin K_fa-kynnykset, valvomattomien vikojen riskin allokointi sekä VPL/HPL, jotka ratkaisevat eheysriskiyhtälön. Ajettavissa skenaariolajina araim-reference-check
Oraakkeli
EU-U.S. Working Group C ARAIM Technical Subgroup, Reference Airborne Algorithm Description Document v3.1 (20. kesäkuuta 2019), liite D, numeerinen esimerkki — julkaistut SYÖTTEET (10 satelliitin, 2 tähdistön geometriamatriisi, C_int/C_acc-diagonaalit, b_nom, P_sat, P_const, LPV-200-vakiot) ja julkaistut TULOKSET (VPL 18,3 m, HPL 13,45 m, EMT 7,2998 m, σ_v_acc 1,3694 m, K_fa_3 5,1083 sekä kuusi tähdistövian välitulosta), haettu 2026-09-20, lähteen SHA-256 7f42934488c5c2261363439fabd48385e39526df34d514f395e22b6990b6bdb7. Täsmää viitteen OMALLA ilmoitetulla toleranssilla TOL_PL = 5e-2 m: VPL 0,0074 m, HPL 0,0437 m; EMT ja σ_v_acc painetulla tarkkuudellaan. Saman alaryhmän Milestone 3 Report (2016), liite A §A.IX, esittää saman esimerkin mutta on sisäisesti ristiriitainen — merkkivirhe G:n rivillä 3 (+0,7477, kun asiakirja 2019 painaa −0,7477; plusmerkillä asiakirjan oma σ_v_acc on 0,8690 m, kun sen julkaistu arvo on 1,47 m), ja K_fa_3 evaluoidaan 57 vikamoodilla, vaikka asiakirja ilmoittaa N_fault_max = 1, eli 12, joten sen EMT noudattaa 57 moodin kynnystä mutta sen VPL/HPL eivät. Mikään määrittelyä noudattava toteutus ei voi toistaa kaikkia sen tuloksia yhtä aikaa. Sen geometrian välitulokset toistuvat täsmälleen ja sen suojaustasot kirjataan mitatuiksi poikkeamiksi (VPL 0,0171 m, HPL 0,0842 m, EMT 0,4806 m), jotka jätetään pois hyväksyntäluvusta; toleranssia ei laajennettu niiden sisällyttämiseksi. RAJAUS: vain N_fault_max = 1 — usean tapahtuman vikaosajoukot hylätään eikä katkaista, ja poissulkeminen, khiin neliö -johdonmukaisuustarkistus ja kaksoislaskennan uudelleenallokointivaihe pysyvät MODELLED
Testit
tests/araim_reference_vectors.rs (2 julkaistua vektoria + 6 negatiivista kontrollia, testiaineisto tests/fixtures/araim_reference/wgc_araim_reference_vectors.txt: nimellisen harhan pudottaminen ohittaa julkaistun VPL:n 2,6457 m, 10…
MallinnettuARAIM usean satelliitin samanaikaisilla vikahypoteeseillaaraim_reference (add_v42_subset_plan,add_v42_protection_levels_to_order); raim (araim_subset_raim,SubsetRule)
Ominaisuus
araim_reference::add_v42_subset_plan: ADD v4.2:n osajoukon määrityssääntö (P_THRES, FC_THRES, valvotut osajoukot vähiten poistetut ensin) yleistettynä pareista enintään max_order satelliitti- ja tähdistötapahtuman samanaikaisiin yhdistelmiin, täsmällisellä priorilla P_no fault prod q_e; add_v42_protection_levels_to_order ajaa ADD v4.2:n suojaustasopolun sen päällä (kertaluku 2 on täsmälleen nykyinen polku). raim::araim_subset_raim (valinnainen): edistynyt RAIM tämän hypoteesijoukon yli, jokainen valvottu osajoukko yksi (p_fault, T, b, sigma) -moodi eheysriskisummassa, havaitsemattomat osajoukot siirretty valvomattomaan riskiin, budjetti skaalattu ADD:n valvomattoman riskin allokoinnilla, ja suurimman normalisoidun erotuksen osajoukko raportoidaan, kun vika havaitaan. Priorit, jotka vaativat syvempiä osajoukkoja kuin max_order, hylätään eikä koskaan katkaista
Oraakkeli
Sisäinen johdonmukaisuus (InternalConsistency): kertaluvun 2 palautuminen MAAST-tarkistettuun ADD v4.2 -polkuun, prioreiden riippumaton uudelleenjohto ja rakennettu kahden satelliitin vika. MAAST- tai RTKLIB-ajoa paria pidemmälle ei ole tehty, joten syvemmät hypoteesijoukot ja osajoukko-RAIMin suojaustasot eivät ole ulkoisesti tarkistettuja. araim_subset_raim jakaa funktion araim_dual_raim yksinkertaistukset (yksi sigma eheydelle ja tarkkuudelle, yksi kello, tavallinen normaalipyrstö): se ei noudata ADD-määrittelyä
Testit
tests/raim_multi_sv_subsets.rs (deeper_orders_change_nothing_when_pairs_suffice; triples_are_refused_at_order_two_and_planned_deeper: N_fault,max >= 3, valvomaton riski P_THRES:n sisällä, osajoukko, joka poistaa kolme tai…
Kellolajin valinnainen [integrity]-osio (clock_integrity::run): ilmoitetusta paikasta ja tähdistöesiasetuksista (geometry::sky_geometry), jokaisella eheysepookilla niin kauan kuin GNSS-aikajanaa ei ole estetty, hetkellinen RAIM (raim::snapshot_raim: pariteetin khiin neliö -testi, kaltevuussuojaustasot) maskin yläpuolella oleville satelliiteille siemenluvulla tuotetuilla gaussisilla residuaaleilla, joilla on ilmoitettu sigma ja valinnainen ilmoitettu bias; erillinen integrity_fom-lohko epookkikohtaisine tuomioineen, suojaustasoineen ja saatavuuksineen. Estetyt epookit raportoidaan ei-saatavilla-tilaisina eikä niitä koskaan ekstrapoloida; holdover-laatumittarit pysyvät ennallaan ja ilman osiota tuloste on tavu tavulta identtinen
Oraakkeli
Sisäinen johdonmukaisuus (InternalConsistency): suojaustasot ovat funktion snapshot_raim tasot, joka on validoitu RTKLIB:a vastaan omalla rivillään, laskettuna uudelleen samalla geometrialla; vioitta ja syötetyn vian käyttäytyminen. Taivas on edustava esiasetusgeometria (ei päivätty almanakka), residuaalit ovat synteettisiä ja sigma, hälytysrajat ja todennäköisyydet ovat ilmoitettuja syötteitä; mikään tässä ei ole väite todellisen vastaanottimen saatavuudesta
Testit
tests/clock_integrity.rs (the_block_is_separate_and_absent_by_default: holdover-luvut muuttumattomia, 111 evättyä epookkia ei saatavilla ilman suojaustasoa, hylätty kun ajoja > 1…
MallinnettuAvaruudellinen, kohinainen, usean perheen kuunläheinen kaarenpituuden havaittavuuscislunar_observability,observability_gramian,intersat_range,cislunar_srif
Ominaisuus
Kuunläheisen kaarenpituuden havaittavuuskynnys AVARUUDELLISESSA kuusitilaisessa CR3BP-mallissa tasomaisen nelitilaisen sijaan, DRO-, L2-halo- ja L2-lähes-suoraviivaisten halo-perheiden yli, mittauskohinan päästessä Gramin matriisiin, ja KAKSI kriteeriä raportoidaan, koska yhtä rehellistä kriteeriä ei ole: julkaistu astekriteeri, joka on todistettavasti invariantti homoskedastisen mittaussigman suhteen (valkaisu kertoo havaittavuusmatriisin skalaarilla, jolloin suhteellinen singulaariarvojen spektri ja siten aste, defekti ja ehtoluku eivät muutu), sekä arvioitavuuskriteeri — ensimmäinen kaari, jolla päätähden alkutilan muodollinen 1σ:n paikkaepävarmuus alittaa ilmoitetun rajan — joka on se, joka liikkuu kohinan mukana. Jokainen kynnys kantaa mukanaan sen epookkiruudukon haarukan, jossa se sijaitsee; saavuttamaton kriteeri on null ja siihen liittyy perustelu. Tasomainen tila pysyy oletuksena ja tason ulkopuoliset perheet hylätään siellä eikä litistetä tilaksi, joka ei pysty esittämään niitä
Oraakkeli
Riippumaton rivi-porrasmuodon aste Gaussin eliminoinnilla osittaisella pivotoinnilla vahvistaa jokaisen kuusitilaisen asteen tuomion — eri algoritmi, joka ei jaa koodia testattavan ominais-/SVD-reitin kanssa. Tämän muodostama 6×6 CR3BP-tilasiirtymämatriisi kantaa oman ReferenceImpl-oraakkelinsa SciPyn variaatiointegrointia vastaan, ja halo-/NRHO-alkuehdot tulevat korjaajasta, joka toistaa julkaistun L2-eteläisen 9:2 Gateway-radan. Nykyistä neliöjuuri-informaatiosuodatinhaaraa EI nimenomaisesti lasketa vahvistukseksi: se käyttää samoja jakobiaaneja ja johtaa samaan normaalimatriisiin, joten se on kahden numeerisen koneen välinen johdonmukaisuustarkistus, ja tuotettu laajennustunniste sanoo niin. EI ankkuroitu ulkoisesti, ja ExternalDataset jätetään siksi kieltäytyen eikä lainata tilasiirtymämatriisin riviltä: itse kynnyskaarenpituudet riippuvat MODELLED-tähdistösuunnittelusta, epookkiruudukosta ja — mitattavasti, jopa 40× — singulaariarvotoleranssista. Julkaistu tasomainen 2,09 h toistuu täsmälleen arvolla rel_tol = 1e-6 ja on itse toleranssiriippuvainen (10,25 h arvolla 1e-4, 0,42 h arvolla 1e-8), mikä on kriteerin ominaisuus eikä radan. Mikään julkinen aineisto ei julkaise kaarenpituuden havaittavuuskynnystä valitulle kuunläheiselle satelliittitähdistölle. MEASURED-TULOS: avaruudellinen kuusitilainen kynnys on 22,17 h L2 NRHO:lle ja 40,42 h L2-halolle, ja se EI OLE OLEMASSA tasomaiselle DRO-perheelle, jolla julkaistu väite johdettiin — aste 4 / 6, datumin defekti 2 ja kaksi täsmälleen nollaominaisarvoa, rakenteellinen defekti, jota mikään kaarenpituus ei korjaa
Testit
cislunar_observability::tests ja observability_gramian::tests (oletusasiakirja lukittu bitilleen sen JSONin, yhteenvedon ja SVG:n FNV-1a-tiivisteellä, ja eksplisiittiset oletusarvot todetaan no-op-toimiksi ja kahdeksan…
MallinnettuOperatiivisen tyylin Maan orientaation ennustevirhe, mitattu ennustettu vastaan lopullinenframe_eop,realtime_frame_eop
Ominaisuus
Pienimmän neliösumman bias-plus-vauhti-sovitus liukuvan ikkunan yli sekä pääasialliset jaksolliset termit — vuotuinen, puolivuotinen ja kaksi pääasiallista vyöhykevuorovesitermiä UT1:lle; Chandler, vuotuinen ja puolivuotinen navalle — ekstrapoloituna viimeisen ikkunan sisäisen residuaalin kuljettamana eteenpäin: IERS Bulletin A:n käyttämä luokka, julkaistun horisontin perustana olleen pysyvyysennustimen tilalla. Pisteytetty ainoalla rehellisellä tavalla: T+h:n ennuste, joka on rakennettu nopeista Bulletin A -riveistä hetkellä T tai sitä ennen, mitattuna MYÖHEMMIN JULKAISTUA Bulletin B -lopullista arvoa vastaan hetkellä T+h, ja pysyvyysennuste pisteytetään samalla epookkijoukolla samoja lopullisia arvoja vastaan rinnalla. Kohdeepookki, jolle ei ole julkaistua lopullista arvoa, pudotetaan eikä pisteytetä uudelleen nopeaa saraketta vastaan; jaksollinen termi, jota ikkuna ei voi rajoittaa, raportoidaan hylättynä sillä jaksomäärällä, jonka ikkuna todellisuudessa kattaa; epätäydellinen ikkuna hylätään eikä sitä lyhennetä hiljaa
Oraakkeli
Kolme riippumatonta reittiä, joista mikään ei ole julkaistu ennustetarkkuusluku. (1) Analyyttinen signaali tunnetuilla kertoimilla — ainoa tapa harjoittaa jaksollista koneistoa, koska mikään tallennettu sarja ei ole riittävän pitkä sisältämään vuotuista termiä. (2) Oppikirjan suljetun muodon pienimmän neliösumman ratkaisu, eri algebra kuin testattava matriisiratkaisu, todellisilla riveillä. (3) Todelliset arkistoidut Bulletin A -ennusterivit, jotka todellinen 2026 tuote julkaisee, verrattuna ennustusajoittain YHTEENSOPIVUUSTILASTONA eikä nimenomaan virheenä: 0,256 ms (1 vrk), 0,695 ms (2 vrk), 1,252 ms (3 vrk), ajautuen arvoon 3,885 ms (9 vrk). Tämä on siis Bulletin A:n LUOKKA, lähellä lyhyellä ennustusajalla, ei Bulletin A. Ennustetut-vastaan-lopulliset residuaalit ovat todellisia mitattuja suureita todellisilla IERS-riveillä, mutta niiden suuruus tarkistetaan vain vertailun SUUNTAA vasten, ei koskaan IERSin julkaisemaa tarkkuuslukua vasten — todellisen tuotteen lukeminen on alkuperä, ei oraakkeli. MEASURED: päivänä 1 operatiivinen ennustin antaa 3,78 m Kuun koordinaatiston virhettä, kun pysyvyysennusteella se on 11,39 m (3,01×), päivänä 2 10,23 m vastaan 21,72 m (2,12×), päivänä 3 20,33 m vastaan 30,57 m (1,50×) — ja se on HUONOMPI kolmen päivän jälkeen (0,87× kohdassa 5 vrk, 0,43× kohdassa 10), minkä raportti tuottaa eikä näytä vain horisontteja, jotka imartelevat sitä. EI toistettu: autoregressiivinen residuaalisuodatin ja taulukoitu vyöhykevuorovesireduktio, 365 päivän operatiivinen ikkuna ei ole saavutettavissa tallennetulla datalla, eikä tässä repositoriossa ole MITÄÄN arkistoitua aiempaa sarjaversiota — joten arkistoitujen versioiden taulukko raportoi nolla riviä eikä pisteytä synteettistä riviä. 0,30 ulkoinen vertailu, löydös (pysyy MODELLED): pisteytettynä samoja lopullisia arvoja vastaan 178 arkistoidun Bulletin A -julkaisun yli kirjaston oletusikkunalla 15 päivää, ennustimen UT1 MAE on 2.4x - 12.6x Bulletin A:n arvosta ennustusajoilla 1 - 10 vrk (kynnys 1.5x) ja 5,32 ms arvolla 10 vrk, 2nd EOP PCC:n alueen 0,36 - 3,13 ms ulkopuolella; napa on 1.5x - 1.85x Bulletin A:n arvosta (1.5x:n sisällä vain ennustusajoilla 6 ja 7 vrk); 21 ennakkorekisteröidystä ehdosta 19 epäonnistuu. Reitin (3) korjaus: 2026 tuoterivit, joihin sitä verrattiin, kantavat IERS I (mitattu) -lipun, eivät P:tä, joten nuo yhteensopivuusluvut ovat mitattuja nopeita arvoja vastaan, eivät Bulletin A:n ennusteita vastaan. 0,30 kierros 2, pienimmän neliösumman plus autoregressiivinen ennustin vyöhykevuorovedet analyyttisesti poistettuina, 178 arkistoitua Bulletin A -julkaisua vastaan kierroksen 1 kynnyksellä (ennakkorekisteröity c93605b4), löydös (pysyy MODELLED): 21 ehdosta 12 pätee; UT1 MAE on 1,73 - 2.11x Bulletin A:n arvosta ennustusajoilla 2 - 10 vrk (kynnys 1.5x) kun taas napa on 1.27x:n sisällä jokaisella ennustusajalla. 0,30 tarkistus: kun offline-syöte on nyt luokiteltu IERS-lipun mukaan, reitin (3) yhteensopivuusluvut ovat todellisia Bulletin A -ennusteita vastaan (0.256/0.695/1.252/3.885 ms 1/2/3/9 vrk nopeita rivejä vastaan -> 0.133/0.421/0.839/2.786 ms)
Testit
frame_eop::tests, realtime_frame_eop::tests and tests/operational_eop_predictor_reference.rs (analytic-signal coefficient recovery to 1e-9 at a 365-day window; a bias-plus-rate fit equal to the closed-form…
Seitsemän parametrin Helmert-datumi, joka on propagoitu SIMULOIDUSTA HAVAINTOKAMPANJASTA eikä palautettu syötetystä muunnoksesta. Maa-asemat havaitsevat lähteistetyn Kuun pinnan majakkaluettelon nimenomaisella aikataululla; Kuun VLBI-viiveosittaisderivaatat kertyvät majakkakoordinaattien Fisherin informaatiomatriisiin ja viedään Helmert-suunnittelumatriisin A = [I₃ | [p]ₓ | p] kautta muotoon H = AᵀM_bA, joten raportoitu datumin tarkkuus on havaintoohjelman funktio — täsmälleen lineaarinen viivesigmassa ja monotoninen kaaressa libraation kautta, jonka raportti MITTAA. Datumin defekti on aihe eikä alaviite: aste, defekti, ehtoluku, spektri, havaitsemattomat suunnat seitsemän parametrin kannassa, heikoin suunta myös täydellä asteella ja kunkin parametrin osuus siitä raportoidaan jokaisella ajolla, ja mikä tahansa parametri, jota kampanja ei rajoita, julkaistaan arvona NULL tilan kanssa. Majakkavirheen korrelaatio on MEASURED, ei oletettu — täsmälleen nolla asemien ollessa kiinnitettyjä, ja se tulostetaan hintoineen, kun asemat estimoidaan. Ajettavissa skenaariolajina lunar-frame-campaign
Oraakkeli
Suljetun muodon identiteetit ja riippumaton koodipuun sisäinen reitti, ilman väitettyä ulkoista oraakkelia. Helmert-suunnittelu — moduulin ainoa uusi derivaatta — johdetaan uudelleen funktion lunar_frame_realise::apply_helmert keskeisellä äärellisellä erotuksella, polulla, joka ei jaa lauseketta analyyttisen muodon kanssa. Sen muodostama kertymä on lunar-vlbi-fim:n, jonka jakobiaani on äärellisesti derivoitu funktiota lunar_vlbi::vlbi_delay_s vasten siellä ja jonka lineaarialgebraydin on erikseen ankkuroitu ulkoisesti numpya vasten tiedostossa tests/fim_observability_reference.rs — tämä rivi ei lainaa kumpaakaan tilaa. Fysiikan oraakkeli on rakenteellinen eikä numeerinen: majakan viiveen osittaisderivaatta on kahden lähes yhdensuuntaisen yksikkövektorin lähikentän EROTUS, joten huonoiten määritetyn translaatiosuunnan TÄYTYY olla kappalekiinteä suunta Maahan, ja testi vahvistaa lasketun vastauksen erikseen mitattua suuntaa vasten. MEASURED: kampanjasta johdettu translaatiosigma 6,3975 m vastaan syötetyn muunnoksen skenaarion 0,3125 m palautusvirhe (20,5× tiukempi), kun taas rotaatio ja skaala menevät TOISEEN suuntaan 2,32× ja 13,5× löysempinä — syötetty polku olettaa yhden isotrooppisen sigman ja levittää siten virheensä tasaisesti seitsemälle parametrille, mitä viivehavaintosuure ei tee. Aste 7/7 mutta ehtoluku 3.8e5, yhdellä suunnalla 99,57 % puhdasta translaatiota kohti Maata ja neljäkymmentä kertaa huonommin kuin mikään muu. MITÄ TÄMÄ RIVI EI VÄITÄ: että kampanjan luku on oikein absoluuttisesti. Se osoittaa, että luku JOHTUU nyt aikataulusta, geometriasta ja virhemallista eikä istutetusta vastauksesta. Pysyy ReferenceImpl/MODELLED: julkaistua Kuun VLBI -kampanjan ja datumikovarianssin paria ei ole, asemaverkko ja viivesigma ovat ILLUSTRATIVE-syötteitä (majakkaluettelo on lähteistetty, kampanja ei), havaintoja käsitellään riippumattomina vaikka todellisen session troposfääri ja kello korreloivat lähekkäisten skannausten välillä, ja efemeridi, kellot, troposfääri ja Maan orientaatioparametrit pidetään KIINTEINÄ. 0,30 ulkoinen vertailu, löydös (pysyy MODELLED): kun jokainen majakkajakobiaanin rivi on rakennettu uudelleen NAIF SPICE -valoajoista (DE440, ITRF93, MOON_ME; ennakkorekisteröity 50863551), aikataulu, Helmert-aste, datumisigmat (4.7e-3 sisällä), ehtoluku, heikoin suunta (0,07 astetta), libraatiopyyhkäisy ja kaarijärjestys täsmäävät kuudessa skenaariossa ennakkorekisteröidyn 1 % / 0,2 / 0,05 asteen sisällä. NumPy tallennetulla moottorijakobiaanilla täsmää tarkkuudella 3e-14, kun asemat on kiinnitetty. Asemien ollessa estimoituja ero on 6.8e-6 ennakkorekisteröityä 1e-9 vastaan, jonka ehtolukuoletus oli väärä (Helmert-ehtoluku 2.1e8; riippumattomat NumPy-reitit eroavat toisistaan 3e-6; moottorin 1e-9 pseudokäänteisen varareitin osuutta ei suljeta pois), joten riviä ei ylennetä tämän ennakkorekisteröinnin perusteella. 0,36 uudelleenrekisteröinti ehtolukuun skaalatulla kynnyksellä (ennakkorekisteröity b887eb05; t = max(1e-12, 10 kappa 2^-53) yhteisen informaation ja sen Helmert-reduktion ehtoluvusta), löydös (pysyy MODELLED, NOT MET): vaihe 0 sulkee pseudokäänteisen varareitin POIS 6.8e-6 -erolle (mikään Helmert-matriisin ylävirran matriisi ei turvaudu varareittiin kuudessa alkuperäisessä skenaariossa, tiukin marginaali kerroin 2,6), SPICE-haara pitää edelleen kaikissa kuudessa, ja NumPy täsmää kynnyksen sisällä kuudessa kahdeksasta skenaariosta (oletus, kaksi kaarta, 3x viivesigma, kollineaarinen defekti ja tuore asemat kiinnitetty -ajo päivältä 2026-12-01; pahin 0,13 kynnyksestään). Se epäonnistuu skenaariossa stations_estimated (datumisigmat jopa 6.8e-6, ehtoluku 9.1e-6, riippumattomuuden hylkäämä normi 3.5e-6, kun t = 5.9e-7), ja tuoreena päivänä etelänavan majakalla ei ole havaintoa, joten majakan informaatio on asteeltaan vajaa (pseudokäänteinen varareitti Helmert-matriisin ylävirrassa molemmissa tuoreissa skenaarioissa) ja muuttumaton NumPy-oraakkeli ei voi evaluoida skenaariota stations_estimated_fresh (singulaarinen matriisi). Tulokset: docs/design/evidence/mr05-lunar-datum-cond/RESULTS.md
Testit
lunar_frame_campaign::tests (21 kirjastotestiä: Helmert-suunnitelma vs funktion lunar_frame_realise::apply_helmert keskeinen äärellinen erotus — moduuli, JOTA VARTEN datumi on, ja joka ei laske derivaattaa, joten se lukitsee [p]ₓ…
Eräpienimmän neliösumman estimaattori, joka PALAUTTAA päätähden alkutilan simuloiduista satelliittien välisistä mittauksista saman epookkiruudukon kasvavien alkuosien yli, jota aste-vastaan-kaari-taulukko käyttää, mittausosittaisderivaatat otettuina yhdistetyn eteenpäinmallin keskeisinä äärellisinä erotuksina. Se ei käytä mitään koneistoa, jolla kynnys mitattiin — ei analyyttistä jakobiaanirivia, ei variaatiotilasiirtymämatriisia, ei singulaariarvo- tai ominaisarvohajotelmaa, ei asteen toleranssia, ei neliöjuuri-informaatiosuodatinta — ja jakaa vain dynamiikan, alkuehdot, skalaarihavaintosuureen ja epookkiruudukon, jotka kaikki on nimetty tuotetussa asiakirjassa. Kaksi kriteeriä, molemmat pyyhkäistään: kohinaton palautus (asteen vastine) ja Monte Carlo -arvioitavuus (arvioitavuuden vastine, mitattuna tunnettua totuutta vasten eikä kovarianssista ennustettuna). Ajettavissa skenaariolajina cislunar-arc-recovery
Oraakkeli
Erillinen estimaattori tässä koodikannassa eri algoritmilla ja irrallisella koodipolulla: epälineaarinen painotettu Gauss-Newton äärellisen erotuksen osittaisderivaatoilla, jonka tuomio luetaan mitattuna tilanpalautusvirheenä yksiköissä km ja mm/s. Sillä ei ole mitään yhteistä lauseketta Gramin matriisin aste-ja-kovarianssireitin kanssa, ja erottelu PAKOTETAAN lähdetekstin vartijalla eikä väitetä. MEASURED julkaistulla tasomaisella DRO-ruudukolla: ARVIOITAVUUSkriteeri on CORROBORATED — mitattu Monte Carlo -raja on 5,739130 h muodollista 5,739130 h vastaan (suhde 1,0000), ja mitattu RMS toistaa muodollisen 1σ:n 21 kaarenpituuden yli geometrisen keskiarvon suhteella 0,9804. ASTEKRITEERIÄ ei ole vahvistettu palautettavuuden rajana: estimaattori palauttaa arvosta 0,782609 h Gramin matriisin arvon 2,086957 h sijaan, suhde 0,375, ja arvolla 1,826087 h — viimeinen alkuosa, jonka astelukema pisteyttää 3 / 4 — palauttaa tarkkuudella 1.96e-5 a priori -siirtymästä. Palautusraja ei liiku oman rajansa kolmen dekadin yli, kun taas asteen kynnys kattaa ”ei koskaan” - 0,782609 h rel_tol-arvon neljän dekadin yli, ja kaksi osuvat täsmälleen yhteen arvolla rel_tol = 1e-8. Tämä alue kirjattiin ensin yltävän arvoon 0,260870 h; tuo luku oli ARTEFAKTI, jonka tuotti astelukema, joka laski 4 suuntaa 2 mittausrivistä f64-kohinalattian alapuolella, ja se korjataan tässä eikä jätetä voimaan. Astelukema rajataan nyt Sylvesterin epäyhtälöllä ja syy tuotetaan, ja korjattu alue saturoituu täsmälleen kaarelle, jolla riippumaton estimaattori palauttaa, mikä vahvistaa tämän rivin ristiinvalidointia eikä heikennä sitä: julkaistu 1e-6 on konservatiivinen singulaariarvon KONVENTIO, ei väite palautettavuudesta. Sama kuvio avaruudellisesti: NRHO 9,290323 h vastaan 21,677419 h, halo 22,978723 h vastaan 39,829787 h, arvioitavuuden täsmätessä täsmälleen molemmissa. Tasomainen DRO:n kuusitilainen ei palaudu millään kaarella, mikä toistaa riippumattomasti tuon perheen rakenteellisen datumidefektin estimaattorista, jolle siitä ei kerrottu mitään. EI ankkuroitu ulkoisesti — dynamiikka ja alkuehdot jaetaan testattavan analyysin kanssa eikä mikään julkinen aineisto julkaise tällaista kynnystä — joten ExternalDataset jätetään kieltäytyen
Testit
cislunar_arc_recovery::tests ja tests/cislunar_arc_recovery_reference.rs (molemmat rajat ja niiden suhteet lukittu julkaistulla ruudukolla; mitattu virhekäyrä verrattuna muodolliseen kovarianssiin rivi riviltä…
Hyväksyy taulukoidun Kuu-keskisen tilaefemeridin (SPK/BSP-ytimen evaluaatio) tai julkaistun tähdistömäärittelyn kohdassa ephemeris_path, ajaa saman kattavuus-, DOP- ja suojaustasopyyhkäisyn sitä vasten ja antaa siitä seuraavan σ_URE-etäisyysvaatimuksen muuttumattoman havainnollistavan Kepler-tuloksen ja häiriöillä lasketun tuloksen VIERESSÄ, erotuksen omana nimettynä suureenaan. Jokaisella luvulla on alkuperäluokka, joka erottaa ytimestä johdetun, julkaistuista elementeistä johdetun ja mallinnetun toisistaan, jotta näitä ei voi koskaan sekoittaa jatkokäytön lainauksessa
Oraakkeli
GEOMETRIA on ulkoista ja tiivistetty: kolme vertailuaineistoa, joiden luvut tulevat vain asiakirjoista, jotka on haettu URL:n, hakupäivän ja SHA-256:n kanssa, regeneroitavissa sitoutetuilla generaattoreilla, jotka varmentavat lähteen tiivisteen ja KESKEYTTÄVÄT sen sijaan, että antaisivat luvun: LANS-yhteentoimivuusdemonstraation vertailutähdistö (NASA NTRS 20250009447, SHA-256 d1b916be…), LNCSS-tapaustutkimukset (NAVIGATION 70(4) navi.613, CC BY, SHA-256 4e294687…) sekä todellinen lennetty avaruusaluksen efemeridi LRO:lle, Danurille, Chandrayaan-2:lle ja CAPSTONElle evaluoituna JPL:n omista rekonstruoiduista ytimistä Horizonsin kautta. Kuun navigointitähdistön ydintä EI ole julkisesti olemassa: Moonlight/LCNS, LCRNS ja LNSS eivät lennä, eikä NAIF julkaise niistä mitään, eikä mitään ole keksitty. JOHDETTU σ_URE-vaatimus ei sisällä ULKOISTA oraakkelia (kukaan ei julkaise sitä etäisyystarkkuutta, jota 50 m:n kuun HPL vaatii tällä palvelualueella), joten se on tarkistettu omaa algebrallista identiteettiään vasten ja riippumattomasti ajamalla koko pyyhkäisy uudelleen lasketulla vaatimuksella ja varmistamalla, että saatavuus kääntyy siinä. MEASURED: julkaistu 8 satelliitin suunnitelma tarvitsee σ_URE-arvon 2,9044 m tasolla 100 % kattavuus, kun havainnollistavan tähdistön arvo on 0,3591 m tasolla 37,85 %: julkaistun luvun 8,09× tarkistus ohjelmasäännön R4 nojalla. Laadullinen johtopäätös säilyy (LNIS-luokan 30 m ei edelleenkään sulje 50 m:n etelänapaista HPL:ää), mutta vaje oli yliarvioitu kahdeksankertaisesti. 5 satelliitin LANS-demo tuottaa NOLLA suojaustasonäytettä: viisi satelliittia ei riitä kuuteen näkyvään, jonka yhden vian hypoteesijoukko tarvitsee, ja vaatimuskenttä puuttuu (ABSENT) sen sijaan, että se keksittäisiin; samoin neljälle todelliselle avaruusalukselle tasolla 0 % kattavuus. InternalConsistency on rehellinen laji: SYÖTEDATA on ulkoista ja tiivistettyä, mutta suure, josta tämä rivi kertoo, on validoitu vain itseään vasten. 0,30 ulkoinen vertailu, havainto (pysyy MODELLED): LNCSS-tapaustutkimuksen navi.613 tilastoja vasten 346 ruudukkopisteellä saatavuustilastoja on 12, joista 4 jää ennakkorekisteröidyn 2 prosenttiyksikön ulkopuolelle (tapaus A: -4.0, +22,5 ja -3.6 pp; tapaus B: -12.1 pp). Todennäköisiä syitä: elementit luettu väärässä koordinaatistossa, kahden kappaleen Kepler 15 päivän ajan artikkelin ilmoittamatonta voimamallia vasten sekä ruudukko, jota ei voi toistaa tekstistä. PDOP-puoli ei ollut arvioitavissa (LANS ei tulosta numeerista tilastoa); vertailutesti on sitoutettu ohitettuna. 0,30 kierros 2, havainto (pysyy MODELLED): Orekit 12,2 / Hipparchus 3,1 -oraakkelia vasten, joka laskee koko raportin (Orekit-propagointi, DOPComputer-näkyvyys ja -DOP, Hipparchus-koostetut MHSS-suojaustasot, vaatimus ratkaistuna näytettä kohti; ennakkorekisteröity d3ce97b2) kaikilla viidellä haetulla geometrialla ja kahdella ruudukolla, arvoja on 160, joista 155 täsmää ennakkorekisteröidyillä kynnyksillä (2 pp, 5 %, 1 %), mukaan lukien σ_URE-vaatimus LNCSS A:lle ja C:lle (3,879072208 m molemmilla puolilla tapauksessa A) ja puuttuva vaatimus LANS:lle ja kiertäjille. LNCSS B tiheällä ruudukolla ei täytä pahimman näytteen tilastoja (sigma_required 0,000923 vs. 0,001511 m, hpl_max 1.63e6 vs. 0.99e6 m), missä lähes singulaariset geometriat (PDOP noin 1e6) vahvistavat metritason paikkayhtäpitävyyttä; sen p95-vaatimus täsmää (1,6343 vs. 1,6357 m). Pahimman näytteen vaatimus on huonosti asetettu degeneroituneella geometrialla. navi.613-vertailussa: yhä 4 tilastoa kaikkiaan 12 tilastosta on 2 pp:n rajan ulkopuolella (lukittu)
Testit
lunar_ephemeris::tests (muodon ja kehyksen jäsennys; Lagrangen interpolaatio täsmällinen solmuissa ja lineaarisella radalla solmujen välissä; ICRF-elementit saavat IAU 2015 -redusoinnin ja ovat tavu tavulta samat kuin eksplisiittinen icrf_to_iau_moon…
MallinnettuYksikkö ja alkuperä ilmoitettu jokaiselle raportoidulle suureellefield_schema
Ominaisuus
Koneluettava skeema, joka antaa yksikön, alkuperäluokan ja määritelmän jokaiselle skenaarioraportin numeeriselle kentälle, sekä yksi yleinen portti, joka ajaa jokaisen rekisteröidyn skenaariotyypin ja epäonnistuu, jos lähetetyltä numeeriselta kentältä puuttuu jompikumpi. Alkuperäsanasto on suljettu ja jokaisella luokalla on todistetaso, kahden luokan ollessa tarkoituksella kuvattu arvoihin inherits-scenario-label ja depends-on-input sen sijaan, että niille annettaisiin taso, jota luokka ei määrää
Oraakkeli
Lähetetty asiakirja itse: jokaisen numeerisen lehden on ratkettava merkintään kyseisen asiakirjan omassa units-lohkossa. Ulkoista yksikkörekisteriä, jota vasten ILMOITETTU yksikkö tarkistettaisiin, ei ole, joten ilmoitettu yksikkö on tarkastettu väite eikä varmennettu: portti varmentaa TÄYDELLISYYDEN ja MUOTOILUN OIKEELLISUUDEN, ei totuutta, ja Validoitu-merkintä olisi väärin, koska mikään ulkoinen ei vahvista, että m on oikea yksikkö kentälle nimeltä _m. Riippumaton nimen pääteristiintarkistus ajettiin KYSEISENÄ AIKANA kuvatuille kentille, joita oli 1 434: niistä 691:ssä on yksikköä kantava pääte, 40 on ristiriidassa ilmoitetun yksikön kanssa ja kaikki 40 on selitetty (sekuntikohtaiset päätteet, minimit, aukkosekunnit, newtonmetrit nanometriltä näyttävää päätettä vasten), joten väärää yksikköä ei noussut esiin. Tuota ristiintarkistusta ei ole ajettu uudelleen sen jälkeen, ja kattavuus on kasvanut sen ohi: luku on jätetty siihen, mitä todella mitattiin, eikä toistettu nykyisellä kokonaismäärällä. Kyseisen muutoksen (0.27.0) aikaan kattavuus siirtyi tilasta, jossa 56 tyypistä 7 oli katettu, tilaan, jossa 61 tyypistä 60 on katettu, ja tilasta, jossa 1354 kentästä 389 oli katettu, tilaan, jossa 1 744 kentästä 1 742 on katettu (docs/field-units-schema.json, jota vanhentumistarkistus pitää ajan tasalla). YHTÄÄN tyyppiä ei jää kattamatta (katto 0, FUT-28, 0,36): viimeinen oli sweep-nd, jonka kahden sarakkeen yksiköt ovat kutsujan avaimeamia, joten niiden yksiköt ovat dataa; ne kuvataan nyt arvolla mixed - see note ja jokaisen paikan yksikkö luetaan PYYHKÄISTYN paketin omasta yksikkötaulukosta kenttiin key_units ja metric_units (tai otetaan akselin ilmoitetusta arvosta unit, jonka on oltava sama kuin paketin, kun molemmat ovat olemassa; null, kun kumpaakaan ei ole, ilmoitettuna eikä arvattuna). cislunar-observability oli sitä edeltävä, ja se poistui luettelosta, kun sen julkaistu asiakirja sai units-lohkon: additiivisuuslukitus, joka oli nimennyt avaimen units kielletyksi, TODISTAA nyt lisäyksen additiiviseksi: poista lohko takaisin ja asiakirjan tiiviste on yhä kaksi ennen sen olemassaoloa jäädytettyä vakiota, joten lisäyksen alla liikkunut julkaistu arvo epäonnistuu edelleen. Työ toi myös esiin kaksitoista olemassa olevan koodin yksikkö- tai dokumentaatiovirhettä, jotka raportoitiin eikä korjattu säännön R1 mukaan
Testit
tests/field_units_global.rs (kaikki 61 rekisteröityä tyyppiä ajetaan, yksi asiakirjamuoto kutakin: jokaisen numeerisen lehden on ratkettava kyseisen asiakirjan oman units-lohkon merkintään; virheellinen merkintä lasketaan puuttuvaksi KAIKILLE tyypeille…
ValidoituKuun koordinaatiston datum TODELLISESTA havaintokampanjastalunar_llr,realdata::llr_crd (composing fim,cio,frames,ephem,lunar_frame,lunar_frame_campaign)
Ominaisuus
Seitsemän parametrin Helmert-datumkovarianssi, jossa kaksi simuloitua syötettä on korvattu mitatuilla: aikataulu on 337 arkistoidun ILRS-kuulaseretäisyyden normaalipisteen maasta lähetyksen epookit (2015-04-08–2015-06-27, Grasse MeO 7845 ja Matera MLRO 7941, kaikki viisi retroreflektoriryhmää) ja jokainen havaintopaino on kyseisen pisteen oma arkistoitu toistotarkkuus bin_rms/√n_raw: mediaani 5,13 mm yksisuuntaista etäisyyttä, luettuna tiedostosta. Asemakoordinaatit IERS ITRF2020, heijastinkoordinaatit JPL DE430 Taulukko 7. Ajettavissa skenaariotyyppinä lunar-llr-datum. Validoitu väite (0,36) on suppea: analyyttisellä oletuspolulla datumkovarianssin laskenta täsmää riippumattomaan SPICE-valoaika- ja NumPy-oraakkeliin tuoreilla mitatuilla normaalipisteillä; se ei ole LLR-tarkkuus eikä todiste siitä, että analyyttinen Kuu on tarkka
Oraakkeli
Suljetun muodon identiteetit, riippumaton repositorion sisäinen reitti ja versiosta 0,36 alkaen riippumaton SPICE- ja NumPy-kirjastooraakkeli tuoreella mitatulla datalla (alla); julkaistua kuun LLR-datumkovarianssiparia ei ole olemassa vertailuun, joten tarkkuutta ei väitetä. Ainoa uusi derivaatta, etäisyyden partiaali heijastimen Kuu-kiinteän sijainnin suhteen, johdetaan uudelleen sen derivoiman kaksisuuntaisen valoajan keskeisdifferenssillä, polulla, joka ei jaa lauseketta analyyttisen muodon kanssa. Fysiikkaoraakkeli on rakenteellinen: etäisyyden partiaali ON kaksi kertaa näkölinja, joten keskimääräisen Maa-suunnan suuntainen Kuu-kiinteä koordinaatti on määrittyvä paljon paremmin kuin kaksi taivaantason koordinaattia, joihin vain libraatio yltää: mitattu 50,7×–71,7× viiden ryhmän yli libraatiopyyhkäisyä vasten, jonka raportti mittaa riippumattomasti, isotrooppinen pienen kulman ennuste ja eron selittävä poikittaisanisotropia molemmat tulostettuina. MIKÄ MUUTTUI: aikataulu, havaintojen lukumäärä ja jokainen havaintopaino ovat nyt mitattuja; arkistoidusta 349 pisteestä käytetään 337 ja 12 käyttämätöntä ohitetaan ja lasketaan, koska ITRF2020 ei sisällä sijaintia Apache Pointille. MEASURED: datumin translaation sigma 1.851746e-2 m SIMULOITUA kampanjaa vasten, jonka arvo on 6,3975 m (345×), rotaatio 36×, skaala 24× — suhde laseretäisyysverkon ja VLBI-viiveverkon välillä, joten havainto eikä validointi. Heijastinten informaatioaste 15/15, ryhmien välinen kytkentä täsmälleen 0; Helmertin aste 7/7, ehtoluku 2.4e4. MITÄ TÄMÄ RIVI EI VÄITÄ: että luku on oikea absoluuttisesti. Todellinen LLR-ratkaisu estimoi samanaikaisesti Kuun radan, fysikaaliset libraatiot, Maan orientaation, asemakoordinaatit sekä vuorovesi- ja suhteellisuusparametrit ja raportoi desimetrejä (DE430 Taulukon 7 oma 0.12–0.27 m), kun tämä raja on paljon pienempi; tämä on Cramér–Rao-raja ilmoitetulle supistetulle parametrijoukolle, ei tarkkuus. Validoidun väitteen ulkopuolella (mallinnettu, ei validoitu): Kuun keskipisteen efemeridi ja IAU 2015 -kappaleen orientaatio on mallinnettu, ja troposfääri, vuorovesi, aseman eksentrisyys, napaliike, UT1-UTC, suhteellisuusviive ja aseman kellot puuttuvat. Niiden yhteisvaikutus on JULKAISTU eikä perusteltu: havaittu miinus laskettu yksisuuntainen etäisyys 156 494 m RMS 337 pisteen yli, ja niiden vaikutus kovarianssiin on RAJATTU eikä perusteltu: koko datumin uudelleenratkaisu jokaisen partiaalin ollessa kallistettu 0,1° (kaksi kertaa mitattu pahimman epookin efemeridikallistus, etumerkki vaihtelee) siirtää tulosta 0,288 %. ULKOINEN TARKISTUS (0,30 kierros 2, ennakkorekisteröity 6b27964a), havainto (pysyy MODELLED): SPICEn kaksisuuntainen valoaika (DE440, ITRF93, DE440:n kuun orientaatio) differenssipartiaaleilla ja numpy-käänteismatriisi samoilla 337 mitatulla normaalipisteellä ja painoilla täsmäävät kirjanpidossa, kummassakin asteessa, nollakytkennässä, jäännös-RMS:ssä (2.1e-5) ja 16 kovarianssiluvusta 15. z-translaation sigma on 1,03 % liian korkea ennakkorekisteröityyn 1 %:n kynnykseen nähden. Kuun keskipisteellä DE440:stä se laskee arvoon 0,049 % (c51f8b2, nähtyä dataa), ja tuoreilla 2019 normaalipisteillä ydin-Kuun datum täyttää jokaisen kynnyksen (rivi ”…, kernel Moon centre”), jolloin analyyttinen Kuukin pysyy kynnysten sisällä (pahin 3.8e-3, vain tiedoksi), joten tämä vertailu ei erota Kuu-malleja. ANALYYTTISEN POLUN TUORE DATA -AJO (0,36, ennakkorekisteröity 31f5283 ennen yhdenkään pisteen hakua): muuttumaton SPICE- ja NumPy-oraakkeli 151 käytetyllä EDC CRD v2 -normaalipisteellä vuosilta 2025-04..06 (vuosi, jota yksikään testi ei ollut käyttänyt; tiedostot haettu uudelleen ja oraakkeli ajettu uudelleen riippumattomasti, katso aineiston NOTICE) samoilla kynnyksillä: kirjanpito, asteet, ryhmäkohtaiset lukumäärät ja nollakytkentä yhtäläisiä; sigmat ja normit pahin 1.11e-3 (1 %:n kynnys), ehtoluku 8.95e-4 (2 %), poikki/pitkin-suhteet pahin 1.79e-3 (2 %); SPICE O-C 10,79 m. VALIDATED sillä todistusaineistolla vain kovarianssin laskennan kirjastotarkistuksena; analyyttisen jäännöksen RMS tuossa viipaleessa on 222 km, joten kynnykset eivät erota Kuu-malleja (kuten ydinrivillä). Tulokset: docs/design/evidence/mr06-llr-analytic-fresh/RESULTS.md
Testit
tests/lunar_llr_real_data.rs (11 testiä: kaikki 15 tallennettua CRD-tiedostoa tavu tavulta samat kuin niiden kirjatut tiivisteet; kaikki 349 tietuetta huomioitu, 337 käytetty ja 12 ohitettu nimetyn syyn takia; jokainen arkistoitu etäisyys sisällä…
MallinnettuKuun referenssiaseman geodesia: lisätty retroreflektori ja VLBI-majakka viiden ryhmän datumia vastenlunar_llr (over lunar_frame_campaign::beacon_information,schedule_for and solve_datum_information,lunar_vlbi_fim)
Ominaisuus
Valinnaiset syötteet extra_reflectors ja extra_beacons skenaariossa lunar-llr-datum lisäävät lohkon station_geodesy: viiden ryhmän Helmert-informaatio arkistoidusta kuulaseretäisyysviipaleesta sekä informaatio, jonka lisätty retroreflektori (mitattu niinä arkistoitujen normaalipisteiden epookkeina, joilla etäisyysmittausasema on horisontin yläpuolella, kullakin kyseisen normaalipisteen arkistoitu paino) ja lisätty VLBI-majakka (havaittu lunar-frame-campaign-verkolla ja -aikataululla Maa-asemien ollessa kiinteät, lunar-vlbi-fim-viivepartiaalien kautta) ilmoitetuilla paikoilla lisäävät seitsemän parametrin datumiin, ratkaistuna uudelleen, kunkin Helmert-parametrin 1-sigma ennen ja jälkeen, niiden suhde, normit ennen ja jälkeen sekä Fisher-erotuksen ääriominaisarvot. Poissa ollessa tai tyhjänä raportti on muuttumaton
Oraakkeli
Vain sisäinen johdonmukaisuus: jokainen lisätty paikka on erillinen piste ja laseretäisyys tai kiinteän aseman VLBI-viive koskettaa yhtä pistettä, joten sen informaatio A_p^T M_p A_p on positiivisesti semidefiniitti ja lisääntyy; testi tarkistaa Fisher-erotuksen ja jokaisen varianssin sitä vasten. Viiden ryhmän tulos on olemassa oleva todellisen datan rivi ja on muuttumaton. Lisätty heijastin käyttää uudelleen viidelle olemassa olevalle ryhmälle ajoitettuja epookkeja, ILLUSTRATIVE aikataulua, ja lisätyn majakan verkko, aikataulu ja viivesigma ovat ILLUSTRATIVE lunar-frame-campaign-syötteitä; paikka on ILLUSTRATIVE etelänapainen sijainti. Etelänapainen paikka näkee Maan matalalla horisontissa tai ei lainkaan, minkä olemassa olevat katsekulmatestit ilmaisevat; kumpaakaan paikkaa ei mitata jatkuvasti. Luvut ovat Cramér–Rao-rajoja supistetulle parametrijoukolle, eivät ratkaistu datum eivätkä lausuma minkään todellisen aseman suhteen
Testit
tests/lunar_station_geodesy.rs (empty_or_absent_extra_lists_are_bit_identical: tyhjät luettelot ja perusviivaesimerkki antavat oletusraportin ja yhteenvedon tavu tavulta; an_added_site_never_increases_any_variance: …
Tyypin lunar-llr-datum seitsemän parametrin Helmert-datumkovarianssi arkistoiduista ILRS-normaalipisteistä ja niiden mitatuista painoista ydinpolulla: geosentrinen Kuun keskipiste luetaan JPL DE440:stä moottorin oman ydinlukijan kautta (planetary_kernel_path; lunar_llr::llr_geometry_with, ephem_provider::KernelEphemeris). Vain Kuun keskipiste eroaa analyyttisestä rivistä; IAU 2015 -orientaatio, puuttuva napaliike ja UT1, luettelot, valintasäännöt, painot ja lineaarialgebra ovat samat. Validoitu väite on vain, että tämän polun datumkovarianssi täsmää riippumattomaan SPICE- ja NumPy-oraakkeliin tuoreilla, näkemättömillä normaalipisteillä. Vertailu ei erota Kuu-malleja eikä tarkista Kuun keskipistettä: samalla viipaleella analyyttinenkin Kuu läpäisee jokaisen kynnyksen, ennakkorekisteröity mutaatio (ydin-Kuu luettuna tunnin myöhässä) jäi havaitsematta, ja noin 4 650 km väärä Kuun keskipiste läpäisee myös (katso oraakkelitekstiä). Se ei ole todiste siitä, että ydin-Kuu parantaa datumia. Ajettavissa skenaariona lunar-llr-datum asetuksella planetary_kernel_path (ja normal_points_dir toista viipaletta varten)
Oraakkeli
NAIF SPICE Toolkit N0067 (spiceypy 8.2.0, MIT) kaksisuuntaiset valoajat DE440:llä, ITRF93-Maan orientaatio ja DE440:n kuun orientaatio (MOON_ME) 100 m:n differenssipartiaaleilla, sekä numpy 2.3.5 (BSD-3-Clause, LAPACK) informaatiomatriisi ja käänteismatriisi: analyyttisen rivin vertailun (6b27964a) muuttumaton generaattori ajettuna tuoreella viipaleella (EDC CRD -normaalipisteet, 2019-04..06), ennakkorekisteröity versiossa 830d945a ennen kuin mitään siitä haettiin, analyyttisen rivin kynnyksillä (1 % sigmat ja normit, 2 % ehtoluku ja suhteet, täsmällinen kirjanpito, asteet ja kytkentä) ja sen oraakkelin itsetarkistuksella (SPICE O-C 10,86 m < 100 m). Jokainen suure pitää, pahin 7.6e-5. Mutaatiot: suunniteltua tunnin Kuu-viivettä EI havaita (kovarianssi riippuu näkölinjojen hajonnasta, ei niiden ajoituksesta); jälkikäteen valittu ja sellaiseksi ilmoitettu rakenteellinen mutaatio, alalinkin partiaalin pudotus, epäonnistuu jokaisen sigman osalta. Havainto: tässä viipaleessa analyyttinen Kuukin läpäisee (pahin 3.8e-3), joten kynnys ei erota Kuu-malleja ja tämä validoi kovarianssin tuoreella datalla, ei ydin-Kuun parannusta. Integraattoritarkistus yhdistämisvaiheessa (ei ennakkorekisteröity): ydin-Kuu luettuna suhteessa Maa–Kuu-massakeskipisteeseen Maan sijaan (jäännös-RMS 4 649 km) ja ydinepookki ilman TT miinus UTC -termiä (69 s; jäännös 2,6 km) läpäisevät kumpikin yhä jokaisen kynnyksen, kun taas sqrt(n_raw):n pudotus mitatuista painoista epäonnistuu kaikissa 16 kaistoitetussa suureessa; vertailu on herkkä painoille, partiaaleille ja lineaarialgebralle, ei Kuun keskipisteelle. Molemmat puolet lukevat DE440:n: tämä validoi laskennan DE440:llä, ei DE440:ää. Väitteen ulkopuolella: LLR-tarkkuus (Cramér–Rao-raja supistetulle parametrijoukolle)
Testit
tests/validate_llr_datum_kernel_moon_fresh.rs::llr_datum_kernel_moon_matches_spice_and_numpy_on_fresh_normal_points (447 näkemätöntä 2019-Q2-normaalipistettä; sigmat ja normit 4.0e-5 sisällä arvosta 1e-2, ehtoluku 1.6e-5 arvosta 2e-2…
ValidoituSisäänrakennettu analyyttinen kuun efemeridi: sen ILMOITETTU TARKKUUSRAJA tarkistettu todellista dataa vastenephem (moon_position),lunar_llr,realdata::llr_crd
Ominaisuus
ephem::moon_position, matalatarkkuuksinen geosentrinen kuusarja, johon kirjasto palaa, kun DE/SPK-ydintä ei ole, mitattuna todellista kuulaseretäisyysmittausta ja julkaistua planeettaefemeridiä vasten samalla ajanjaksolla. Tämä rivi validoi rajan, jonka moduuli ilmoittaa itsestään, EI tarkkuutta: sarjan on vahvistettu olevan ei huonompi kuin se sanoo, ei vahvistettu hyväksi
Oraakkeli
KAKSI riippumatonta ulkoista aineistoa, jotka eivät jaa mitään. (1) 337 arkistoitua ILRS-kuulaseretäisyyden normaalipistettä (EUROLAS Data Center, DGFI-TUM, 2015-04-08–2015-06-27, viisi retroreflektoriryhmää, sitoutettu tiedostokohtaisin SHA-256-tiivistein ja uudelleenlataus-ja-varmenna-skriptillä): havaittu miinus laskettu yksisuuntainen etäisyys 156 494 m RMS, asemakoordinaatit IERS ITRF2020:sta ja heijastinkoordinaatit JPL DE430 Taulukosta 7, joten jäännöksessä hallitsee Kuun keskipistesarja. (2) JPL Horizonsin geometriset geosentriset Kuun tilat samalle ajanjaksolle: 112 567 m RMS radiaalinen, 195 655 m RMS vektori, pahin epookki 360 324 m = 0,0536°. Etäisyysjäännös reagoi efemeridivirheen RADIAALIOSAAN, joten (1) ja (2) ovat sama suure saavutettuna kahta kautta ja täsmäävät 1,39× tarkkuudella, mikä oikeuttaa skenaarion lunar-llr-datum lukemaan jäännöksensä efemeridin piikkiin. Moottorin oma moduulidokumentaatio väittää ~0,3° / ~muutama·10² km; molemmat mittaukset ovat sen sisällä, kulmaväite 5,6×:n marginaalilla. RAJAUS, ilmoitettu niin, ettei lukija voi ymmärtää väärin: tämä validoi ilmoitetun RAJAN, ei tarkkuuslukua. Sarja pysyy sopimattomana mihin tahansa sovellukseen, joka tarvitsee parempaa kuin ~1e5 m, ja tämä rajoitus on rivin sisältöä siinä missä yhtäpitävyyskin. Regeneroitavissa offline sitoutetuilla haku-ja-varmenna-skripteillä
Testit
tests/lunar_llr_real_data.rs::the_analytic_moon_series_disagrees_with_jpl_by_the_same_amount (12 viikoittaista geosentristä tilaa, huonoimman epookin kulma varmistettu < 0,3° ja RMS < 5e5 m moduulin oman dokumentoidun väitteen vastaisesti…
MallinnettuPortin eheys: vihreä, joka tarkoittaa sitä, mitä se sanooscripts/gate.sh,scripts/check-gate-receipt.sh,scripts/check-repeatability.sh,scripts/install-gate-hook.sh
Ominaisuus
Kolme rakenteellista suojaa itse verifiointiprosessin ympärillä, kukin sulkien virheluokan, joka pääsi kanoniseen porttiin ajoittaisena tai virheellisenä punaisena. (1) Jokaisella Rust-lähteissä muodostetulla väliaikaisella polulla on oltava kutsukohtaisesti yksilöllinen osa; prosessitunnus hylätään, koska cargo ajaa kirjastotestit yhden PROSESSIN rinnakkaisina säikeinä ja pid on yhteinen kaikille. (2) Jokaisen tavu tavulta -lukituksen tai tiivistelukituksen on ilmoitettava vieressään tai moduulin otsakkeessa, mitä se kattaa ja mitä se tarkoituksella jättää pois, jotta läpileikkaava muutos näkee yhdellä silmäyksellä, mitkä lukitukset ovat soveltamisalassa ja mistä on hiljaa tullut koko repositorion muutostunnistimia. (3) Vihreä voidaan väittää vain KOKO testisarjasta: scripts/gate.sh ajaa cargo test --all, tallentaa todellisen poistumiskoodin ilman putkea tiellä ja kirjoittaa kuitin, joka nimeää commitin, integraatiobinäärien lukumäärän, testien lukumäärän ja keston; push-tarkistus kieltäytyy pushista, jonka commitia mikään kelvollinen kuitti ei nimeä, puhtaalla työpuulla. Toistettavuutta otantana mittaa erikseen scripts/check-repeatability.sh, joka ajaa kirjastosarjan N kertaa ja epäonnistuu, jos läpäisevien testien joukko eroaa.
Oraakkeli
Suljettu muoto: jokainen suoja ajetaan kiinteän tunnetusti virheellisen palan yli, jonka on laukaistava, ja kiinteän tunnetusti oikean palan yli, jonka on pysyttävä hiljaa, molemmat kirjaimellisia vakioita, joihin ilmaisin ei voi vaikuttaa. Kaksi tunnetusti virheellistä palaa ovat F22- ja F25-virheet alkuperäisessä muodossaan. Tämä on SISÄINEN oraakkeli ja rivi on MODELLED sen mukaisesti: se todistaa, että suojat erottavat virheen sen korjauksesta, ei sitä, että niiden kuvaamat luokat ovat tyhjentäviä. Niiden ilmoitetut sokeat pisteet, jaettu tila, joka ei ole polku, lyhyeen nimettyyn vakioon sidottu lukitus, harvinainen kisatila, jota kolme ajoa ei otanna, ja kuitti, jonka kuka tahansa tiedoston kirjoittaja voi väärentää, on kirjoitettu auki tiedoston tests/source_guards.rs moduulidokumentaatiossa ja kunkin skriptin otsakkeessa sen sijaan, että ne jätettäisiin löydettäviksi.
Testit
tests/source_guards.rs (9 testiä: molemmat suojat koko lähdepuun yli, sekä mutaatiotestiaineistot, jotka arvioivat kumpaakin suojaa molempiin suuntiin — F22-kuvio raportoituna molemmilla törmäävillä poluilla, toimitettu atomisekvenssi…
P2: numpy 2.3.5 linalg.lstsq ja scipy 1.18.1 (norm.isf, norm.sf, brentq) laskevat omilla algoritmeillaan uudelleen osajoukkojen painotetut pienimmän neliösumman estimaattorit, yleisen erotuskovarianssin sqrt(Δ Σ Δᵀ), harhat ja niistä suojaustason 300 sitoutetulla syötteellä (tests/fixtures/tpl_scalar_numpy_oracle); PL täsmää 1e-9 suhteellisen tarkkuuden sisällä (pahin 1.2e-10) ja ohjaava poissulkuosajoukko on identtinen, toleranssi kiinnitetty ennen vertailua. Kertoimet, priorit ja harhan ylärajat ovat syötteitä, ja PL-yhtälön rakenne (moodilista, ir/2-jako, harhaprojektio) on ilmoitettu syöte, kuten Lunar ARAIM -suojaustasoytimen rivillä; validoitu väite on lineaarialgebra ja PL näillä syötteillä, ei ajoitusskenaarion fysikaaliset suuruudet. ARAIM-sukulinja Blanch 2015 / Joerger 2014
ValidoituKoostettu ajoituksen PL: holdover-verhokäyrän kattavuus, usean vuoden alue (tau>=90d)src/integrity/composed_pl.rs
Ominaisuus
Juokseva maksimiverhokäyrä ylärajaa (nollaa lävistämättä) todellisen metrologisen sarjan jokaisella testatulla viiveellä tau>=90d erillisellä jaksolla; lyhyt tau (<=30d) on ilmoitettu Modelled-raja
Oraakkeli
BIPM Circular-T [UTC-UTC(USNO)] 5 päivän sarja MJD 56074-60429 (872 pistettä, webtai API); erilliset sovitus/testi, usean vuoden nollaa lävistämätön kattavuus
Testit
tests/cti_holdover_coverage_reference.rs
MallinnettuKoostettu ajoituksen PL: LIL a.s. -verhokäyrä (mahdottomuus + johdonmukaisuus)src/integrity/lil_envelope.rs
Ominaisuus
Äärellistä pahimman tapauksen holdoveria ei ole (Brownin supremum hajaantuu); IR-allokoitu HPL on johdonmukainen Hartman–Wintner-verhokäyrän kanssa, kun IR→0
Lähdekohtainen harhan yläraja b = (U/k_cov)·Phi^-1(1-tail/2) + ikääntyminen, joka paisuttaa julkaistun tyypin B laajennetun epävarmuuden allokoiduksi eheyshännäksi; silta tpl_scalar-tyyppiin muodossa bias_s
Oraakkeli
Riippumaton numpy- ja stdlib-statistics-toisto ylärajan suljetusta muodosta (InternalConsistency). BIPM Circular-T [UTC-UTC(USNO)] -sarja on vain LAINATTU syöte: se on SAMA sarja, joka on jo Validated R4-holdover-kattavuusrivillä, eikä sitä validoida tässä uudelleen; sen arvojen toistaminen ei todista mitään R2:sta. Syvä eheyshäntä on Modelled. 0,30 ulkoinen vertailu, havainto (pysyy MODELLED): BIPM:n laboratoriokohtaisilla UTC-UTC(k)-tiedostoilla (102 laboratoriota, 105 024 riviä julkaistuin epävarmuuksin) yläraja b = 2,576 u hännällä 1e-2 ylittyy 50,8 %:ssa riveistä (Clopper–Pearson 95 %: 50,4–51,1 %) ja yli 1 %:ssa 101 laboratoriossa 102:sta. Julkaistu u on BIPM:n UTC-UTC(k)-määrityksen epävarmuus, ei offsetin yläraja, joka rutiininomaisesti nousee moninkertaiseksi u:hun nähden; ilmoitettu yläraja ei rajaa todellista UTC(k)-jäljitettävyysharhaa. 0,30 kierros 2, toteutuneiden UTC-UTC(k)-offsettien yläraja koulutettuna 2015–2022 ja testattuna BIPM Circular T -datalla 2023–2026 (ennakkorekisteröity ca0921a4, yhdistetty ylitys enintään 1e-2), havainto (pysyy MODELLED): yhdistetty ylitys on 0,0333 (694 riviä 20 826 rivistä, 82 laboratoriota; 0,0127 ilman 430 riviä, joilla ei säännön mukaan ole rajaa). D9 kierros 3, yhdistetty hierarkkinen ikääntymisraja (utck_bound), ennakkorekisteröity fb475550 ja pisteytetty ennakoivasti Circular T -numeroilla alkaen 465: ei vielä ajettu (numero 465 julkaistiin 2026-10-12 noin 285 testiarvolla; ennakkorekisteröity 1000 arvon sääntö vaatii numerot noin 468:ään, ja ajo vaatii arkistoidut 2026-09-30-laboratoriokohtaiset tiedostot, koska BIPM on sittemmin kirjoittanut uudelleen 113 tiedostosta 87)
Testit
integrity::hetero_budget::tests + tests/hetero_budget_reference.rs; tests/hetero_budget_utc_k_oracle.rs::overbound_exceedance_on_real_utc_k_finding (data-gated: skips with a message when the BIPM series is absent)…
Riippumaton numpy-toisto ristikovarianssista ja korreloituneen vs. riippumattoman fuusioidun harhan epäyhtälöstä (InternalConsistency). Edustava lähdejoukko; Modelled-skenaario.
Käsin kirjoitettu Cholesky Omega=LL^T ja eteenpäinsijoitusvalkaisu z=L^-1 r (Cov(z)=I kun Cov(r)=Omega); Mahalanobis-neliö z^T z = r^T Omega^-1 r
Oraakkeli
P2: numpy 2.3.5 linalg.cholesky (LAPACK potrf), solve (gesv) ja inv 201 sitoutetulla SPD-syötteellä (tests/fixtures/gls_whitening_numpy_oracle) tarkistavat käsin kirjoitetun tekijän, valkaistun jäännöksen ja valkaisuoperaattorin; Mahalanobis-neliö tarkistetaan funktiota solve(Omega, r) vasten, joka ei käytä Choleskya, joten identiteetti z^T z = r^T Omega^-1 r varmistetaan erillistä reittiä. Kaikki 1e-12 suhteellisen tarkkuuden sisällä (pahin 7.9e-16), toleranssi kiinnitetty ennen vertailua. Suurin ehtoluku on 19,3, joten huonosti ehdollistetut matriisit eivät sisälly. GLS/Aitken 1935 -valkaisu on Cited.
Pistetilasto (1^T Omega^-1 r)^2/(1^T Omega^-1 1) ~ chi^2_1 yhteismuotosiirtymälle, jota ratkaisuerotus (kontrastit ovat ortogonaalisia vektoriin 1 nähden) ei näe; yhteismuotosiirtymä paisuttaa sitä, kun taas pareittaiset erotukset pysyvät tasaisina
Oraakkeli
Riippumaton numpy-toisto tilastosta + ominaisuustesti, jonka mukaan yhteismuotoinjektio paisuttaa sitä (InternalConsistency). Mallinnettu skenaario. 0,30 kierros 2 (ennakkorekisteröity f9aa360d), estetty (pysyy MODELLED): numpy 2.3.5 LAPACK gesv toistaa tilastoarvon 261 sitoutetulla tapauksella (alle 3.5e-15 hyvin ehdollistetuilla, 1.2e-9 ehtoluvulla aina 6.1e7 asti); khiin neliö(1) -nollajakauma on lainattu lause ja tasaiset pareittaiset erotukset identiteetti, joille ei ole moottorin tulostetta vertailtavaksi, joten rajauksen ratkaisu odottaa omistajan päätöstä
Havaitsematon yhteismuodon katto: suurin vikasuuruus suuntaan d, joka välttää SEKÄ erotuksen (alpha_ss = T_ss / d:n valkaistun kontrastin normi) ETTÄ yhteismuotoilmaisimen (alpha_cm = sqrt(T_cm 1^T Omega^-1 1) / |1^T Omega^-1 d|), raportoituna arvona min(alpha_ss, alpha_cm). Positiivisesti definiitillä Omegalla kaksi sokeaa suuntaa (d verrannollinen suuntaan 1, ja 1^T Omega^-1 d = 0) ovat toisensa poissulkevia, joten katto on ÄÄRELLINEN jokaiselle nollasta poikkeavalle d:lle; se on ääretön vain nollasuunnalle tai ei-positiivisesti definiitille Omegalle. Mallinnetun yhteisakselin ulkopuolinen suunta on sokea vain yhteismuotoilmaisimelle ja sen rajaa erotus
Oraakkeli
P2: numpy 2.3.5 linalg.solve (LAPACK gesv, LU ilman Choleskya) laskee uudelleen alpha_ss:n (kynnys jaettuna d:n valkaistulla kontrastinormilla sen GLS-yhteismuotokertoimen poistamisen jälkeen), alpha_cm:n ja niiden minimin 256 sitoutetulla (Omega, d, T_ss, T_cm) -syötteellä (tests/fixtures/gls_outside_omega_bound_numpy_oracle), mukaan lukien puhtaat yhteismuotosuunnat, mallinnetun yhteisakselin ulkopuoliset suunnat sekä nollasuunta- ja ei-positiivisesti definiitit tapaukset, joiden on annettava +inf; ennakkorekisteröity (d070699a; muutos 8a44267b ennen mitään vertailua, matriisimuodon uudelleenmuotoilu); toleranssit kiinnitetty ennen vertailua. Kyvykkyysteksti korjattiin omistajan päätöksellä (2026-10-02): se oli sanonut rajan olevan ääretön yhteisakselin ulkopuoliselle suunnalle, mikä oli ristiriidassa koodin ja tämän vertailun kanssa. Se, että idealisoitu yhden kontrastin ilmaisin alirajaa todellisen osajoukkoilmaisimen havaitsemattoman suuruuden, pysyy tasolla Modelled
7-parametrisen Helmert-datumin Fisherin {lunocenter-X, scale} -lohkon Schur-komplementtimarginaali: skalaarinen degeneroituneisuusmitta lambda_min(S), origo-X:n CRLB ja origon ja skaalan korrelaatio
Oraakkeli
Riippumaton SciPy/NumPy-vertailu (scripts/gen_datum_identifiability_ref.py -> tests/fixtures/datum_identifiability/scipy_ref.csv): Schur-komplementti, sen ominaisarvot ja 2x2-käänteismatriisi laskettuna riippumattomalla kirjastolla. Rajattu hajotelman LINEAARIALGEBRAAN; kuun korrelaation ja CRLB:n SUURUUDET todellisesta geometriasta ovat edelleen MODELLED.
Testit
tests/lunar_datum_identifiability_reference.rs::decompose_matches_scipy_reference (16 synteettistä 7x7 SPD-matriisia, jotka kattavat hyvin ehdollistetuista {0 3}-lähes-rappeutuneisiin; Schur lambda_min / origon CRLB / |corr| vs…
Sisäisen etäisyydenmittauksen datumongelman luokittelu: yksittäinen etäisyyshavainto tuottaa asteen 1 (6-ulotteinen nolla-avaruus); origo-X:n ja skaalan pari on lähes nolla, ja fysikaalinen DE440-libraatio nostaa vajauksen nollaan, vaikka pari pysyy lähes degeneroituneena
Oraakkeli
Moottorin toistama geometrinen rakenne sekä suljetun muodon 2x2-Schur-identiteetti; RAKENTEELTAAN johdonmukainen Sosnican ym. 2025 (arXiv:2510,15484) kanssa, jonka raportoituja suuruuksia EI toisteta tässä. Luokittelu on rakenteellinen; korrelaation ja CRLB:n suuruudet todellisella geometrialla ovat MODELLED (heijastinkoordinaatit ja orientaatio pidetään kiinteinä). 0,30 ulkoinen vertailu, havainto (pysyy MODELLED): Sosnicaa ym. 2025 vasten etäisyys-Fisherin origon ja skaalan korrelaatio (-0.993 / -0.988) poikkeaa julkaistusta -0.97:stä alle 0,05, mutta artikkelin omalla viiden heijastimen geometrialla yhtäpainoinen 7-parametrinen Helmert-korrelaatio on -0.78 (julkaistu arvo perustuu heijastinkohtaisiin virheisiin, joita artikkeli ei tulosta), ja origon CRLB (0,6–1,2 mm 3 mm:n etäisyyskohinalla) on 96–98 % artikkelin 3,07 cm:n alapuolella 20 %:n toleranssia vasten. Suuruuksia ei toisteta
MallinnettuUsean tekniikan kuun datuminformaatio (LLR + kuun VLBI + kiertäjän etäisyys)lunar_datum,lunar_identifiability
Ominaisuus
Datum-Jacobin rivit Maa–heijastin-LLR-etäisyydelle, kahden aseman kuun VLBI-differentiaaliviiveelle ja kiertäjä–majakka-etäisyydelle 7-parametrisen datumin yli, yhdistettynä yhdeksi johdonmukaisesti esiehdollistetuksi Fisheriksi; osoittaa, että radiaalisuunnan ulkopuolinen (kiertäjä / syvyysmoninainen) seuranta rikkoo origo-X:n ja skaalan degeneroituneisuuden, kun taas poikittainen VLBI auttaa vain epäsuorasti
Oraakkeli
Analyyttis- ja differenssipohjaiset ristiintarkistukset kunkin tekniikan partiaaleille (sisäinen); parannuksen SUUNTA on geometrinen tosiasia. Majakoiden sijainnit, aikataulut ja kohina ovat MODELLED/edustavia (katso tests/fixtures/llr_geometry/NOTICE.md).
Testit
lunar_datum::tests (LLR/VLBI/orbiter analytic partials vs finite difference); lunar_identifiability::tests (adding_an_offradial_technique_collapses_the_origin_scale_degeneracy; transverse-vs-radial via crlb_diag)
ValidoituDE440:n kuun pääakselien orientaation tarjoajalunar_orientation
Ominaisuus
MOON_PA_DE440 → J2000 -kierto mielivaltaisilla epookeilla välillä 2014-01-01–2030-12-31 TDB, geodeesisella interpolaatiolla R0·Exp(f·Log(R0ᵀR1)) sitoutetun 6 209 rivin päivittäisen sarjan solmujen välillä (try_-funktiot palauttavat virheen OrientationSpanError sen ulkopuolella, ei-virheelliset paniikkaavat; ei koskaan rajaa arvoa); upotettu käännösaikaan, joten ajonaikaista tiedostojärjestelmän I/O:ta ei ole ja WASM-käännös kantaa sen mukanaan
Oraakkeli
NAIF SPICE Toolkit (CSPICE N0067 spiceypy 8.2.0 kautta, ajettu työkaluna): pxform MOON_PA_DE440:stä J2000:een evaluoiden JPL:n binäärisen PCK-tiedoston moon_pa_de440_200625.bpc suoraan NAIFin oman kehyskernelin moon_de440_250416.tf kanssa 2 000 satunnaisella solmujen ulkopuolisella epookilla upotetussa ikkunassa. Kshanan ja SPICEn matriisien välinen kiertokulma on 1.7e-5 rad:n sisällä (30 m keskisäteellä 1737,4 km, kiinnitetty ennen vertailua); mitattu pahin 1.7e-6 rad (3 m), RMS 7.8e-7 rad ja pahin 1.75e-6 rad vielä 6 000 epookilla, jotka varmentaja arpoi. Päivittäiset solmut oli itse poimittu samasta kernelistä (scripts/gen_de440_moon_pa.py, aineiston SHA-256 3076f81ef95d83f5efa240ed4c7ccb422f109407dde841fcf28d42dc63586eb7), joten tämä vertailu testaa niiden välistä interpolaatiota, mikä on väite. Tämän vertailun löytämä ja korjaama: aiempi alkioittainen lineaarinen interpolaatio Gram–Schmidt-ortogonalisoinnilla säilytti akselin mutta ei kulmaa 13,2 astetta/vuorokausi -pyörimisessä ja oli virheellinen jopa 2.0e-4 rad (340 m) neljännespisteiden lähellä; aiempi noin 14 m:n luku tuli suojasta, joka otanta vain välien keskipisteet. Sarja kattaa 2014-01-01–2030-12-31 ja virhe sen ulkopuolella (kierros 2); sen 2024–2025-solmut regeneroituvat samasta kernelistä tarkkuudella 4.3e-13. Yllä oleva SPICE-vertailu solmujen ulkopuolella kattaa vain 2024–2025, mikä on validoitu ikkuna; laajennetut solmut ovat samasta kernelistä ja skriptistä, mutta niitä ei ole vertailtu solmujen ulkopuolella. Geometriasubstraatti identifioituvuusanalyysille, ei alle metrin orientaatiotuote
Viisi lähipuolen retroreflektoriryhmää PA-kappalekoordinaatistossa metreinä ja LLR-maa-asemat geodeettisina koordinaatteina; heijastimen kappale–inertia-sijoitus DE440:n PA-orientaation kautta; Maa–heijastin-etäisyyden analyyttiset partiaalit 4-parametrisen datumin suhteen; sekä pelkkä LLR-Fisher-matriisi, joka osoittaa lunokeskipisteen X:n ja skaalan degeneroituneisuuden, joka motivoi 7-parametrista analyysiä
Oraakkeli
Laskenta tarkistetaan sisäisesti: jokainen analyyttinen partiaali differenssiä vasten ja nollatapaus nimellisetäisyyttä vasten. LUETTELO tarkistetaan ulkoisesti ja riippumattomasti: DE440:n pääakselikoordinaatit (Park ym. 2021, tests/fixtures/llr_geometry/de440_retroreflectors_pa.csv) on ristiintarkistettu DE430-pintakoordinaattimuistion Taulukkoa 6 vasten (tests/fixtures/lunar_llr/de430_retroreflectors_pa.csv, koneellisesti poimittu SHA-256-varmennetusta PDF:stä tiedostolla tests/fixtures/lunar_llr/generate_de430_retroreflectors_pa.py) ja täsmäävät 1,12 m:iin, kun taas saman viiden ryhmän keskimääräinen Maa-realisaatio eroaa 672–871 m. DEGENEROITUNEISUUSRAKENNE tarkistetaan julkaistua tulosta vasten: Sosnica ym. 2025, ”Definition and Realization of the International Lunar Reference Frame”, arXiv:2510,15484, raportoi kuun pääakselikoordinaatistolle lunokeskipisteen X:n ja skaalan korrelaatiokertoimen r = -0.97 ja että LLR ei tavoita Kuun todellista massakeskipistettä paremmalla kuin 12 cm:n tarkkuudella tämän korrelaation vuoksi. Tämä moduuli toistaa saman rakenteen (|corr(t_x, scale)| välillä 0,9 ja 0,9999, datumin vajaus <= 1) pelkästä LLR-Fisher-suunnitelmasta. Vahvistus on efemeridien välinen eikä kierrätetty: artikkeli yhdistää INPOP21a:n, DE430:n ja EPM2021:n, kun taas tätä moduulia ajaa DE440-libraatio. Mitä EI toisteta, on suuruus: korrelaatio täällä on noin -0.988 heidän -0.97:ään nähden, ja 4-parametrinen CRLB on alle millimetrin heidän 12 cm:n saavutettua pohjaansa vasten, koska orientaatio ja heijastinkoordinaatit pidetään täällä kiinteinä mutta ratkaistaan siellä. Vain geometria ja degeneroituneisuusrakenne; ei tarkkuusväitettä ratkaistusta datumista. 0,30 ulkoinen vertailu: tämän moduulin mitatut etäisyysosat (reflectors(), stations_itrf(), DE440:n PA-sijoitus ja barycentrinen valoaika llr_bcrs_one_way_m) on validoitu omalla rivillään, LLR measured-range model, 192 ILRS-normaalipistettä vasten (RMS 2,81 m kynnystä 10 m vasten). Tämä rivi pysyy tasolla MODELLED, koska mitattu vertailu ei koettele muuta väitettä. Geodeettinen asemaluettelo stations() pyöristää APOLLO:n tarkkuuteen 0,001 astetta; geosentrisellä valoajalla se antaa 22,7 m samoilla pisteillä (testi reflector_ranges_against_ilrs_normal_points; 96 m aiemmalla alkioittaisella orientaatiointerpolaatiolla). Analyyttiset etäisyyspartiaalit ja pelkkä LLR-Fisher lasketaan funktioiden llr_range_m ja reflector_inertial kautta analyyttisellä Kuu-sarjalla (ephem::moon_position, noin 0,3 astetta GCRS:stä) ja ilman valoaikaa
Kuulaseretäisyyden normaalipisteen yksisuuntainen Maa-asema–heijastin-etäisyys: viisi lähipuolen retroreflektoriryhmää DE440:n pääakselien (PA) kappalekoordinaatistossa metreinä (lunar_llr_geometry::reflectors); funktion stations_itrf() asemat, nimittäin Grasse 7845 ja Matera 7941 ITRF2020:sta epookilla 2015,0 nopeuksineen, sijoitettuna Geocentric Celestial Reference Systemiin (GCRS) IERS 2010 -muunnoksella Bulletin A:n napaliikkeen kanssa (lunar_vlbi::station_inertial_position_itrs), ja APOLLO 7045 operaattorin julkaisemassa likimääräisessä geosentrisessä sijainnissa (ei nopeutta); heijastimen kappale–inertia-sijoitus DE440:n PA-orientaation kautta (lunar_orientation::try_de440_moon_pa_body_to_inertial, joka antaa virheen välin 2014–2030 ulkopuolella); sekä IERS Conventions 2010 Section 11,2 -barycentrinen valoaika (lunar_llr_geometry::llr_bcrs_one_way_m: Eq. 11,19 aseman ja heijastimen kappale–BCRS-muunnos sekä Eq. 11,17 Shapiro-viive Auringosta, Maasta ja Kuusta). SYÖTTEET, eivät osa väitettä: barycentriset Maan, Kuun ja Auringon tilat ja potentiaalit (DE440 SPICEn kautta), IERS UT1-UTC ja napaliike sekä mitattu kiertomatka muunnettuna TT:stä TDB:hen. TESTIVALJASTOPUOLI, ei osa väitettä: Mendes–Pavlis-zeniittiviive FCULa-kuvauksella testissä, korkeuskulma geodeettisesta stations()-luettelosta. Ei mallinnettu: vuorovedet, aseman eksentrisyydet, heijastimen lämpötermit
Oraakkeli
Mitattu: 192 ILRS CRD v2 -kuun normaalipistettä (EUROLAS Data Center, DGFI-TUM, 2024-04–2024-06; Grasse 151, APOLLO 32, Matera 9; sitoutettu sellaisenaan SHA256SUMS-tiedoston kanssa). Ennustettua yksisuuntaista etäisyyttä verrataan c kertaa puoleen mitatusta kiertomatkasta TDB:ssä. Ennen vertailua kiinnitetty kynnys: RMS enintään 10 m kaikilla 192 pisteellä JA pelkästään kahden ITRF2020-aseman 160 pisteellä. Kynnys on kolmannesta ennakkorekisteröinnin muutoksesta 3e0f5cdf, sitoutettu ennen moottorimuutosta ja ajoa; 10 m:n luku on muuttumaton kierroksesta 1 lähtien. Mitattu: 2,81 m (keskiarvo 2,67 m) kaikilla pisteillä; 2,96 m ITRF2020-asemilla; APOLLO 1,94 m; 2015-viipale (349 pistettä, toissijainen) 3,82 m. Mutaatio: Auringon Shapiro-osuuksien nollaus antaa 10,19 m, mikä epäonnistuu. Historia, julkistettu: 96 m alkioittaisella orientaatiointerpolaatiolla; 22,7 m geodeesisen interpolaation ja geodeettisen luettelon jälkeen; 10,94 m ITRF2020-asemilla ja napaliikkeellä mutta geosentrisellä valoajalla (yhteinen +10,9 m:n siirtymä). Barycentrinen malli kirjoitettiin sen siirtymän nähtyä. Se on julkaistu IERS 2010 Section 11,2 -malli ilman vapaita parametreja. Kolmas muutos korvasi itse asetetun kaikki-ITRF2020/SLRF2020-ehdon ESTETYN tuloksen jälkeen. Pelkkä ITRF2020-RMS läpäisee ilman APOLLOa, jolla ei ole ITRF2020- tai SLRF2020-ratkaisua ja jonka sijainti on operaattorin ilmoittama likimääräinen. Yhteinen +2,7 m jää, kynnyksen alle eikä viritetty. Kynnys on löysä tulokseen nähden: puuttuva 7,6 m:n aurinkotermi antaa edelleen 10,19 m. Kynnyksen alla olevia termejä ei erotella yksitellen: napaliike nollattuna RMS on 6,15 m (ITRF2020-asemat 5,98 m), ja Eq. 11,19 -muunnos poistettuna 2,96 m; molemmat läpäisisivät edelleen. Aseman nopeudet sekä Maan ja Kuun Shapiro-termit ovat vielä pienempiä. Vertailu validoi koostetun yksisuuntaisen etäisyyden 10 m:n RMS:llä ja aurinkoisen Shapiro-termin, ei jokaista lueteltua osaa
Testit
tests/lunar_llr_geometry_range_oracle.rs::reflector_ranges_bcrs_iers2010_relativistic (192 ILRS-normaalipistettä: RMS 2,81 m; pelkät kaksi ITRF2020-asemaa 2,96 m; molemmat enintään 10 m)…
ValidoituKytketty kuun koordinaatisto- ja aikaskaalamittaus: yhteinen spatiaalisen datumin, kellon offsetin ja kellon nopeuden nolla-avaruuslunar_gauge
Ominaisuus
assemble_coupled_info rakentaa 9-parametrisen kytketyn Fisherin parametreille [t_x, t_y, t_z, s, theta_x, theta_y, theta_z, d_tau, d_alpha]; classify_null_space palauttaa sen nolla-avaruuden kantainvariantin hajotelman vain spatiaaliseen, vain ajalliseen ja aidosti kytkettyyn ulottuvuuteen sekä spatiaalinen–ajallinen projektori -kytkentänormin; coupled_marginal_eigs antaa {scale, offset} -Schur-komplementtimarginaalin. Sitoutetuilla verkoilla moottori raportoi täysiasteisen datumin (vajaus 0) hyvin asetetulle tapaukselle ja täsmällisen yksittäisen nopeussuunnan vajauksen yhden epookin tapaukselle (kulunut aika nolla, joten nopeus on rakenteellisesti havaitsematon), ja laskee {s, d_tau} -marginaalin molemmissa.
Oraakkeli
MITÄ TARKISTETAAN ULKOISESTI, ilmoitettu suppeasti: kshana laskee ominaisarvohajotelman omalla käsin kirjoitetulla Jacobi-ratkaisijallaan (fim::sym_eig) ja marginaalin omalla pseudokäänteismatriisillaan; oraakkeli laskee molemmat uudelleen numpy/LAPACKilla (np.linalg.eigvalsh/eigh/pinv) skriptillä scripts/gen_coupled_gauge_ref.py. Yhtäpitävyys suhteellisella tarkkuudella < 1e-3 on siksi riippumaton kirjastotarkistus TÄMÄN KIRJASTON ARITMETIIKASTA vakiototeutusta vasten, mikä on validoitu väite ja sen kokonaisuus. MITÄ EI: kokoaminen ja nolla-avaruuden luokittelu ovat tämän moduulin omia sääntöjä, ja oraakkeli toistaa ne samasta spesifikaatiosta eikä riippumattomasta lähteestä: se vahvistaa toteutuksen, ei sääntöä. Majakka- ja kiertäjägeometria on Modelled ja edustava. Havaintorivit kantavat todellista DE440:n Kuun PA-orientaatiota (lunar_datum::orbiter_range_row_datum7 -> lunar_orientation::de440_moon_pa_body_to_inertial), mutta se on SYÖTE, jonka molemmat puolet saavat, ei todiste vastauksesta, ja se on kirjattu tähän alkuperätietona eikä aseman perusteena: sama ero, jonka main jo tekee yhteismuodon eheysrivillä. Jokainen rivin liukuluku pyöristetään 6 desimaaliin ennen tiedoston network.json kirjoittamista, joten molemmat puolet lukevat identtiset IEEE-754-doublet ja ainoa jäljelle jäävä ero on ratkaisija.
Testit
tests/lunar_coupled_gauge_reference.rs::coupled_gauge_matches_numpy_on_real_de440_rows (9 ominaisarvoa, defect/dim_spatial/dim_temporal/coupled_dim/p_st_norm ja {scale,offset}-Schur-reunajakauma well_posed…
MallinnettuEtäisyyden ja kellon offsetin degeneroituneisuus yksisuuntaisessa kuun etäisyydenmittauksessa sekä geometrisen moninaisuuden suunnittelulakilunar_gauge
Ominaisuus
Solmukohtainen radiaalietäisyyden ja vastaanottimen kellon offsetin degeneroituneisuus on täsmällinen: 1 m vastaa 3,336 ns (yksi per c). {scale, offset} -Schur-komplementtimarginaali (coupled_marginal_fisher) osoittaa, että geometrisesti moninaisessa verkossa kaksisuuntainen etäisyydenmittaus nostaa marginaalia suunnilleen samalla tekijällä kuin yhtä suuri määrä lisäyksisuuntaista dataa, kun taas idealisoidussa yhden solmun tilanteessa kaksisuuntainen nosto on suuruusluokkia suurempi. Siitä seuraava suunnittelulaki: geometrinen moninaisuus, ei kaksisuuntainen etäisyydenmittaus sellaisenaan, erottaa kuun koordinaatiston skaalan aikaskaalan offsetista yksisuuntaisessa etäisyydenmittauksessa; kaksisuuntainen tai ulkoinen aikasidonta tarvitaan vain vähäisen moninaisuuden tai yhden käyttäjän tilanteessa.
Oraakkeli
Kytketyn informaatiomatriisin Schur-komplementtimarginaali-Fisher suljetun muodon lineaarialgebrassa, tarkistettu kahta rajatilannetta vasten, jotka se ennustaa. 1 m:n ja 3,336 ns:n vastaavuus on metrin määritelmä c:n kautta eikä empiirinen tulos. Havaintoverkot ovat edustavaa Modelled-geometriaa, joten suunnittelulaki on lausuma sille annetusta geometriasta eikä väitä mitään mistään käytössä olevasta kuun verkosta.
ValidoituRelativistinen kellonopeuden ja koordinaatiston kytkentä kuun aikaskaalallelunar_gauge,lunar_time
Ominaisuus
rate_frame_jacobian(_with) antaa kuun aikaskaalan nopeuden herkkyyden koordinaatiston realisaatiolle päiväntasaajan efektiivisestä potentiaalista, katkaistuna asteessa 2 (GM, päiväntasaajan säde, J2, pyöriminen; LunarSurfacePotential): d_alpha/d_scale = L_m, noin +3.1388e-11; d_alpha/d_velocity = -|v_moon|/c^2, noin -1.11e-14 (aikariippuvainen); d_alpha/d_r_radial = g_eff/c^2, noin +1.806e-17 metriä kohti. 1 m:n radiaaliselle datumsiirrolle tämä on nopeushäiriö noin 1.8e-17 (radiaalialkion aritmeettinen seuraus), selvästi alle kuun aikaskaalan noin 1.7e-11 nopeusoffsetin TT:hen nähden
Oraakkeli
Ennakkorekisteröity (5590ab21): L_m Ashbya ja Patlaa 2024 (AJ 167:149) Eq. (10), 3,13881(15)e-11 vasten, artikkelin GM:stä, a_m:stä, omega_m:stä ja kahden artikkelin siteeraaman asteen 350 kentän (Bertone ym. 2021, AIUB-GRL350A/B) J2:sta, poikkeama alle 1e-4; radiaalialkio pyshtools 4.14.1 (BSD-3) -kirjaston samojen kenttien päiväntasaajan gravitaatiota vasten, poikkeama alle 1e-4 (mitattu 8.3e-5 ja 6.7e-5, kapea marginaali); nopeusalkio JPL Horizons DE441:n kuun nopeutta vasten 4.5e-3 sisällä. Asteen 2 suljettu muoto asteen 350 julkaistulle arvolle (jäännösaste 3–350; Reference, ei P1). Julkistettu: alkion 1 tulos tiedettiin ennen ennakkorekisteröintiä, ja toimitettu oletussäde 1738,14 km on artikkelin pintamääritelmä, otettu käyttöön kierroksen 1 jälkeen. Vuorovesiosuudet ja vertailukaista pysyvät Modelled-viitepintaa koskevina lukuina
Testit
tests/lunar_rate_frame_coupling_preregistered.rs (entry1_d_alpha_d_scale_matches_the_published_l_m_for_both_cited_fields: L_m 2.8e-6 sisällä arvosta Ashby ja Patla 2024 ja J2 lähteestä AIUB-GRL350A/B…
ValidoituKytketyn koordinaatisto- ja aikaskaalanolla-avaruuden kantainvariantti luokittelulunar_gauge
Ominaisuus
classify_null_space hajottaa datumin nolla-avaruuden vain spatiaaliseen (ulottuvuus d miinus aste U_T), vain ajalliseen (d miinus aste U_S) ja aidosti kytkettyyn (aste U_S plus aste U_T miinus d) osaan, sekä spatiaalinen–ajallinen projektori -kytkentänormiin p_st_norm, nolla-avaruuden projektorin ei-diagonaalilohkon Frobenius-normiin. Jokainen näistä on PROJEKTORIN eikä valitun kannan funktio, joten ne ovat invariantteja nollavektorien minkä tahansa ortonormaalin valinnan suhteen, mikä tekee luokittelun raportoitavaksi lainkaan.
Oraakkeli
SciPy/NumPy (BSD-3-Clause; scipy.linalg.null_space ja numpy.linalg.svd, LAPACK gesdd) luokittelevat samat sitoutetut matriisit aliavaruuksien leikkauksella, dim null([F; E_T]) ja dim null([F; E_S]), sekä SVD-nolla-avaruusprojektorilla, joka eroaa Kshanan Jacobi-ominaisvektoreista ja Gram-asteen kaavoista; ennakkorekisteröity (d429993c): kokonaisluvut täsmälleen, p_st_norm tarkkuudella 1e-9 (P2, riippumaton numeerinen kirjasto), asteen kynnys kiinnitetty etukäteen ja spektrivälin vähintään 1e6 varmistettu. Rivin väite on ilmoitetun matriisin luokittelu, joten P2 kattaa sen kokonaan. Rakennetut tapaukset sisältävät suoran summan, kytketyt ja sekanolla-avaruudet sekä satunnaiset uudelleenkannat; kytketyn mittarin rivin todelliset verkon ulottuvuudet eivät ole tässä uudelleenlaskettu. Kirjaston sisäinen invarianssitesti (kierretty nollakanta antaa identtiset tulokset) säilytetään
Testit
lunar_gauge::tests (classify_is_invariant_under_null_basis_rotation - akselinsuuntainen nollakanta ja sen 0,6 rad:n kierto antavat identtisen defectin, dim_spatialin, dim_temporalin, coupled_dimin ja p_st_normin…
MallinnettuEdustava usean tekniikan mittausvalikoima ja additiivinen Fisher-yhdistämissääntölunar_techniques
Ominaisuus
MeasurementBlock pitää yhden ehdokasmittauskampanjan 7x7-Fisher-informaatiopanoksena sekä skalaarisena suhteellisena kustannuksena; block_from_rows rakentaa sellaisen raakoista datum-Jacobin riveistä, jotta jokainen lohko esiehdollistetaan identtisesti funktion lunar_identifiability::assemble_multi_info kautta; combine summaa valitun osajoukon informaation, mikä on oikea sääntö, koska Fisher-informaatio on additiivinen riippumattomien mittausten yli; representative_lunar_menu tarjoaa deterministisen nelilohkoisen valikoiman (LLR, poikittainen VLBI-limbimajakka, lähipuolen kiertäjä ja kaukopuolen kiertäjä). Budjettirajoitteinen suunnitteluoptimoija, joka kuluttaa tämän valikoiman, ei kuulu tähän kirjastoon.
Oraakkeli
Fisher-informaation additiivisuus riippumattomien mittausten yli on suljetun muodon ominaisuus, tarkistettu tässä riippumattomasti kirjoitettua alkioittaista summaa vasten sekä siitä seuraavaa järjestysinvarianssia ja monotonisuutta vasten. HUOMAUTUS TODISTEISTA: yhdistäjällä ei aiemmin ollut lainkaan testiä, ja moduulin ainoa testi summasi kaksi informaatiomatriisia suoraan sen kutsumisen sijaan, joten rikkinäinen yhdistäjä olisi jättänyt moduulin vihreäksi; testi kulkee nyt funktion combine kautta ja epäonnistuu, kun sitä mutatoidaan. Kaikki majakoiden sijainnit, kiertäjägeometria, tekniikkakohtaiset tarkkuudet ja suhteelliset kustannukset ovat edustavia valintoja eivätkä tehtäväarvoja (katso tests/fixtures/llr_geometry/NOTICE.md), joten jokainen tämän valikoiman kautta saavutettu degeneroituneisuusmitta ja CRLB-luku perii funktion lunar_identifiability::decompose Modelled-aseman.
Testit
lunar_techniques::tests (combine_is_additive_order_independent_and_empty_is_zero - tyhjä valinta antaa nollamatriisin, yksittäinen valinta on identiteetti, pari vastaa erikseen kirjoitettua alkioittaista summaa, ja…
ValidoituPalveluntarjoajien välinen kuun koordinaatiston ja dynamiikan johdonmukaisuus (todellinen efemeridien välinen)lunar_interop_budget
Ominaisuus
DE440:n/INPOP21a:n/EPM2021:n geosentrisen Kuun erimielisyyden vain-rotaatio-hajotelma (6-parametrinen translaatio+rotaatio) vähennettävään yhteiseen ICRF-koordinaatistosidokseen ja palautumattomaan kuun radan orientaatioylimäärään (täysi 7-parametrinen Helmert-sovitus on erillinen julkinen funktio, jota tämä ulkoinen tarkistus EI kata: sen todistus on sisäinen analyyttinen palautusyksikkötesti sekä tests/lunar_helmert_fit_cross_check.rs, joka täsmää sen validoituun tarkkaan Gauss–Newton-sovitukseen funktiossa lunar_frame_realise ja lukitsee näiden kahden välisen vastakkaisen kiertomerkkikäytännön)
Oraakkeli
Kolme riippumatonta auktoritatiivista efemeridiä, DE440 (JPL), INPOP21a (IMCCE) ja EPM2021 (IAA RAS), otettu IMCCE calcephin kautta, ristiintarkistettu riippumattomalla numpy-SVD-pienimmän neliösumman sovituksella. MIKSI TÄMÄ ON validoitu, KUN lunar_common_mode EI OLE, samoilla kolmella efemeridillä: tässä raportoitu suure ON julkaistun datan ominaisuus, niiden keskinäinen erimielisyys, joten efemeridit ovat oraakkeli eivätkä syöte. Funktiossa lunar_common_mode sama erimielisyys syöttää MODELLED tähdistögeometriaa ja vastaus on kyseisen mallin ominaisuus, minkä vuoksi tuo rivi on oikein Modelled/ReferenceImpl.
lunar_interop_budget::tests (monotonisuus budjetin suhteen; RSS-budjetin pienentäminen palveluntarjoajakohtaisella CRLB:llä; työstetty kiertotoleranssi kuun vipuvarrella; sitova termi = kierto)
MallinnettuUsean palveluntarjoajan kuun yhteentoimivuusvirhebudjetti ja koordinaatisto vs. efemeridi -suunnittelulakilunar_interop_budget
Ominaisuus
interop_budget: vähennettävä (yhteinen koordinaatistosidos) vs. palautumaton (dynamiikka) jako käytännöillä PerProvider / CommonFrameTie / CommonEphemeris, palautumattoman osuuden suunnittelulakimittarilla (~0,69 todellisilla DE440/INPOP/EPM-arvoilla: pelkkä yhteinen koordinaatistotunniste jättää hallitsevan pohjan)
Oraakkeli
Validoitujen pariskohtaisten jakojen RMS-aggregointi kunkin käytännön alla (suljettu muoto)
ValidoituAutonominen vapaan verkon vikojen havaittavuuden lineaarialgebraketju (pariteettiprojektori, havaittavuus, MDB-epäkeskisyys, Byzantine-lohkokipinä)lunar_faultobs
Ominaisuus
Todellisella DE440-solmukohtaisella kuun verkolla (jokainen rivi differentiaalinen solmujen välinen yksisuuntainen etäisyys, rakennettu funktiolla pernode_range_row todellisella DE440:n Kuun PA-koordinaatiston näkölinjalla) moottori laskee painotetun pariteettiprojektorin P⊥ = I − G(GᵀWG)⁺GᵀW (asteeltaan vajaa pseudokäänteismuoto, joka selviää 8-ulotteisesta datum⊕aikaskaala-mittauksesta), T1-havaittavuusjäännöksen ‖P⊥·b‖ (alueen sisäiset viat annihiloituvat, yleiset viat havaittavissa), Baardan MDB-epäkeskisyysneliömuodon cᵀWP⊥c (oikea yhden P⊥:n painotettu muoto, EI kahden P⊥:n muoto cᵀP⊥WP⊥c) arvolla MDB = √(λ₀/cᵀWP⊥c), sekä pinottujen efektiivisten vertaissignatuurien P⊥·B_T Byzantine-lohkokipinän havaitsemis-/tunnistuslukumäärät (sarakeaste, ei pelkkä nollasta poikkeavuus)
Oraakkeli
Riippumaton numpy/scipy-lineaarialgebran toisto todellisilla DE440:n Kuun PA-koordinaatiston näkölinjariveillä (P⊥ valkaistun suunnittelumatriisin W^{1/2}G SVD-hajotelmasta; MDB:n epäsentraalisuusparametri klassisen Baarda-menetelmän (1968) pariteettialiavaruuden neliönormista; lohkon aste numpyn SVD:n singulaariarvojen lukumäärästä) — numeerisesti aidosti eri reitti kuin crate-kirjaston GᵀWG:n syklinen Jacobi-ominaishajotelma. Soveltamisala (tiedoston tests/fixtures/faultobs/NOTICE.md mukaan): tämä validoi VAIN LINEAARIALGEBRAPUTKEN näillä riveillä. Solmugeometria on mallinnettu. Se EI ole operatiivinen eheystakuu, suojaustason sertifiointi eikä mikään RAIM- tai ARAIM-saatavuusväite, eikä Bysantin vikasietoisuuden tehtävätakuu — tämän verkon siedettyjen vikojen LUKUMÄÄRÄ on mallinnettu, kun taas detect>f / identify>2f -lohkokipinä-RAJA on lainattu (Fawzi–Tabuada–Diggavi 2014; Shoukry–Tabuada 2016; Donoho–Eladin lohkokohtainen kipinä 2003) ja koodissa todistettu esiintymä
MallinnettuBysantin lohkokipinän havaitsemis- ja tunnistusraja autonomisessa solmukohtaisessa Kuun verkossa (T3)lunar_faultobs
Ominaisuus
byzantine_bound soveltaa turvallisen tilaestimoinnin koodaus- ja harvan havaittavuuden rajaa solmukohtaiseen verkkogeometriaan: Bysantin vertaissolmu syöttää mielivaltaisen lineaarikombinaation mittauksista, joihin se osallistuu, ja verkko HAVAITSEE jokaisen enintään f = block_spark − 1 vertaissolmun koalition sekä TUNNISTAA yksikäsitteisesti jokaisen enintään ⌊(block_spark − 1)/2⌋ solmun koalition; block_spark on pienin vertaissolmujen koalitio, jonka pinotut tehokkaat allekirjoitukset P⊥·B_T ovat sarakeasteeltaan vajaita. Vertaissolmun havaittavuus tarkoittaa matriisin P⊥·B_j TÄYTTÄ SARAKEASTETTA (nollasta poikkeava mutta asteeltaan vajaa lohko on nollasta poikkeava hyökkäys, joka päätyy avaruuteen range(G) eikä jätä jäännöstä), ei pelkästään ehtoa P⊥·B_j ≠ 0
Oraakkeli
Lohkokohtaisen kipinä- ja turvallisen tilaestimoinnin rajan geometrinen sovellus (Fawzi–Tabuada–Diggavi 2014; Shoukry–Tabuada 2016; Donoho–Eladin lohkokohtainen kipinä 2003; Candès–Tao 2005) — EI Lamportin–Shostakin–Peasen 3f+1 -konsensuskynnys (’Bysantin’ nimeää vain mielivaltaisen tai yhteistoiminnassa toimivan vikamallin). Tietty siedettyjen vikojen lukumäärä on edustavan verkkogeometrian mallinnettu ominaisuus, jonka sisäinen johdonmukaisuus tarkistetaan käsin rakennetuilla analyyttisillä tapauksilla ja lukumääräkaavoilla
MallinnettuAutonomisen holdoverin ajallisen mittakaavavapauden alaraja itseensä viittaavassa Kuun satelliittitähdistössä (T4)lunar_faultobs
Ominaisuus
holdover_floor osoittaa, että pelkillä solmujen välisillä mittauksilla yhdistetyssä autonomisten solmujen joukossa yhteinen kellotaajuus (δα_j += 1 ∀j) on joukon aikaskaalan vapaa parametri, joka kuuluu avaruuteen N(GᵀWG): mikään määrä lisää solmujen välistä etäisyydenmittausta ei tee siitä havaittavaa (rate_in_gauge = true, temporal_gauge_dim = 2 yhteisen siirtymän kanssa). Tämä on aito holdover-alaraja — jäykän koordinaatiston paikkavapauden ajallinen vastine. Yhden ulkoisen absoluuttisen taajuussidonnan lisääminen (suora yhteys verkon ulkopuoliseen vertailuun) poistaa yhteisen taajuuden nollavaruudesta (rate_in_gauge = false, temporal_gauge_dim = 1), mikä osoittaa, että alaraja on todellinen mittakaavavapaus eikä oskillaattorimallin keinotekoinen artefakti
Oraakkeli
Joukon aikaskaalan vapaan parametrin argumentti (Percival 1978; Lewandowski & Thomas 1991) sovellettuna edustavaan todelliseen DE440-solmukohtaiseen verkkoon: analyyttisen yhteisen taajuusgeneraattorin suhteellisen jäännöksen nollatesti suhteessa matriisiin GᵀWG, jossa tasapeliä ratkaiseva kontrasti erottaa aidon mittakaavavapauden oskillaattorimallin artefaktista. Edustava mallinnettu geometria, ei sertifioitu ajoitusbudjetti
Testit
lunar_faultobs::tests — holdover_floor_self_ref_and_anchored (self-referential net: the common rate lies in N(GᵀWG), temporal_gauge_dim 2; after one external rate-tie row: rate expelled from the gauge…
MallinnettuPalveluntarjoajien yhteinen ja erotuskomponentti, yhden asteen puutteen yhtenäistäminen ja suojausvälin kulmakerroin (T5 / §0 / g7)lunar_faultobs
Ominaisuus
Kolme puolta yhdestä hajotelmasta ℝ^{state_dim} = N(GᵀWG) ⊕ range(GᵀWG), jossa 8-ulotteinen datum⊕aikaskaala-vapaus on N(G) ja state_dim − 8 = 32 havaittavaa suuntaa muodostavat avaruuden range(G): (T5) provider_mismatch_split luokittelee usean palveluntarjoajan yhteisen harhan (∈ range(G)) HAVAITSEMATTOMAKSI — se vaatii ulkoisen sidonnan — ja erotusharhan (∉ range(G)) itse valvotuksi / HAVAITTAVAKSI; (§0) yhtenäistäminen tarkoittaa, että SAMA range(G)-sokea aliavaruus hallitsee havaitsemattomien vikojen luokkaa, joten datum-vapaus N(G) ja vikasokea aliavaruus range(G) ovat yksi geometria, eivät kaksi; (g7) slope palauttaa Brownin suojausvälin kulmakertoimen ‖Π_obs Δx̂‖ / ‖P⊥b‖_W → ∞ viasta b ∈ range(G) (estimaattori vääristyy nollapariteetilla) ja äärellisen havaittavasta viasta
Oraakkeli
Suljetun muodon pariteettiprojektorin ja pseudo-käänteismatriisin algebra edustavassa todellisessa DE440-solmukohtaisessa verkossa: yhteinen ja erotuskomponentti, yhtenäistäminen N(G) ⊕ range(G) ja Brownin (1992) suojausvälin kulmakerroin seuraavat kaikki avaruuden annihilaatiosta P⊥·G = 0. Edustava mallinnettu geometria, ei sertifioitu suojaustaso
Testit
lunar_faultobs::tests — provider_mismatch_split_common_undetectable_differential_detectable (common bias undetectable, differential detectable), slope_infinity_in_range_finite_detectable (g7: slope ∞ for b ∈ range(G)…
ValidoituTelecom-ajoituksen MTIE ja TDEV holdover-aikavirhesarjastatelecom_timing (mtie_sliding,mtie_curve_ns,tdev_curve_ns); allan (mtie,time_deviation)
Ominaisuus
Suurin aikavälivirhe ja aikapoikkeama, jotka skenaariolaji telecom-timing raportoi telecom-mittakaavan holdover-tallenteesta: O(n)-monotonisella jonolla toteutettu liukuikkunainen MTIE (telecom_timing::mtie_sliding, jota tarvitaan, jotta vuorokauden yhden sekunnin näytteet pysyvät nopeina) ja moottorin TDEV (allan::time_deviation), laskettuna lajin raportoimalla hilalla ja luettuna takaisin sarjan sisältävästä täydestä ajosta
Oraakkeli
allantools 2024,06 — riippumaton kolmannen osapuolen taajuusvakauskirjasto — mtie() ja tdev() tiedostossa tests/fixtures/telecom_timing/holdover_te_series.csv; sarja jäsennetään samasta 17 merkitsevän numeron tekstistä molemmilla puolilla; vertailuaineisto tallentaa sarjan SHA-256-tiivisteen ja on luotavissa uudelleen offline-tilassa tiedostolla tests/fixtures/telecom_timing/generate_telecom_timing_reference.py. Validoi ESTIMAATTORIT tällä tallenteella, ei sen tuottanutta synteettistä holdoveria
Testit
tests/telecom_timing_reference.rs (17 MTIE- ja 12 TDEV-keskiarvoistuskerrointa tallennetulla 2 048 näytteen sirumittakaavaisen atomikellon holdover-sarjalla, jossa on ikääntymistä, flickeriä ja lämpötilaa, vs allantools 2024,06 tarkkuudella <1e-12 / <1e-9…
MallinnettuITU-T-telecom-synkronointimaskit PASS/FAIL-tuloksella ja marginaalillatelecom_timing (MASKS,eprtc_a_holdover_limit_ns,check_curve,check_mask)
Ominaisuus
Transkriboidut rajat: ITU-T G.8272 (07/2025) PRTC-A/B, G.8272.1 (2024) Amd. 1 (07/2025) ePRTC lukittuna ja ePRTC-A holdover (mukaan lukien taulukon 3 aikavirheen verhokäyrä), G.8273.2 (2023) Amd. 2 (11/2025) T-BC/T-TSC-luokat A-D ja G.8271.1 (2022) Amd. 3 (05/2025) vertailupiste C, kukin avoin tai suljettu väli sellaisena kuin taulukko sen ilmoittaa, kaikki ’jatkotutkimuksen kohteena’ -merkinnät pois jätettyinä; jokaisesta tarkistuksesta tulos ja marginaali sitovassa pisteessä sekä aika kunkin budjetin ylittymiseen. Ajettavissa skenaariolajina telecom-timing
Oraakkeli
Mainittujen suositusten transkriptio (vapaasti ladattavissa osoitteesta itu.int), kunkin rajan mukana taulukko tai kohta; kaikki vahvistamattomat tai toteuttamattomat kohdat on lueteltu tiedostossa docs/TELECOM-TIMING.md; taulukoiden implikoimat taitepisteiden jatkuvuusidentiteetit tarkistetaan testeissä. Standardien transkriptio sisäisine johdonmukaisuustarkistuksineen, ei vaatimustenmukaisuustesti eikä ulkoinen validointi. 0,30 kierros 2 (ennakkorekisteröity 970003ee), estynyt (pysyy MODELLED): kymmenen maskiarvoa ja kolmetoista ePRTC-A holdover -arvoa, jotka suositukset painavat laskettuina esimerkkilukuina (G.8272 kuvat 1-2, G.8272.1 Amd.1 kohta 8.2.1 ja kuvat V.1-V.3, G.8271.1 Amd.3 kuvat 7-2 – 7-4), toistuvat puolen painetun yksikön sisällä, useimmat taulukkovakioita tai taitepisteitä; G.8271.1:n kuvassa 7-2 on merkitty 200 ns kohtaan 1,3 s, mikä on ristiriidassa sen oman taulukon 7-1 kanssa (197,5 ns). G.8273.2:n luokkien A-D rajoilla ei ole painettua esimerkkilukua, ja G.8272.1:n ePRTC-lukitun tilan taitepisteiden merkinnät (umpinaisilla rakennusviivoilla) jätettiin pois ennakkorekisteröidyn valintasäännön perusteella, joten ne jäävät transkriptioiksi
Seitsemän vakiolämpötilan MTIE- ja TDEV-wander-generointimaskia lajille telecom-timing: G.811 (09/1997) PRC (autonominen), G.812 (06/2004) tyypit I, II ja III, G.8262 (10/2024) EEC-vaihtoehdot 1 ja 2 sekä G.8262.1 (11/2025) eEEC (lukittu tila), mukaan lukien taulukoiden kirjoittamat potenssilakiosat (8 τ^0.5 ja vastaavat), kukin väli avoimena tai suljettuna kuten painettu, mitattuna lausekkeiden ilmoittaman 10 Hz:n suodattimen läpi (oletettu sovellettavan ennen näytteistystä); vertailuskenaario scenarios/telecom-synce-eec.toml asettaa vapaasti käyvän OCXO:n kolmea EEC-maskia vasten. Ei toteutettu: muuttuvan lämpötilan sallitut poikkeamat, holdover, transientit, jitter ja G.811:n taajuustarkkuus
Oraakkeli
Mainittujen suositusten transkriptio (ladattu osoitteesta itu.int 2026-10-13), jokainen rivi luettu uudelleen tekstiä vasten, ja painettujen kertoimien implikoima taitepisteiden jatkuvuus rajattu testeissä (esimerkiksi 40 · 10^0,4 = 100,48 ns verrattuna G.812:n taulukon 4 100 ns:n tasanteeseen). Standardien transkriptio sisäisine johdonmukaisuustarkistuksineen, ei vaatimustenmukaisuustesti eikä ulkoinen validointi. G.812 (06/2004) on merkitty korvatuksi esijulkaistulla 08/2026-painoksella ja G.811:llä on Amd. 1 (04/2016); kumpaakaan ei voitu lukea, joten kumpaakaan ei tarkisteta. Vapaasti käyvä OCXO-skenaario yliarvioi oskillaattorin osuuden havaintoväleillä, jotka ovat pitkiä silmukan aikavakioon nähden; se ei kerro mitään mistään laitteen kellosta
clock_log::read_input: yksi jäsennyskerros, joka muuntaa RINEX-kellotiedoston (yhden nimetyn kellon AS/AR-tietueet, versiot 2 ja 3,00 – 3,04), TimeLab-tyylisen ASCII-vaihe- tai taajuuslokin tai TAPR TICC -aikaleima- tai intervallilokin yhtenäiseksi vaihehilaksi, jossa tau0 on ilmoitettu, otsakkeesta tai mediaaniväli, jokainen aukko, hilan ulkopuolinen lukema ja kaksoiskappale lasketaan, ja käytössä on kieltäytymis-, pisimmän jakson tai lineaarinen aukkokäytäntö; kytketty valinnaisesti telecom-ajoitussarjaan ([series.clock_log], lisää clock_log-lohkon) ja kellolajiin ([clock_log], lisää measured-lohkon, jossa ADEV, TDEV ja MTIE, taulukon SHA-256 ja vaiheen SHA-256; runs = 1). Ilman taulukkoa molemmat lajit ovat tavu tavulta identtisiä
Oraakkeli
Ennakkorekisteröity tiedostossa tests/fixtures/clock_log/PREREGISTRATION.md (tallennettu yksinään, 159334f2, ennen kuin vertailuaineistoa oli olemassa); kirjattu tiedostoon RESULTS.md. Kolme siemenluvulla tuotettua synteettistä lokia, yksi formaattia kohti (TICC:n kolmen epookin aukko, ohitettava toinen RINEX-kello), luettuna takaisin riippumattomalla lukijalla, jonka sama tekijä kirjoitti tiedostosta docs/CLOCK-LOG-FORMATS.md: hila, aukkojen ja täytteiden lukumäärät ovat yhtäpitävät ja suurin vaihe-ero on 0 s (kynnys 1e-13 s). allantoolsin 2024,6 oadev, tdev ja mtie tälle vaiheelle ovat samaa mieltä suhteellisen 2.5e-14 tarkkuudella (kynnys 1e-10) jokaisella keskiarvotuskertoimella, jonka se laskee; se ei laske MTIE:tä koko tallenteelle, jonka moottori raportoi, joten sillä yhdellä pisteellä lokia kohti ei ole oraakkelin arvoa ja kynnys sellaisena kuin se on sanamuodossaan ei täyty siellä. MODELLED: synteettiset lokit, ja lukijaoraakkeli on saman tekijän tekemä; instrumenttien todellisia TimeLab-, TICC- ja RINEX-kellotiedostoja ei verrattu
Testit
clock_log::tests (käsin kirjoitetut lokit muodoittain: otsikot, erottimet, yksiköt, taajuuden integrointi, TICC-kanavat ja -tilat, aukot ja käytännöt, kieltäytymiset); tests/clock_log_allantools.rs (ennakkorekisteröity vertailu…
clock_log::read_input formaateilla ptp4l, phc2sys, ts2phc, chrony-tracking ja chrony-statistics: linuxptp-servorivin kirjattu siirtymä (ns, rivin oma hakasulkeissa oleva aikaleima; ennen kuin servo ensimmäisen kerran raportoi s2, luetut arvot jätetään pois ja lasketaan) tai chrony-tracking- tai -statistics-lokin siirtymä (s, sarakkeen sijainnin mukaan, UTC-päivämäärä ja -aika) muuttuu yhtenäiseksi vaihehilaksi samoilla aukkokäytännöillä kuin muut formaatit; lähdevalitsin (clock) nimeää yhden useista rajapinnoista, kelloista tai osoitteista; lokit syöttävät telecom-ajoitussarjaa, kellolajia ja holdover-testilajia
Oraakkeli
Vertailuaineistot kirjoitettu Kshanaa varten daemonien julkisista rivirakenteista keksityin arvoin (NOTICE.md vertailuaineistokansiossa); yhtään lokia todellisesta asennuksesta ei luettu, eikä mikään oraakkeli vertaa jäsennystä toiseen lukijaan, joten daemonien versioiden välillä eroava rakenne voidaan silti hylätä tai lukea väärin. Vaihesarjan syöttämät estimaattorit ovat samat, jotka on validoitu allantoolsia vastaan yllä olevilla riveillä
Laji holdover-test: aikavirhetallenne (linuxptp-, chrony-, TICC-, TimeLab- tai RINEX-kellaloki tai time_s,time_error_ns-parit) jaetaan kahdesta operaattorin ilmoittamasta GNSS:n poiston ja palautuksen ajankohdasta perusvaiheeksi, holdover-vaiheeksi ja palautumisvaiheeksi; perusvaihe mitataan lukitulle kellolle kirjoitettuja ITU-T-maskeja vastaan ja holdover-vaihe holdoveria tai autonomista kelloa varten kirjoitettuja maskeja, ePRTC-A holdover -verhokäyrää ja aikavirhebudjetteja vastaan; holdover-vaihe raportoi pienimmän neliösumman taajuussiirtymän, jonka järjestelmä piti, ja palautumisvaihe sen, tuliko |TE| ilmoitetun kaistan sisään ja milloin, ja pysyikö se siellä ilmoitetun viipymäajan, sekä huipun ja suurimman askeleen. Jokainen raja on sama, jonka telecom-ajoituslaji transkriboi; kaksi ajankohtaa ovat operaattorin ilmoitus eikä niitä varmenneta
Oraakkeli
Käsin tehty laskenta tallenteille, jotka on rakennettu kaavoista, joiden kulmakerroin, askel, ääriarvo ja palautumisaika tunnetaan ennen ajoa (testit ilmoittavat ne), sekä yllä olevien telecom-ajoitusrivien maskit, verhokäyrä ja budjetit. Todellisen holdoverin laboratoriomittausta ei pisteytetty eikä ulkoista oraakkelia verrattu, joten laji ei esitä väitettä mistään kellosta tai järjestelmästä; ajoituslaboratoriokumppani tarvitaan ennen kuin mitään kellaluokkakohtaista lukua voitaisiin ylentää
MallinnettuGNSS-signaalin saatavuus avaruuspalvelualueella ja sen ulkopuolella verrattuna ICG:n SSV-julkaisuunssv (constellations,geom,sweep,pattern,check)
Ominaisuus
Lajin gnss-ssv saatavuuspyyhkäisyt: tähdistöittäin (GPS, GLONASS, Galileo, BDS, QZSS, NavIC) ja yhdistettynä sellaisten (käyttäjä, epookki) -parien osuus, joilla on vähintään yksi ja vähintään neljä signaalia, sekä pisin katko, käyttäjälle pallolla (julkaisun 2,562 pisteen maailmanlaajuinen kuori, 14 päivää 1 minuutin välein) tai lentoradalla (GEO, HEO, Kuuhun siirtymärata), julkaisun liitteen C Kepler-radoista, vakiomääräisellä vähimmäissäteilyteholla vertailupoikkeamakulman sisällä, Maan peittymisellä pallo plus 50 km sekä C/N0-kynnyksellä; käyttäjäantennit julkaisun taulukosta B10
Oraakkeli
ICG:n Space Service Volume -julkaisu (UN OOSA ST/SPACE/75, 2018), joka on itsekin simulaatio, johon verrattiin ennen ajoa tallennetun ennakkorekisteröinnin mukaisesti (xval/gnss-ssv/PREREGISTRATION.md; tulokset tiedostossa xval/gnss-ssv/RESULTS.md, kiinnitetty testillä tests/ssv_booklet_results.rs, myös epäonnistumiset mukana). Ajo 1 ennakkorekisteröidyllä tulkinnalla: vähimmäissäteilytehovakiot ja Kuun kynnys ovat samaa mieltä (S0, S6 täyttyvät); ylemmän ja alemman SSV:n, RF-kynnyksen, GEO:n ja HEO:n kynnykset ovat NOT MET, lähes kaikki GLONASSin kautta, jolle julkaisu antaa 20 ja 28 astetta taulukoissa B2 ja B6 sekä 26 ja 34 astetta taulukossa 4,2. Diagnostiikkavariantti taulukon 4,2 kulmilla on samaa mieltä ylemmän SSV:n, alemman SSV:n ja kuuden GEO-tehtävän jokaisessa solussa (se ei korvaa ajoa 1; RF-, HEO- ja Kuun solut silti ohittavat kynnyksen). Mitattuja GPS L1 -paneelin kuvioita parametrinen korvike ei toista (RMS 6 – 9 dB kynnyksen 3 dB sijaan). Yhtäpitävyys osoittaa, että julkaisun ilmoittama menetelmä toistuu, ei sitä, että GNSS-signaalit käyttäytyvät niin
MallinnettuReunasäteen ionosfääri-, plasmasfääri- ja ilmakehävaikutukset hipoviin GNSS-signaaleihin sekä heikon signaalin vastaanottimen suunnittelu lajissa gnss-ssvssv (limb,weak)
Ominaisuus
Chapman-ionosfääri, Gallagher-tyyppinen plasmasfääri ja neutraali ilmakehä (taitekertoimen taipuma, hapen absorptio, defokusointi) integroituna lähettimen ja käyttäjän välistä suoraa sädettä pitkin: vinon suuntaisen kokonaiselektronisisällön, sen plasmasfäärisen osan, ylimääräisen viiveen, tangenttikorkeuden ja hipovien yhteyksien häviön laskenta; sekä heikon signaalin vastaanottimen suunnittelu (koherentti ja epäkoherentti integrointi, databittirajoitus, avustus, Doppler-haku), joka asettaa C/N0-kynnyksen hankinta- ja seurantasilmukkamalleista
Oraakkeli
Suljetun muodon ratkaisut ja julkaistut suuruusluokat testeissä (Chapman-kerroksen huippu ja pinnan reunan taipuma, muutama TECU plasmasfääriä GPS–GEO-säteellä); vastaanottimen suunnittelu käyttää uudelleen hankinta- ja seurantasilmukkamalleja ja niiden testejä. Mitään mitattua reunasondaus- tai heikon signaalin vastaanottoaineistoa ei verrata siihen
MallinnettuAluksella toimiva GNSS-navigointisuodatin korkean radan ja Kuuhun siirtymäradan avaruusaluksillessv::nav (run_nav,Ekf)
Ominaisuus
Lajin gnss-ssv tila [navigation]: yhdeksäntilainen laajennettu Kalman-suodatin (paikka, nopeus, vastaanottimen kellon harha ja ajautuma, auringon säteilypaineen skaala) pseudoetäisyyksillä, joiden saatavuus, kohina ja C/N0 tulevat samasta yhteysgeometriasta kuin pyyhkäisyissä; totuus integroidaan J2:lla, Auringon ja Kuun kolmannen kappaleen vaikutuksella ja säteilypaineella varjo huomioiden, suodatin mallintaa J2:n ja kolmannet kappaleet ja estimoi säteilypaineen; raportoi paikka- ja nopeusvirheet GNSS-ratojen sisä- ja yläpuolella, pisimmän mittausaukon ja keskimääräisen NEES:n
Oraakkeli
Simuloitu totuus suodattimen omaa estimaattia vasten (johdonmukaisen suodattimen keskimääräinen normalisoitu estimointivirheen neliö on paikalle noin 3) ja determinismi kiinteällä siemenluvulla. Lento- tai tallennettua korkean radan GNSS-dataa ei verrata; Aurinko ja Kuu ovat matalan tarkkuuden ympyräratakorvikkeita
MallinnettuUsean avaruusaluksen muodostelman suhteellinen navigointi erittäin elliptisellä radalla GNSS:n avullassv::formation (run_formation,RelEkf)
Ominaisuus
Lajin gnss-ssv tila [formation]: päällikkö ja apulaiset ajavat kukin absoluuttista suodatinta; apulaisen paikka suhteessa päällikköön estimoidaan vähentämällä absoluuttiset estimaatit ja suhteellisella suodattimella molempien alusten seuraamien signaalien yksittäiserotetuilla pseudoetäisyyksillä, jolloin suhteellinen dynamiikka on kahden epälineaarisen lentoradan erotus
Oraakkeli
Sama simuloitu totuus kuin absoluuttisella suodattimella: suhteellisen suodattimen virhe todelliseen suhteelliseen tilaan nähden sekä tarkistus, että se suoriutuu vähintään yhtä hyvin kuin kahden riippumattoman absoluuttisen paikan vähentäminen. Lentomuodostelman dataa ei verrata
MallinnettuTehtävävaiheiden ketjun navigoinnin ja ajoituksen virhebudjetti laukaisusta paluuseen (mission-thread)mission_thread (scenario,handover,conversions,budget,phase)
Ominaisuus
Tyyppi mission-thread: vaiheiden asiakirja, jossa kukin vaihe on yksi kahdeksasta rekisteröidystä tyypistä, ajetaan järjestyksessä ja 6x6-kovarianssi, kello ja koordinaatisto siirretään eteenpäin ilmoitetun säännön mukaan (carry; inflate, valkoinen kiihtyvyyskohina ilmoitetun välin yli suoraviivaisella mallilla; reacquire, dead reckoning ja sitten lähteen lattia, ei koskaan sen alle, ei koskaan nollausta); koordinaatistomuunnokset GCRF, MCI ja MCMF sekä aika-asteikkomuunnokset TT:n kautta, kukin oma budjettirivinsä, ja Kuun tila valinnaisesta DE440-kernelin leikkeestä sekä analyyttinen sarja ilmoitettuna varavaihtoehtona; marginaali ilmoitettua vaatimusta vasten, heikoin lenkki, tapahtumat ja aikajanakuva. Jokainen luku on ilmoitettu syöte tai sen malli
Oraakkeli
Käsinlaskelmat testeissä (suoraviivaisen kovarianssin kasvu, keskimääräinen sideerinen pyöriminen, maallinen Kuun kellonopeus) ja, vain Kuun tilalle, kirjatut DE440-kernelin leikkeet kiinnitettyjä JPL Horizons -arvoja vasten (pahin 2,6 m ja 7e-6 m/s). Mitään tehtäväaineistoa ei verrata ketjuun; sen vaiheet ovat omia rivejään. Asiakirja on ilmoitettu ketju, jonka syötteet ovat ILLUSTRATIVE, vain julkisia lähteitä eikä viraston kannatusta
MallinnettuLaukaisu ja nousu parkkirataan GNSS-hankinnalla ja häipymällä (launch-ascent)mission_thread::earth::launch (LaunchAscent)
Ominaisuus
Vaihe launch-ascent: vakionopeuden paikka- ja nopeuskovarianssi valkoisella kiihtyvyyskohinalla (dead reckoning -luokka), ilmoitetun tarkkuuden GNSS-paikannus, jota sovelletaan hankinta-ajan jälkeen ja ilmoitettujen häipymien ulkopuolella, harhan ja ajautuman sisältävä kello, jota samat paikannukset kurinalaistavat, sekä parkkiradalle saattamisen tila
Oraakkeli
Riccatin vakaa tila ja ennusteen käsinlaskenta testeissä. Tässä ei mallinneta kantorakettia eikä vastaanotinta; jokainen luku on ilmoitettu syöte
MallinnettuSuhteellinen navigointi telakointikaistaan matalalla Maan kiertoradalla anturijaksojen yli (leo-rendezvous)mission_thread::earth::rendezvous (LeoRendezvous); cw_dynamics; mission_thread::sensors
Ominaisuus
Vaihe leo-rendezvous: suhteellinen tila kohteen LVLH-akseleissa suljetun muodon Clohessy-Wiltshire-siirtymällä, 6x6 Kalman-kovarianssi valkoisella kiihtyvyyskohinalla ja paikkapäivitykset, joiden varianssi on anturin varianssi senhetkisellä etäisyydellä, ilmoitetun anturin jaksojen yli (ILLUSTRATIVE optisen kameran, lidarin ja radioetäisyysmittauksen muodot); telakointi-ikkuna on aika, josta alkaen suhteellinen sigma pysyy kaappauskaistan sisällä vaiheen loppuun. Lähestyvän aluksen absoluuttinen kovarianssi siirretään muuttumattomana, ja rivi kertoo sen
Oraakkeli
Yhden akselin käsinlaskenta ennustus- ja päivitysvaiheesta testissä; Clohessy-Wiltshire-siirtymä on se, jonka cw_dynamics tarkistaa riippumatonta numeerista integrointia vasten. Anturit ovat ILLUSTRATIVE, eikä mitään todellista kohtaamista verrata
MallinnettuKuuhun suuntautuva siirtoratainjektio ja kuunläheinen matka: propagoitu keskitila ja kovarianssi seurantapäivityksin (tli-and-cruise)mission_thread::earth::tli_cruise (TliCruise); propagator; ssv::sweep
Ominaisuus
Vaihe tli-and-cruise: keskitila moottorin Cowell-propagaattorilla (Maa pistemassana ja J2, Aurinko ja Kuu kolmansina kappaleina, Kuu ketjun DE440-kernelistä, missä se kattaa osuuden, ja Aurinko analyyttisestä sarjasta); kovarianssi tämän propagoinnin eteenpäin otetulla tilasiirtymämatriisilla (nimellisajo ja kuusi häirittyä ajoa osuutta kohti) valkoisella kiihtyvyyskohinalla; TLI-polton koko- ja suuntausvirhe; gnss-ssv-paikannukset, joiden saatavuus ja PDOP tulevat avaruuspalvelualueen pyyhkäisystä kaarta edustavaa oskuloivaa rataa pitkin; etäisyys- ja etäisyysnopeusseuranta geosentristä suuntaa pitkin maaverkon käyttöasteella skaalattuna, Joseph-muotoisella päivityksellä
Oraakkeli
Liouvillen teoreema (konservatiivisen osan tilasiirtymämatriisin determinantti on yksi) ja hienompi differenssi testeissä; keskitilaa verrataan julkiseen lentorataan alla olevalla rivillä, ja vertailussa se ei täytä kynnystä. Polttovirhettä, päivityksiä ja kovarianssia ei verrata mihinkään
MallinnettuPaluurajapinnan kovarianssi, käytävän todennäköisyys, huippuhidastuvuus ja laskeutumisjalanjälki (entry)mission_thread::earth::entry (Entry); reentry
Ominaisuus
Vaihe entry: vaiheen tli-and-cruise paluun vapaalento ilman polttoa, päättyen paluurajapintaan; lentoratakulma ja sen sigma täydestä kovarianssista äärellisen differenssin gradientilla; todennäköisyys, että kulma on ilmoitetun käytävän sisällä; huippuhidastuvuus nimelliskulmalla ja molemmilla käytävän reunoilla moottorin tasomaisesta ballistisesta pistemassapaluusta (takaisinkimpoaminen havaittu) Allen-Eggers-suljetun muodon rinnalla; laskeutumisjalanjälki ilmoitetusta etenemän suuntaisesta herkkyydestä ja rajapinnan kovarianssista kiertoratatason poikki. Nostovoimaa, ohjausta tai lämpenemistä ei mallinneta
Oraakkeli
Käsinlaskelmat testeissä (kulman sigma on kohtisuoran nopeuden sigma jaettuna nopeudella; gaussinen massa käytävässä). Tasomainen paluu on moottorin oma ja Allen-Eggers-muoto on suljetun muodon vertailu; mitään lennettyä paluuta ei verrata
MallinnettuMaaverkon kattavuus ja seurantakäyttöaste tehtävän vaiheelle ([ground_network], tyyppi mission-thread)mission_thread::earth::ground_network
Ominaisuus
Maaverkkokerros: asemat vähimmäiskorkeuskulmalla, ajoneuvon näkyvyys ilmoitetulla geometrialla (paluutila lennettynä kahden kappaleen mallilla J2:n kanssa, Kuun paikka matkaa varten tai ilmoitettu käyttöaste), asemanvaihdot, joista kukin menettää ilmoitetun ajan, ja tuloksena oleva käyttöaste, joka välitetään vaiheen maaseurannan päivitystaajuudelle; pisin väli, jossa mikään asema ei ole näkyvissä, on budjettirivi
Oraakkeli
Zeniitin ja antipodin geometriatarkistukset sekä kaukaisen kohteen odotettu näkyvyys testeissä. Mitään todellista verkkoa, antennia tai aikataulua ei mallinneta
MallinnettuSuhteellinen navigointi telakointiin Kuun kiertoradalla (lunar-orbit-rendezvous)lunar_rendezvous (LunarRendezvousScenario); lunar_phase; mission_thread::lunar
Ominaisuus
Tyyppi ja vaihe lunar-orbit-rendezvous: kahden aluksen yhteinen erä-Gauss-Newton-estimaatti kaaren yli (kaksikymmentäyksi parametria: molempien tilat ja pysyvät signal-in-space-paikkaharhat, yhteiset ja riippumattomat), kasvatettuna neljänneksen, puolen ja koko kaaren yli askelpuolituksella, aluskohtaisesta absoluuttisesta paikannuksesta (AFS-pilottikoodin seurantaraja, ILLUSTRATIVE relejoukko) ja ristilinkin etäisyydestä, crate-paketin Kuun voimamallilla; keskimääräinen normalisoitu estimointivirheen neliö, Clohessy-Wiltshire-tarkistus ympyräradalla ja eteenpäin siirretty 6x6-kovarianssi
Oraakkeli
Itsejohdonmukaisuus ennakkorekisteröinnin alaisena (xval/mission-thread-lunar/PREREGISTRATION.md, tulokset ja estimaattorin historia tiedostossa RESULTS.md): suhteellisen tilan keskimääräinen NEES on 5,85–5,93 kaistaa 5,2–6,8 vasten neljässä konfiguraatiossa, MET neljännellä estimaattorisuunnittelulla sen jälkeen, kun kolme sekventiaalista suodatinsuunnittelua alitti kynnyksen; totuus ja estimaattori jakavat saman voimamallin, joten tämä ei kerro mitään mallivirheestä. Jaettua propagaattoria verrataan LRO- ja CAPSTONE-lentoratoihin alla olevalla rivillä
MallinnettuLaskeutumishajonnan budjetti Kuun napa-alueen kohteessa (lunar-descent)lunar_landing (LunarLandingScenario); lunar_phase; terrain_nav
Ominaisuus
Tyyppi ja vaihe lunar-descent: viiden tilan akselikohtainen inertiavirhemalli (paikka, nopeus, kiihtyvyysmittarin harha, kallistus, gyron harha) moottoroidun laskun aikana, avustettuna AFS-paikannuksilla (itsenäinen tai differentiaalinen, kellon tukemalla kolmen releen tapauksella), maastosuhteellisella paikannuksella (moottorin terrain-nav-täsmäyttäjä synteettisellä reliefillä tai Cramer-Rao-raja LOLA DEM:llä aukko-ongelmasäännöllä) ja Kuun ajalla, Monte Carlo -alastuloellipsillä
Oraakkeli
Suljetun muodon inertiaalinen ajautuma, uudelleenkäytettyjen tyyppien omat tulokset ja 3-sigma-ellipsin kalibrointi (sisällä oleva osuus vastaa odotusarvoaan) testeissä. Mitään lennettyä tai testattua laskua ei verrata
MallinnettuPinnan paikannuksen ja ajoituksen saatavuus kohteen ja vuodenajan mukaan Kuun navoilla (lunar-surface)lunar_surface_map (LunarSurfaceMapScenario); lunar_phase
Ominaisuus
Tyyppi ja vaihe lunar-surface: releen saatavuus ja PDOP, Maan ja Auringon näkyvyys sekä kuriin pidetty pintakello kullekin kohteelle ja vuodenajalle, tyypin moonlight-service-volume maastosiluetilla; yhden kohteen ajo on bitilleen yhtä kuin sen tyypin saatavuus ja PDOP
Oraakkeli
Täsmälleen sama tulos kuin olemassa olevalla tyypillä yhdelle kohteelle sekä monotonisuustarkistukset testeissä. Relejoukko on ILLUSTRATIVE, eikä mitään pintamittausta verrata
MallinnettuMoottoroitu nousu Kuun napa-alueen kohteesta insertiorataan (lunar-ascent)lunar_ascent (LunarAscentScenario); lunar_phase
Ominaisuus
Tyyppi ja vaihe lunar-ascent: viiden tilan akselikohtainen inertiavirhemalli ajettuna moottoroidun nousun yli ominaisvoimalla radan suunnassa, avustettuna AFS-paikannuksilla ja Kuun ajalla, raportoiden kiertoradalle kuljetetun insertiopaikan ja -nopeuden kovarianssin sekä moottorin katkaisuhajonnan (raportoitu, ei kuljetettu)
Oraakkeli
Suljetun muodon inertiaalinen ajautuma ja monotonisuustarkistukset testeissä. Mitään lennettyä nousua ei verrata
Kuutyyppien jakama propagaattori (GRAIL GL0660B aste ja kertaluku 150, Maa ja Aurinko kolmansina kappaleina, suhteellisuus, DE440-Kuun orientaatio) verrattuna julkisiin JPL Horizons -lentoratoihin: LRO (24 h, 10 minuutin välein otetut näytteet) ja CAPSTONE (yksi 6,5 vuorokauden kierros, tunnin välein otetut näytteet), kynnyksin, jotka on kiinnitetty kirjattuun tiedostoon ennen ajoa
Oraakkeli
JPL Horizons -avaruusalusefemeridit LRO:lle ja CAPSTONElle, kynnyksiä vasten, jotka on ennalta rekisteröity tiedostossa xval/mission-thread-lunar/PREREGISTRATION.md (muutokset 1–6). LRO: MET, suurin 3D-ero 33 m ja radiaalinen RMS 2,4 m, kun kynnykset ovat 500 m ja 60 m. CAPSTONE: NOT MET, loppupaikan ero 136,8 km, kun kynnys on 25 km, ja periapsiksen ero 28,4 km, kun kynnys on 10 km, syitä ei eristetty. Rivi on mallinnettu, koska CAPSTONE-kynnys alitetaan ja vertailu testaa jaettua propagaattoria, ei mitään suodatinta, signaalia tai budjettia
MallinnettuKuunläheisen keskitilan propagointi julkista Artemis I -lentorataa vasten (tli-and-cruise)mission_thread::earth::tli_cruise; propagator; mission_thread_oracle (example)
Ominaisuus
Vaiheen tli-and-cruise keskitilan propagointi (Cowell, Maa pistemassana ja J2, Aurinko ja Kuu kolmansina kappaleina, Kuu DE440-leikkeestä) verrattuna Artemis I:n julkiseen JPL Horizons -lentorataan 72 h vapaalentokaaren yli alkaen 2022-11-16 18:00 TDB, 12 tunnin välein olevissa epookeissa, kynnyksin, jotka on kiinnitetty kirjattuun tiedostoon ennen ajoa
Oraakkeli
JPL Horizons -kohde -1023 (NASAn navigoinnin lennetty TLI:n jälkeinen lentorata), kynnyksiä vasten, jotka on ennalta rekisteröity tiedostossa xval/mission-thread/PREREGISTRATION.md (muutos 1 muuttaa vain pyyntöjaksoa). NOT MET ja todetaan alitetuksi: suurin paikkaero 45,3 km, kun kynnys on 5 km, ja nopeusero 0,249 m/s 72 h kohdalla, kun kynnys on 0,05 m/s. Tuomion jälkeen kirjoitettu diagnostiikka paikantaa alituksen viiteen impulsiiviseen nopeusaskeleeseen, joiden suuruus on 0,09–0,22 m/s, viitteessä (ennalta rekisteröity lukutapa, että ikkunassa ei ollut polttoa, oli väärä); muiden 67 tunnin aikana malli toistaa seuraavan tuntitilan mediaanilla 0,38 m. Testaa vain yhden vapaalentokaaren keskitilaa: ei kovarianssia, suodatinta, päivitystä eikä muuta vaihetta
MallinnettuKylmäatomi-interferometrin virhetermit: Raman-laserin vaihekohina, aaltorintaman kaarevuusharha ja vyöhykeepäselvyyden ratkaisuinertial::cai_error_terms
Ominaisuus
inertial::cai_error_terms (kirjastofunktiot, joihin ei vielä pääse skenaariolajista): neliöpulssisen kolmipulssisen interferometrin Raman-vaiheen painotusfunktio (Cheinet ym. 2008, yhtälö 8) valkoisen vaiheen suljetun muodon ratkaisulla (pi/2)^2 S_phi0/tau_R ja numeerisella reitillä mille tahansa spektrille; laserin taajuuskohina, jota takaisinheijastuksen viive ei kumoa (Le Gouet ym. 2007, yhtälöt 9 – 11); lämpöpilven puhtaan defokusoinnin aaltorintamaharha sigma_v^2/R ja sen pieneneminen ilmaisusäteellä; väärän vyöhykeindeksin todennäköisyys erfc(pi/(sqrt(2) s)) klassisen kiihtyvyysanturin avulla ja kahdella kyselyajalla sekä sen käänteisfunktio
Oraakkeli
Jokainen suljetun muodon ratkaisu riippumatonta numeerista reittiä vasten testeissä (tarkan siirtofunktion ja viivesuodattimen taajuusalueen kvadratuuri, atomien yli tehty Monte Carlo aaltorintamaharhalle, laukausten yli tehty Monte Carlo vyöhykeindeksille) ja sen rajatapaukset. Yksi julkaistu laskettu esimerkkiarvo: Cheinet ym. 2008 (arXiv:physics/0510197, luku IV) toteavat, että arvolla tau_R = 20 us tarvitaan alle -111 dB rad^2/Hz:n valkoinen Raman-vaihekohina, jotta saavutetaan 1 mrad laukausta kohti; pelkkä valkoinen termi antaa 0,99 mrad (artikkeli johtaa tason yhtälöllään 17, flicker plus valkoinen). Sisäinen johdonmukaisuus ja yksi laskettu esimerkkiarvo, ei ulkoinen validointi; korkeamman asteen aberraatioita ja minkään tietyn laserin kohinaa ei mallinneta
ValidoituGreenhallin ja Rileyn tarkat ekvivalentit vapausasteet Allanin, muunnellun Allanin ja Hadamardin varianssilleallan (edf_greenhall,greenhall_edf_core); assurance::uncertainty (edf)
Ominaisuus
allan::edf_greenhall (kääreillä edf_greenhall_adev, _mdev ja _hdev): Greenhallin ja Rileyn koko algoritmi, Proc. 35th PTTI (2003), luku 3 (yhtälöt 7 – 13 ja taulukoiden 1 – 3 suuren J:n kertoimet), erotusasteille 1 – 3, kohinaeksponenteille +2 – -4 aina kun alpha + 2d > 1, limittyville ja ei-limittyville, muunnelluille ja muuntelemattomille estimaattoreille; NaN, kun se ei päde, mukaan lukien muuntelematon valkoisen PM:n tapaus, jossa ceil(M/S) <= d ja jonka suljettua muotoa ei ole toteutettu. assurance::uncertainty::edf käyttää nyt samaa koodia ja säilyttää tulosteensa bitilleen
Oraakkeli
allantools 2024,6 ci.edf_greenhall, julkaistun algoritmin kolmannen osapuolen toteutus, ajettuna skriptillä scripts/gen_greenhall_edf_ref.py hilalla, joka on ennakkorekisteröity tiedostossa xval/greenhall-edf/PREREGISTRATION.md (tallennettu yksinään, 0db0bb7a, ennen mitään vertailua): kaikissa 4 876 pisteessä, joissa se palauttaa äärellisen edf-arvon, kshana on samaa mieltä suhteellisella 6.0e-13 tarkkuudella (kynnys 1e-9); sen 46 NotImplementedError-pisteessä kshana palauttaa NaN; jokainen tapaustunniste esiintyy; kääreet vastaavat ydintä bitilleen; uncertainty::edf on bitti bitiltä identtinen 274 280 arvon yli (kiinnitetty SHA-256-tiivisteenä ennen uudelleenjärjestelyä). 32 pisteessä (alpha -4, d 3, muuntelematon, tapaus 2,2) allantools kaatuu taulukon 2 hakuun, joten niillä ei ole oraakkelin arvoa eikä niitä lasketa. Stable32:ta ei ajettu. Revisio 0,36 (docs/revisions/STUDIO15-greenhall-edf-portable.md): siirrettävällä matematiikalla ydin ottaa logaritminsa kerran pyöristetystä double-double-laskennasta (allan::greenhall_ln), ja muuttumaton kynnys 1 täyttyy jälleen kaikissa 4 876 pisteessä, pahin suhteellinen 6.0e-13; uncertainty::edf-vartija perustetaan uudelleen 0,36-siirrettävään vedokseen (3 746 arvoa 274 280:stä siirtyi, enintään 1.6e-12 suhteellisesti, isäntämatematiikan pohjasta)
Neljä esiasetusta — OCXO (Microchip OX-208), rubidium (Microchip 8040C), cesium (Microchip 5071A high-performance tube) ja CSAC (Microchip SA.45s) — kussakin datalehden Allan-poikkeaman maksimit, ikääntyminen ja lämpötilaraja; ei-negatiivisella pienimmän neliösumman menetelmällä sovitettu valkoisen + flicker + satunnaiskävelyn taajuuskohinan sovite, skaalattu verhoamaan jokainen datalehden piste, flicker-lattia, joka ei ole koskaan pidemmän τ:n lukua pienempi, lineaarinen ikääntyminen ja sinimuotoinen lämpötilatermi, syntetisoituna siemenluvulla tuotettuna holdoverina GNSS:n katoamisen jälkeen
Oraakkeli
Neljä mainittua Microchipin datalehteä (asiakirjanumerot ja URL-osoitteet kussakin esiasetuksessa ja tiedostossa docs/TELECOM-TIMING.md) syöttölukujen lähteenä; suljetun muodon ikääntymisramppi ja sovitteen verhoomisominaisuus sisäisinä tarkistuksina. Se, miten luvuista tulee kohinamalli — sovite, lattiasääntö, 30 päivän kuukausi, lineaarinen lämpötilatulkinta — on mallinnusvalinta; mikään esiasetus ei ole yksittäisen laitteen mittaus. 0,30 kierros 2, yksipuoliset kynnykset mitattuja yksiköitä vastaan (ennakkorekisteröity a01c491c), havainto (pysyy MODELLED): IGS-aseman THU2 Symmetricom 8040C ESA:n MGEX-lopullisissa kelloissa on Allan-poikkeama 0,35 – 0,87 rubidium-esiasetuksesta mutta holdover-virhe 1,07 – 1,60 siitä; 5071A-tallenne on cesium-esiasetuksen ulkopuolella arvoon 1000 s asti (mittauksen valkoinen vaihekohina, 30x arvolla 1 s) ja holdoverissa (1,15 – 8,74); huonoin 2011 tuotanto-SA.45s on 1.26x CSAC-esiasetukseen nähden arvolla 1 s; OX-208:lla ei ole mitattua tallennetta (estynyt)
ValidoituMitatusta kellotallenteesta tehty holdover-ennuste, tarkistettu pidätetyllä datallaslot_timing (ClockNoise::from_phase_record,fit_weighted,slot_budget,breach_after_sync_s)
Ominaisuus
Lajin slot-timing mitattu tallennepolku: vaihetallenteen limittyvä Allan-poikkeama sovitettuna edf-painotetulla ei-negatiivisella pienimmän neliösumman menetelmällä valkoisen vaiheen ja IEEE Std 1139 -taajuusmodulaatiopohjassa (slot_timing::fit_weighted) ja sitten käännettynä rantautumisajaksi, jolloin aikavirhe saavuttaa kynnyksen (slot_timing::slot_budget). Punakohinan lattia mitataan tallenteesta sen sijaan, että se oletettaisiin
Oraakkeli
Todellinen vapaasti käyvä atomikello: 556 990 yhden sekunnin vaihenäytettä 5071A-cesiumstandardista mitattuna vetymaseria vasten (A. Wallin, jaettu allantoolsin mukana; kiinnitetty commit ja SHA-256 skriptissä scripts/fetch_cs5071a.sh), sama tallenne, jota tests/cs5071a_reference.rs käyttää estimaattoreille. Pidätetyt kaksi kolmasosaa ovat ulkoinen mittaus, jota ennuste ei koskaan nähnyt. Datariippuvainen: realdata-clock-työnkulku hakee tallenteen ja ajaa testin asetuksella KSHANA_REQUIRE_REALDATA=1. Validoi sovita-ja-käännä-polun valkoisen FM:n hallitsemalla atomistandardilla rantautumisille noin 50 000 s asti; ei datalehti- tai luokkalähteitä, ei deterministisiä termejä. EI kideoskillaattori: mitatussa OCXO-tallenteessa (tests/slot_timing_ocxo_holdout.rs, allantools, 5,5 h vetymaseria vasten) pidätetty ennuste on konservatiivinen, 0,59 – 0,70 mitatusta ylityksestä, ja useimmiten kynnyksen ulkopuolella, koska oskillaattorin kohinalattia puolittui tallenteen aikana; otoksen sisällä se on 0,98 – 1,17 sisällä. Kidetapaus pysyy MODELLED. EI myöskään kiertoradalla olevat atomikellot: 10 GPS Block IIF -satelliittikellolla (tests/slot_timing_igs_holdout.rs, IGS:n lopulliset 30 s kellot, 14 päivää, protokolla kirjoitettu ennen lataamista) 8 osuu kynnyksen sisään ja 2 (G25, G30) ovat optimistisia jopa noin 2x, joten protokollan mukaan kiertoratatapaus pysyy MODELLED
Testit
tests/slot_timing_cs5071a_holdout.rs (holdover_inversion_predicts_the_held_out_caesium_record: sovitus tallenteen ensimmäiseen kolmannekseen, yhden sigman ylityksen ennuste arvoilla 0,5, 0,75, 1, 1,5, 2 ja 2,5 ns, mittaus…
MallinnettuSekunnit, kunnes vapaasti käyvä kello poistuu aikaindeksoidun ajanjakson suojakaistalta, ja korjausten tahti, joka pitää sen sisälläslot_timing (predicted_error_s,breach_after_sync_s,terms_at,slot_budget,ClockNoise::from_datasheet,SlotTimingScenario); clock_state (ClockClass::Tcxo,Ocxo,Rafs,source)
Ominaisuus
Laji slot-timing: ennustettu virhe E(t) = k·√(σ₀² + σ_x²(t)) + (|y₀| + |c_T·ΔT|)·t + ½|D|t² käännettynä ylitykselle, jäljellä olevalle ajalle, uudelleensynkronointivälille korjausviiveen jälkeen ja korjauksille vuorokaudessa, kukin termi eriteltynä ja hallitseva nimettynä; kellot kuudesta ClockClass-oletuksesta (TCXO, OCXO ja RAFS lisätty, kukin viittaa yhteen datalehteen), telecom-ajoituksen esiasetuksista, inline-datalehdestä tai mitatusta tallenteesta; lähteen pisintä keskiarvotusaikaa pidemmälle ulottuva ylitys merkitään ekstrapoloiduksi
Oraakkeli
Suljetun muodon ratkaisut kullekin termille erikseen ja riippumaton holdover::holdover_seconds-juurenetsintä; datalehtien luvut ovat nimetyt asiakirjat (docs/SLOT-TIMING.md). Luokan oletus perustuu oletettuun punakohinan lattiaan ja datalehtilähde on maksimien verhokäyrä, joten kumpikaan ei ole minkään yksikön mittaus
Testit
tests/slot_timing_igs_holdout.rs (10 GPS Block IIF -satelliittikelloa, 14 päivää IGS final -kelloja: 8 kynnyksen 1,5 sisällä, G25 ja G30 optimistisia jopa noin 2x, lukittu); tests/slot_timing_ocxo_holdout.rs (mitattu…
orbital_timing::orbital_timing, saatavilla tyypin slot-timing harhautusosiona: ympyräradan nopeus ja jaksonaika, pisin aika, jonka maassa oleva harhauttaja voi tavoittaa satelliitin yhdellä ylilennolla, kellotuettu valvonnan alaraja ja CUSUM-havaitsemisviive, ehdollinen suojaustaso (alaraja lisättynä viiveen aikaisella liukumalla), poikkeama, jonka harhauttaja ilmoitetulla enimmäisramppinopeudella ehtii kerätä ennen kuin satelliitti poistuu jalanjäljeltään tai riippumaton tarkistus suoritetaan, sekä onko jokainen maayhteyden tai ristilinkin tarkistus riippumaton yhdestä maassa olevasta harhauttajasta
Oraakkeli
Palautus nykyiseen ajoituksen suojaustasoon sekä ympyräradan ja pallomaisen Maan näkyvyyden suljettuihin muotoihin. Ehdollinen havaitsemiselle, yhdelle maanpäälliselle harhauttajalle ilmoitetulla rampin nopeudella ja yläpuoliselle ylilennolle pyörimättömällä Maalla; ei validoitu kiertoradalla olevalla harhautetulla vastaanottimella
Testit
orbital_timing::tests (reduces_to_the_terrestrial_tpl — täsmälleen tpl::timing_protection_level_ns, kun kellolla ei ole flicker-, valkovaihe- tai random-run-termiä; leo_geometry_matches_its_closed_forms…
ValidoituSuljetun muodon L-kaistan signaalien tehospektritiheydet ja spektrinerotuskertoimetnavsignal (Modulation::psd,spectral_separation_coeff_offset,q_from_ssc); spectrum (psd_nulls_hz,psd_peak_hz,main_lobe_null_to_null_hz,Jammer::ssc)
Ominaisuus
Yksikköpinta-alaiset tehospektritiheydet signaaleille GPS L1 C/A ja L2C (BPSK(1)), GPS L5 ja Galileo E5a (BPSK(10)), sini-BOC(1 1) sekä Galileo E1 MBOC(6,1,1/11) (navsignal::Modulation::psd, MBOC-muunnoksella täydennettynä), niiden numeerisesti paikannetut nollakohdat ja maksimit (spectrum::psd_nulls_hz, psd_peak_hz, main_lobe_null_to_null_hz) sekä signaalin spektrinerotuskerroin mitä tahansa spektriä vastaan millä tahansa siirtymällä (navsignal::spectral_separation_coeff_offset) tai sävyä, tasaista kohinaa, chirppiä tai sovitettua kohinaa vastaan (spectrum::Jammer::ssc), häirinnänestokertoimella Q = 1/(R_c kappa)
Oraakkeli
Julkaistut oppikirja-arvot: BPSK(n):n pääkeila 2n x 1,023 MHz nollasta nollaan sekä häirinnänestokertoimet Q = 1 kapeakaistaiselle (CW) häirijälle ja Q = 1,5 C/A:han sovitetulle hajaspektrihäirijälle (Kaplan & Hegarty, Understanding GPS/GNSS, 3rd ed., section 9,4); BOC(m,n)-pääkeilat keskitettyinä kohtiin plus tai miinus m x 1,023 MHz (Betz, Binary Offset Carrier Modulations for Radionavigation, NAVIGATION 48(4), 2001); spektrinerotuskertoimet -61.8, -64.8 ja -67.8 dB/Hz parille C/A ja C/A, BOC(1 1) ja BOC(1 1) sekä C/A ja BOC(1 1) (Betz 2001; Hein et al., MBOC: The New Optimized Spreading Modulation Recommended for Galileo L1 OS and GPS L1C, Inside GNSS, May/June 2006), toistettuna tässä niiden Parsevalin autokorrelaation suljetuista muodoista. BOC(1 1):n maksimi ei ole kohdassa 1,023 MHz: keila ulottuu kantoaallon nollakohdasta kohtaan 2,046 MHz ja saavuttaa huippunsa kohdassa 0,759 MHz, ja testi lukitsee molemmat. MBOC-sekoitus on ICD:n määritelmä, ja siitä tarkistetaan vain yksikköpinta-ala ja lineaarisuus
Tyyppi spectrum: L-kaistan tehospektritiheyden taajuus–aika-ruudukko (terminen lattia k T_sys, kun T_sys = T_ant + 290 K (F - 1), signaalit rajapintamäärittelyn pienimmillä vastaanotetuilla tehoilla sekä jatkuva-aaltoinen, kapeakaistainen, chirp- ja sovitettu kohinahäirijä päälle- ja poiskytkentäajoin), jokainen solu keskiarvoistettuna kaistansa ja rivinsä yli (chirpit tarkasti kokonaisten ja osittaisten pyyhkäisyjen yli, häirijät käyttösuhteen mukaan), kaistakohtainen efektiivinen C/N0 = [1/(C/N0) + sum (J/S) kappa]^-1 riviä kohti, J/S kaistaa kohti, kaistan sisäinen J/S sekä SVG-vesiputouskuvaaja C/N0-palkeilla. Raportti sisältää ristiintarkistuksen tyypin jamming ketjuun samoilla linkkisyötteillä
Oraakkeli
Palautus nykyisen tyypin jamming häirinnänestoyhtälöön ja linkkibudjettiin (sama koodi, kutsuttuna samoilla syötteillä) sekä k T0 F -kohinalattian suljettuun muotoon. Alla olevat signaalispektrit ovat yllä oleva validoitu rivi; häirijöiden tehot, aikajana ja etupään kaistanleveydet ovat skenaarion syötteitä, spektrit ovat jatkuvia (ei hajautuskoodin viivoja), eikä automaattinen vahvistuksen säätö, tyhjennys tai antennikuvio vaikuta häirijään. Tietovarastossa ei ole mitattua häirittyä spektriä, jota vasten yhdistelmän voisi tarkistaa. Tyypin jamming Q-taulukko (CW ja kapeakaistainen 1, laajakaistainen ja pyyhkäisevä 2 versiosta 0,36 alkaen: oppikirja-arvot, lukittu navsignalin suljettuihin muotoihin) on yhdenmukainen tämän mallin CW-arvon kanssa ja poikkeaa siitä, mitä se johtaa C/A:han sovitetulle kohinalle (1,5) ja tasaiselle nollasta nollaan -kohinalle ilman kaistansisäistä normalisointia (2,2); raportti tulostaa molemmat
Testit
spectrum::tests (agrees_with_the_jamming_kind_chain — J/S vastaa funktiota jamming::j_over_s_db ja tehollinen C/N0 vastaa funktiota jamming::effective_cn0_dbhz, kun Q = 1/(R_c kappa) tarkkuudella 1e-9 dB, ja 32,105 dB:n ankkuri jamming…
ValidoituSigMF-tallenteiden luku ja kirjoitus sekä kompleksisen IQ:n Welch-spektriestimaatitsigmf (read,write,encode,decode,parse_meta,meta_to_json); spectrum (welch_psd,fft_in_place,synthesise_iq)
Ominaisuus
sigmf: lukee ja kirjoittaa Signal Metadata Format -tallenteita (JSON .sigmf-meta kentillä core global, captures ja annotations; raaka .sigmf-data muodossa cf32_le, ci16_le tai ci8, kokonaislukudekooderit jaettuina funktion realdata::iqif::load_iq kanssa), kaikki merkkijonoilla ja tavupuskureilla. spectrum::welch_psd: Hann-ikkunoidut, limittyvät, keskiarvoistetut periodogrammit, tiheysskaalattuina, crate-sisäisellä radix-2-muunnoksella (spectrum::fft_in_place). Nämä kaksi ovat validoitu väite. spectrum::synthesise_iq piirtää mallin IQ:na, ja tyypin spectrum [iq]-osio ajaa mallin IQ:ksi, SigMF:ksi ja Welchiksi ja vertaa mallin kanssa; sen [recording]-osio estimoi todellisen tallenteen (natiivit koontiversiot); synteesi ja nämä mallivertailut ovat validoidun väitteen ulkopuolella
Oraakkeli
scipy 1.18.1 scipy.signal.welch (BSD-3-Clause) samalla jaksollisella Hann-ikkunalla, limityksellä, tiheysskaalauksella, ilman trendinpoistoa ja kaksipuolisella keskiarvoistuksella: jokainen lokero 1e-12 suhteellisen virheen sisällä (havaittu 6.0e-14) 27 tapauksessa, segmenttimäärät otettuna scipyn omasta spektrogrammista. sigmf-python 1.13.0 (LGPL-3.0, ajettuna työkaluna) kirjoittaa viisi kolmannen osapuolen tallennetta (cf32_le, ci16_le, ci8, kaksi tallennetta merkinnöillä, nollasta poikkeava ensimmäinen sample_start), jotka crate dekoodaa bitintarkasti identtisillä core-kentillä, ja lukee craten tallenteet takaisin bitintarkasti; SigMF v1.2.6 -metadataskeema raportoi nolla virhettä craten metadatasta. Toleranssit lukittu ennen ensimmäistä vertailua. Väitteen ulkopuolella: spectrum::synthesise_iq sekä [iq]- ja [recording]-vertailut mallin kanssa (synteesillä ei ole yhtä oikeaa vastausta; jaksollinen chirp näyttää viivoja, Fresnel-aaltoilua ja reunahäntiä, joita sileä malli ei sisällä, kokonaisteho 2 %:n sisällä), kokonaisluvusta liukulukuun skaalauskäytäntö (crate jakaa luvuilla 32767 ja 127, sigmf-pythonin autoscale luvuilla 2^15 ja 2^7, minkä spesifikaatio jättää avoimeksi; vertailu käyttää raakakoodeja), monikanavaiset tallenteet ja datatyypit, jotka lukija hylkää
Merkuriuksen, Venuksen, Maa–Kuu-barycentrin, Maan, Marsin, Jupiterin ja Saturnuksen heliosentriset paikat Standishin taulukosta 1 (1800 AD – 2050 AD) sekä kaikkien kahdeksan planeetan taulukoista 2a/2b (3000 BC – 3000 AD, b-, c-, s- ja f-keskianomaliatermein), JPL-sivun algoritmia askel askeleelta noudattaen ja ICRF:ään (International Celestial Reference Frame) käännettynä sivun kaltevuuskulmalla; Maa erotetaan barycentristä Montenbruck & Gill -kuusarjalla ja massasuhteella. Koottu muotoon ephem_provider::AnalyticSolarSystem, jolloin mikä tahansa kappale on saatavilla suhteessa mihin tahansa toiseen, ja ajettavissa tyyppinä solar-system
Oraakkeli
JPL Horizons DE441 geometriset heliosentriset vektorit (ekliptika ja ICRF), haettu ennakkorekisteröintiversioiden 80451866, 8d38a28b ja 558cc807 jälkeen. Kynnys: planeettaa ja komponenttia kohti RMS enintään 1.0x Explanatory Supplement 3rd ed. -teoksen taulukon 8.10.1 likimääräisistä virheistä (EMB-rivi Maalle); Maa–EMB-erotus tarkistetaan suoraan DE441:tä vastaan 399 miinus 3, enintään 0,3 astetta ja 8,1 km jokaisena ajankohtana 1950–2050 (pituuskynnys 8,1 km tulee Kshanan oman efemeridi-dokumentaation kuusarjan tarkkuudesta, joka viittaa Montenbruckiin ja Gilliin, eikä sitä tarkistettu kirjaa vastaan; mitattu 6,09 km on lähellä sitä). RMS-tunnusluku valittiin tietäen, että aiempi 27 ajankohdan vertailu saavutti maksimissaan 1.87x nimellisestä; yksittäisen ajankohdan virheet yltävät 3.83x:ään (3.87x ICRF-tapauksessa). Supplement ei määrittele lukujaan RMS-arvoina. Tapaus B kääntää molemmat puolet testissä kirjoitetulla IAU 1976 -kaltevuuskulmalla, joten kierrosta ei tarkisteta itseään vastaan. AnalyticSolarSystemin oletustaulukkovalintaa ei harjoiteta (testit pakottavat taulukon 1). Uranus ja Neptunus taulukosta 1 ovat erillinen MODELLED-rivi
Testit
tests/solar_system_standish_preregistered.rs::standish_rms_errors_are_within_explanatory_supplement_table_8_10_1 (barycentrit 1800-2050 taulukosta 1 ja 3000 eaa.–3000 jKr. taulukosta 2, 8908 ja 21857 epookkia, huonoin RMS…
Auringon, Merkuriuksen, Venuksen, Maan ja Kuun geometriset paikat toistensa suhteen (J2000/ICRF-akselit, metreinä) JPL DE440 -kernelistä funktion ephem_provider::KernelEphemeris kautta UTC-ajankohtina: kappaleiden nimet kuvattuna NAIF-koodeiksi, UTC vietynä karkaussekuntitaulukon läpi ja TT TDB:ksi kaksitermisellä TDB-TT-sarjalla, kernel luettuna moottorin omalla lukijalla. Kappale, jonka kernel sisältää vain järjestelmän barycentrinä (Mars–Neptunus, Pluto tiedostossa de440s), hylätään eikä sitä koskaan korvata. Kernelitön Standish-rivi säilyy selain- ja varapolkuna
Oraakkeli
Skyfield 1,54 (MIT), omalla karkaussekuntitaulukollaan, omalla TDB-TT:llään ja omalla lukijallaan samalle NAIF de440s.bsp -tiedostolle (jplephem), ajettuna erillisenä ohjelmana UTC-ajankohtina. Ennakkorekisteröity (0bfafe6d) ennen kuin fikstuuri oli olemassa, ruudukko siemennetty kyseisen commitin tiivisteestä, kynnyksenä 5e-5 s kertaa suhteellinen nopeus (moottorin ilmoittama kaksitermisen TDB-TT:n tarkkuus) plus 1e-13 barycentrisestä etäisyydestä plus 1e-5 m komponenttia kohti. Tulos: kaikki 600 sisäpuolella, pahin 0,66 kynnyksestä (2,96 m nopealla parilla, TDB-TT-sarjan oma virhe). Mutaatio: TDB:n tilalla käytetty TT epäonnistuu 33-kertaisella kynnyksellä. Molemmat puolet lukevat DE440:n: tämä validoi tarjoajan ja sen aikaketjun, ei DE440:ää. Väitteen ulkopuolella: Venuksen ulkopuoliset planeetat kappaleina (de440s sisältää vain niiden barycentrit), planeettojen kuut sekä kaksitermisen TDB-TT-sarjan alittava tarkkuus (muutama metri nopeimmille pareille)
ValidoituValoaika aurinkokunnan kappaleiden välilläradiometric (light_time_solution,two_way_range,shapiro_delay); solar_system (link,link_on); ephem_provider (AnalyticSolarSystem)
Ominaisuus
Newtonin mukainen yksisuuntainen valoaika mistä tahansa kappaleesta mihin tahansa toiseen, vastaanotettuna ajankohtana, ratkaistuna radiometrisellä kiintopistevaloaikaratkaisijalla (radiometric::light_time_solution, lähetin viivästetyssä paikassaan) funktion solar_system::link_on kautta millä tahansa EphemerisProvider-tarjoajalla; tyyppi solar-system ajaa sen analyyttisellä aurinkokunnalla heliosentrisessä koordinaatistossa (solar_system::link). Kaksisuuntainen etäisyys funktiosta radiometric::two_way_range ja Auringon Shapiro-viive funktiosta radiometric::shapiro_delay raportoidaan erikseen, eikä niitä verrata ulkoisesti. Tuotetaan jokaiselle kappaleelle havaitsijaa vastaan ja mille tahansa lisälinkille tyypillä solar-system sekä kappaleelta Maahan suuntautuvalle alalinkille tyypillä body-pnt
Oraakkeli
JPL Horizons DE441 yksisuuntainen alasuuntainen Newtonin valoaika LT (VEC_CORR=LT, havaitsija Maan keskipiste), ennakkorekisteröity (480037d3, muutos 54d5c86f, joka muutti vain interpolaatiosolmujen välystä sen jälkeen kun ensimmäinen haku ei täyttänyt 10 m:n interpolaatioesiehtoa, ennen kuin yhtäkään valoaikaa oli verrattu) kynnyksellä 1e-6 s valoaikaa kohti, ratkaisijalle syötettynä DE441:n barycentriset paikat, jotta viivästetyn lähettimen iteraatio näkyy (ensimmäisen iteraation ratkaisija erehtyy jopa 0,1 s). Analyyttisillä Standish-paikoilla valoaika on vain niin hyvä kuin nuo paikat (ks. planeettojen paikkojen rivi); toimitettu linkki käsittelee Aurinkoa inertiaalisena keskipisteenä, mikä pysyy tuon paikkavirheen sisällä mutta ei ole erikseen validoitu. two_way_range ja shapiro_delay eivät ole ulkoisesti verrattuja
Testit
tests/solar_system_light_time_solver_preregistered.rs::light_time_solver_on_de441_positions_matches_horizons_lt_within_1e_6_s (Merkuriuksen, Venuksen, Marsin, Jupiterin ja Saturnuksen barycentrit, Aurinko ja Kuu Maahan…
MallinnettuUranus ja Neptunus Standishin taulukosta 1, Pluto ja planeettojen nopeudetephem (standish_state,StandishElements::state_at_mean_anomaly,Planet::Pluto); solar_system (position_label)
Ominaisuus
Uranuksen ja Neptunuksen paikat Standishin taulukosta 1 (oletus välillä 1800 AD – 2050 AD), Pluto vuoden 1992 taulukon 1 rivistä, jota nykyinen JPL-sivu ei enää listaa, sekä jokaisen planeetan heliosentrinen nopeus: kahden kappaleen derivaatta elementtien implikoimalla keskiliikkeellä lisättynä ellipsin kiertymisellä periheliin, inklinaation ja solmun muutosnopeuksista
Oraakkeli
Mitattu JPL Horizons DE441:tä vastaan (samat committoidut fikstuurit), mutta ei validoitu: taulukon 1 ilmoittamat luvut Uranukselle ja Neptunukselle ylittyvät jopa 2,0- ja 5,2-kertaisesti DE441:n heliosentrisiin paikkoihin verrattuna (Neptunus täyttää ne barycentrisiin paikkoihin verrattuna, mikä viittaa siihen, ettei sovitus ollut heliosentrinen), sivu ei ilmoita virhettä Plutolle, eikä nopeuksille ole julkaistua rajaa. Taulukot 2a/2b täyttävät omat lukunsa Uranukselle ja Neptunukselle, ja ne kuuluvat validoidun rivin piiriin
Testit
tests/solar_system_horizons_reference.rs (standish_table1_uranus_and_neptune_exceed_the_nominal_error: lukittu arvoihin 2,04 ja 5,16 kertaa nimellinen pituusasteen virhe, alle kuusi kertaa…
MallinnettuKuun ja seitsemän suuren kuun paikat (Phobos, Deimos, Galilein kuut, Titan)ephem (satellite_state,Satellite,SatelliteMethod,moon_icrf,moon_icrf_velocity); ephem_provider (AnalyticSolarSystem)
Ominaisuus
Geosentrinen Kuu Montenbruck & Gill -sarjasta (jonka termi -1.3972 astetta vuosisadassa jo viittaa sen J2000-päiväntasaukseen) sekä Phobosin, Deimosin, Ion, Europan, Ganymedeen ja Callisto planeettakeskiset paikat ja nopeudet JPL Solar System Dynamics -keskielementeistä kunkin kuun Laplace-tasossa, keskipituuden muutosnopeus otettuna IAU:n synkronisesta pyörimisnopeudesta (taulukko ilmoittaa jakson liian harvoin numeroin vaiheen säilyttämiseksi), sekä Titanin IAU:n pyörimismallista (kuu kappaleenkiinteän x-akselin miinuspuolella keskietäisyydellä), koska Titanin ilmoitettu Laplace-tason rivi ei toista Horizonsia edes omalla ajankohdallaan
Oraakkeli
Mitattu JPL Horizons -satelliittiefemerideistä (DE441, MAR099, JUP365, SAT441), jotka on committoitu tiedostoon tests/fixtures/solar_system/horizons_satellites_icrf.csv kyselyn ja hakupäivän kanssa; keskielementeille tai pyörimismallin sijoitukselle ei ole julkaistua tarkkuutta, joten lukitut kynnykset havaitsevat regressiot eivätkä validoi. Keskielementit jättävät pois resonanssi- ja aurinkohäiriöt, eikä Phobosin sekulaarista kiihtyvyyttä mallinneta
Testit
tests/solar_system_horizons_reference.rs (moons_track_horizons_to_the_measured_angles: huonoin planeetalta nähty kulmavirhe välillä 2000 – 2040, Phobos 5,65 astetta, Deimos 0,38, Io 0,40, Europa 1,63, Ganymede 0,22…
MallinnettuJokaisen aurinkokunnan kappaleen fysikaaliset vakiot ja koko järjestelmän raporttibody (Body::by_name,Body::facts,Body::prime_meridian,SOLAR_SYSTEM,BodyFacts); solar_system (SolarSystemScenario,position_label)
Ominaisuus
Body saa Merkuriuksen, Venuksen, Jupiterin, Saturnuksen, Uranuksen, Neptunuksen, Pluton, Phobosin, Deimosin, Ion, Europan, Ganymedeen, Callisto ja Titanin (gravitaatioparametri, vertailusäde, J2 siellä missä se on julkaistu sen säteen kanssa, johon se viittaa, IAU:n napa ja nollameridiaani), nimihaun ja BodyFacts-tietueen (NAIF-koodi, luokka, emokappale, ekvatoriaalinen ja keskisäde); tyyppi solar-system raportoi ne kaikille kahdelleksantoista kappaleelle yhdessä paikkojen, valoaikojen ja yhden kierroksen rataviivan kanssa, ja jokainen kappale on merkitty VALIDATED tai MODELLED
Oraakkeli
Julkaistujen vakioiden transkriptio, kukin viitattuna siellä missä se määritellään: gravitaatioparametrit JPL Horizonsin kappaletietueista ja JPL:n satelliittien fysikaalisten parametrien taulukosta, säteet JPL:n fysikaalisten parametrien taulukoista (IAU WGCCRE 2015), navat ja nollameridiaanit IAU:n Working Group on Cartographic Coordinates and Rotational Elements -ryhmältä (keskiarvot, ilman T-nopeus- ja jaksollisia termejä), J2 lähteistä Smith et al. 2012, Iess et al. 2018 ja 2019 sekä Jacobson 2009 ja 2014. Tarkistettu sisäisen johdonmukaisuuden osalta (Jupiterin pyörimisjakso System III -nopeutta vasten, kukin J2 viitesäteensä vasten), ei ulkoista oraakkelia vasten. 0,30 kierros 2: GM-arvot otettiin funktiosta gm_de440 sekä Phobosin ja Deimosin elementit tiedostosta pck00011, joten 0 / 84 lisättyjen neljäntoista kappaleen vakiosta poikkeaa nyt NAIFista (aiemmin 12), mikä on transkriptiotarkistus eikä sitä lasketa. 0,36: IAU:n kappaleenkiinteä orientaatio ja lisättyjen neljäntoista kappaleen GM on eroteltu omalle VALIDATED-riville ("IAU body orientation and gravitational parameter of the fourteen added solar-system bodies"); tämä rivi säilyttää jäljelle jääneen. J2 ja keskisäde on viitattu, ei validoitu; raportin paikat nojaavat omiin riveihinsä; ja raportin prime_meridian_deg Maalle, Kuulle ja Marsille pysyy perinteisissä vakioissa (jopa 6.6e-3, 2.8e-2 ja 9.6e-4 rad arvosta IAU_<BODY>). 0,30-tarkistukset: Phobos GM 7.087e5 -> 7.087546066894452e5, Deimos 9.62e4 -> 9.615569648120313e4, Uranus 5.7939506103e15 -> 5.793951256527211e15, Neptune 6.83509997e15 -> 6.835103145462294e15, Pluto 8.69326e11 -> 8.696138177608748e11 m³/s²; Phobosin ekvatoriaalinen säde 13,1 -> 13,0 km; prime_meridian_deg sisältää nyt neliöllisen ja jaksolliset termit
ValidoituIAU:n kappaleorientaatio ja gravitaatioparametri neljällätoista lisätyllä aurinkokunnan kappaleellabody (Body::iau_rotation_et,Body::iau_angles_et,Body)
Ominaisuus
Body::iau_rotation_et, kierto J2000:sta IAU:n kappaleenkiinteään koordinaatistoon Merkuriukselle, Venukselle, Jupiterille, Saturnukselle, Uranukselle, Neptunukselle, Plutolle, Phobosille, Deimosille, Iolle, Europalle, Ganymedeelle, Callistolle ja Titanille jokaisella vuosisatanopeudella, neliöllisellä termillä ja jaksollisella termillä, jotka kappaleella on tiedostossa pck00011, sekä samojen neljäntoista kappaleen gravitaatioparametrikenttä mu. Aurinko, Maa, Kuu ja Mars käyttävät muiden rivien omistamia perinteisiä vakioita, eikä niitä kateta
Oraakkeli
NAIF SPICE Toolkit (CSPICE N0067 spiceypyn kautta) pxform('J2000', 'IAU_<BODY>') tiedostolla pck00011.tpc, saman IAU:n pyörimismallin riippumaton toteutus, ja NAIF gm_de440.tpc GM:lle, fikstuurit tuotettuna erillisellä ohjelmalla, joka ei kutsu Kshana-koodia (tests/fixtures/body_orientation_spice_oracle/, NOTICE.md). Ennakkorekisteröity 154bc54 (alkuperäisellä 1e-9 rad -kynnyksellä c2434204) ennen kuin tuore ajankohtafikstuuri oli olemassa; tuore fikstuuri luotiin uudelleen riippumattomasti ja on tavu tavulta identtinen. GM on DE440:n transkriptio, joka on tarkistettu julkaistua tiedostoa vasten, ei GM:n riippumaton määritys. Tulokset: docs/design/evidence/mr08-body-orientation/RESULTS.md
MallinnettuPaikannus minkä tahansa aurinkokunnan kappaleen ympärillä paikallisella satelliittitähdistöllä ja syväavaruuslinkillä Maastabody_pnt (BodyPntScenario,formal_sigma,fix_error); orbit (dop); batch_ls (gauss_newton); mars_pnt (chord_clears_sphere); mars_frame (bodyfixed_to_inertial)
Ominaisuus
Tyyppi body-pnt: nimellä valitun kappaleen ympärillä oleva kiertäjä tai pintalaskeutuja navigoi yksisuuntaisilla pseudoetäisyyksillä kappaleen ympärillä olevasta Walker-navigointisatelliittitähdistöstä (kahden kappaleen radat kappaleen J2-sekulaarisella ajautumalla, tuntematon käyttäjän kello) ja valinnaisella kellovapaalla kaksisuuntaisella etäisyydellä Maasta, Maan suunta ja etäisyys analyyttisestä efemeridistä jokaisena ajankohtana; kappaleen pallon estämät näkölinjat ja pinnan korkeuskulmamaski; ajankohtaa kohti pelkän satelliittitähdistön GDOP ja PDOP (orbit::dop), muodollinen paikkaepävarmuus Maa-rivin kanssa ja ilman sitä sekä siemennetyt Gauss–Newton-ratkaisut (batch_ls::gauss_newton) kumpaakin tapaa, kappaleelta Maahan kulkevalla valoajalla ja edestakaisella ajalla
Oraakkeli
Suljetut muodot ja itsejohdonmukaisuus: Keplerin kolmas laki releen jaksolle, radan säde ja pinnan säde pysyvät vakioina ajon yli, mittauksen lisääminen ei koskaan kasvata muodollista epävarmuutta, ja siemennetyt virheet ovat yhdenmukaisia kovarianssin kanssa. Relerata ohittaa kolmannet kappaleet (Jupiterin vetoa Europan ympärillä oleviin releisiin ei mallinneta), kohina on Gaussin jakaumaa ilmoitetuilla tasoilla ja mittausmalli on hetkellinen, joten tätä ei ole validoitu minkään tehtävän navigointidataa vasten
ValidoituWalker-satelliittitähdistön geometria ja GPS:n, Galileon ja GLONASSin julkaistut nimellispaikatconstellation (WalkerSpec::elements,gps_slots,galileo_walker,glonass_slots,GPS_BASELINE_SLOTS,GPS_EXPANDABLE_SLOTS)
Ominaisuus
Tyypin constellation-design generaattorit: Walker delta- ja star-kuviot T/P/F-käytännössä (solmuväli 360/P tai 180/P, tasonsisäinen väli 360·P/T, tasojen välinen vaihesiirtymä 360·F/T) sekä GPS:n perus- ja laajennettava 24 paikan, Galileon ja GLONASSin esiasetukset, rakennettuina niiden julkaistuista nimellis-elementeistä ja sijoitettuina Maahan kiinnitettyyn koordinaatistoon Greenwichin tuntikulmalla, jonka niiden dokumentit ilmoittavat
Oraakkeli
Julkaistut virastojen dokumentit: Galileo Open Service Service Definition Document issue 1,1 (European GNSS Service Centre) Tables 1 ja 23, vertailusatelliittitähdistö ajankohtana 2016-11-21 00:00 UTC; GLONASS Interface Control Document edition 5,1 (2008) section 5,2, paikkakaava solmun pituuspiirille ja leveysargumentille; GPS Standard Positioning Service Performance Standard 5th edition (April 2020) Tables 3.2-1, 3.2-2 ja 3.2-3, mukaan lukien maajäljen päiväntasaajan ylityksen sarake, joka on riippumaton ilmoitus Maahan kiinnitetystä geometriasta, jonka esiasetuksen on toistettava. Validoi generaattorit ja transkription; BeiDoun keskiratavaihetta ja kallistettujen geosynkronisten ratojen solmuja ei ole julkaistu, eikä niitä kateta
Peittomoottori constellation-design GPS:n 24 paikan perusesiasetuksella GPS Standard Positioning Service Performance Standardin (SPS PS) liitteen B ehdoilla (yksi tähtivuorokausi, 287 viiden minuutin askelta, 4 x 4 asteen globaali ruudukko leveyspiirin kosinilla painotettuna, kaikki näkyvissä, 5 asteen maski, yksi vastaanottimen kello): globaali HDOP-jakauma, PDOP:n mediaani ja PDOP enintään 6 -saatavuus globaalisti ja pahimmassa pisteessä
Oraakkeli
GPS SPS PS 5th edition (April 2020) Appendix B sections B.3.2.2 ja B.3.2.3, täysin miehitetyn 24 paikan perustähdistön julkaistu globaalin keskiarvon HDOP-jakauma (mediaani 0,94, 90 % 1,16, 95 % 1,25, 98 % 1,37, keskiarvo 0,96), Table 3.8-1 (PDOP-saatavuus) ja Table B.3-1 (heikentyneen satelliittitähdistön ensemble-PDOP, käytetty vain ylärajana) sekä käsin johdettu suljettu muoto yhdelle ajankohdalle. Täyden satelliittitähdistön VDOP- ja PDOP-jakaumat on julkaistu vain kuvana, joten PDOP lukitaan yksipuolisesti; pahin aika–paikka-piste (tässä HDOP 2,40 ja VDOP 5,22, julkaistuna 2,49 ja 5,43) riippuu ruudukosta ja raportoidaan, ei lukita
MallinnettuPeitto- ja tarkkuuden heikkenemiskerroinkartat mielivaltaisille usean satelliittitähdistön malleille laajassa mittakaavassa, minkä tahansa keskuskappaleen ympärilläconstellation (coverage,ConstellationDesignScenario,beidou_slots,body_by_name)
Ominaisuus
Tyyppi constellation-design kahden lukitun tapauksen ulkopuolella: eksplisiittiset ja moniverhoiset mallit, useita satelliittitähdistöjä ajoa kohti yhdellä vastaanottimen kellolla tähdistöä kohti, Maa, Kuu ja Mars kappalevakioista, BeiDoun esiasetus (keskiratavaihe ja 118 asteen E kallistetun geosynkronisen radan ylitys mallinnettuina), soluittain näkyvissä olevat satelliitit, GDOP, PDOP, HDOP, VDOP ja saatavuus, harvennetut maajäljet sekä sub-satelliittileveyspiirin näkyvyyden esisuodatin, joka ajaa 5 000 satelliitin mallin 10 asteen ruudukolla sekunnin murto-osassa
Oraakkeli
Sisäinen johdonmukaisuus: raa'an voiman korkeuskulmaskannaus, käsin lasketut ja orbit::dop-palautukset sekä suljetun muodon Walker- ja geosynkroninen geometria. Kahden kappaleen radat valinnaisella sekulaarisella J2:lla, pallomainen kappale paikallisella pystysuoralla säteen suuntaisena, vain geometrinen näkyvyys (ei signaalitehoa, satelliitin terveyttä, maastoa tai kolmannen kappaleen häiriötä), ja järjestelmien välinen suhteellinen vaihe otettuna eri vertailuajankohdista, joten se ei ole minkään päivämäärän tilannekuva. 0,30-katselmus, havainto (pysyy MODELLED): esiasetukset täyttävät julkaistut yksipuoliset DOP-saatavuuden alarajat (BeiDou OS Performance Standard 3,0, Galileo OS SDD) 100 %:n tasolla, mutta kun moottorin PDOP kaksinkertaistetaan työkopiossa, ne silti täyttyvät (pahin piste 99,36 %), joten alarajat eivät pysty havaitsemaan edes 100 %:n virhettä tällä rivillä lasketussa suureessa; niiden kiristäminen ajon jälkeen olisi jälkikäteinen toleranssi. Ylentäminen edellyttää DOP-arvojen kaksipuolista vertailua identtisellä geometrialla ennalta asetetulla toleranssilla. 0,30 kierros 2 (tests/coverage_dop_full_oracle.rs, ennakkorekisteröity add671d6), havainto (pysyy MODELLED): Orekit 12,2 -paikat, korkeuskulma, atsimuutti ja maajäljet sekä gnss_lib_py 1.0.4 GDOP/PDOP/HDOP/VDOP (yhteinen kello) ja numpy-käänteismatriisi (yksi kello tähdistöä kohti) ovat yhtä mieltä kaikilla kynnyksillä Galileon, GPS:n, BeiDoun, Galileo+GPS:n (yksi kello kummallekin) ja 1584 satelliitin Maa-mallin kohdalla (DOP 2e-14 suhteellisen virheen sisällä, identtinen ratkaisu, saatavuus ja näkyvyyslukumäärät). Kuu- ja Mars-malleissa elementit, paikat, näkyvyys ja jäljet täsmäävät, mutta DOP ylittää ennalta asetetun 1e-9 suhteellisen kynnyksen soluissa, joiden suurin PDOP on 1434 tai enemmän (jopa 8e-6), ja 4 solua eroaa yhden ratkaisuajankohdan verran numeerisesti singulaarisella geometrialla (moottorin pivot 1e-10 numpyn astetta vastaan), joten riviä ei ole validoitu. 0,30-tarkistukset: TDOP/GDOP-vertailukello on nyt pienimmän numeron näkyvissä oleva tähdistö (constellation-multi-gnss-coverage globaali GDOP max 2,2236 -> 2,1205, keskiarvo 1,122 -> 1,131), ja tähdistökohtaiset näkyvien lukumäärät summataan kokonaislukuina
Testit
constellation::tests (prefilter_matches_brute_force_exactly — jokainen kartta ja laskuri vastaa suoralla korkeuskulmatestillä tehtyä skannausta; five_thousand_satellites_on_a_coarse_grid — 5 000 satelliittia, tulostaa ajoajan ja…
MallinnettuKetjutettu tehtävä skenaariotyyppien yli yhdellä yhteisellä aikajanallacampaign (run_campaign_detailed,run_chain,presets,extract,to_svg)
Ominaisuus
Tyypin campaign vaiheet: jokainen vaihe ajaa yhden tai useamman olemassa olevan tyypin skenaarion funktiolla run_toml, lukee niiden tulosteet nimettyihin kanaviin (kellon aikavirhe ja suoja, keskimääräinen efektiivinen kantoaalto–kohinatiheyssuhde ja seurantalattia, pystysuora suojaustaso ja hälytysraja, paikkavirhe, seuraavat satelliitit, hälytyslaput) tyyppikohtaisilla esiasetuksilla tai eksplisiittisillä tulospoluilla, sijoittaa ne vaiheen alkuun ja pitää ne yhteisellä ruudukolla, vaiheiden rajoilla ja tapahtumilla; tila siirretään eteenpäin carry-toiminnolla (kanava jatkuu edellisen vaiheen loppuarvosta), handoff-toiminnolla (edellisen vaiheen numero kirjoitetaan seuraavaan skenaarioon) ja end_at-toiminnolla (vaihe päättyy ajon laskemaan aikaan, kuten harhautusvalvonnan havaitsemisaikaan); kampanjatiiviste ja yhteenvetotiiviste jokaisen jäsentuloksen yli
Oraakkeli
Koostamisidentiteetit saman tyypin erillisajoja vastaan: yksivaiheinen kampanja toistaa erillisajon tulosteen bitti bitiltä, siirretty offset on yhtä suuri kuin edellisen ajon oma viimeinen näyte, ja end_at-toiminnolla päätetyn vaiheen pituus on täsmälleen ajon havaitsemisaika. Additiivinen siirto vaiheen rajan yli ja nollannen asteen pito ovat mallinnusvalintoja, ja kukin vaihe on yhtä hyvä kuin sen ajanut tyyppi; mitään ketjutettua tehtävää ei ole tarkistettu mitattua vasten
MallinnettuParametripyyhkäisyt ja siemennetyt Monte Carlo -ensemblet minkä tahansa skenaariotyypin ylicampaign (run_sweep,run_monte_carlo,ensemble); sweep (GenericAxis,coords_of,set_dotted_value); inertial (metric_stat)
Ominaisuus
Tyypin campaign sweep-osio (yhdestä kolmeen pisteillä erotettua avainta mistä tahansa tyypistä, yleisen pyyhkäisyn akseliarvoilla, valinnaisesti ensemble jokaisessa solmussa) ja monte_carlo-osiot: realisaatio k ajetaan siemenluvulla base_seed + k; jokaisesta mittarista raportoidaan keskiarvo, keskihajonta, lähimmän sijan 5., 50. ja 95. persentiili sekä kiinteällä siemenluvulla laskettu persentiili-bootstrap-95 %:n luottamusväli keskiarvolle (inertial::metric_stat); mittarien yksiköt luetaan pyyhkäistyn tyypin omasta units-lohkosta
Oraakkeli
Vaiheen satunnaiskävelyn suljettu muoto valkoisen taajuuskohinan alla, varianssi q_wf tau (NIST Technical Note 1337), tilastokoneistolle, sekä tavuyhtäläisyys erillisajojen kanssa siementämiselle. Se tarkistaa ensemble-aritmetiikan moottorin omalla kellomallilla, ei ulkoista aineistoa
Testit
tests/campaign_composition_reference.rs (a_fixed_seed_ensemble_is_byte_stable_and_each_realisation_is_the_standalone_run; the_ensemble_mean_and_spread_match_the_white_fm_closed_form — 200 seeds of a…
Tyypin campaign compose-osio: nimetyt yhteiset arvot (esimerkiksi yhden häirijän teho ja paikka) kirjoitetaan jokaiseen jäseneen avaimiin, joihin ne on sidottu, jokainen jäsen ajetaan, ja mittaria kohti raportoidaan jäsenten pienin, suurin ja keskimääräinen arvo nimettynä jäsenenä; mittarien yksiköiden on oltava samat kaikissa jäsenissä
Oraakkeli
Koostamisidentiteetti erillisajoa vastaan. Yhteisten olosuhteiden aritmetiikka on kirjanpitoa; fysiikka on jäsentyyppien, joilla kullakin on oma rivinsä
Testit
tests/campaign_composition_reference.rs (a_one_node_sweep_and_a_one_member_composition_read_the_standalone_number — yhden jäsenen koostumus lukee erillisen luvun ja tuloksen tiivisteen)
Tyypin campaign optimize-osio (CAP-32): yhdestä kolmeen pisteillä erotettua skenaarioavainta rajattuna välille [lo, hi] lin- tai log-asteikolla, yksi tulospolulla luettu mittari, tavoite minimize, maximize tai target; menetelmä grid (pyyhkäisyn akseliarvot) tai deterministinen Nelder–Mead-simpleksi normalisoiduissa koordinaateissa laatikkoprojektiolla ja tavallisilla kertoimilla; puuttuva tai ei-äärellinen mittari saa huonoimman pistemäärän ja pysyy jäljessä; kun runs > 1, mittari on keskiarvo yhteisten siemenlukujen yli; jokainen arviointi on nimetyn tyypin todellinen ajo, listattuna kohdassa trace ja laskettuna toistettavuustiivisteeseen
Oraakkeli
Vain sisäinen: linkkiyhtälön tarkka -20 log10(range) -suljettu muoto, riippumaton raa'an voiman ruudukko samalle tyypille ja Rosenbrockin funktio. Kierroksen 1 1-ulotteinen kynnys on NOT MET (ennalta rekisteröity laatikko sulki pois 3 dB:n ratkaisun; optimoija pysähtyi rajaan), kirjattu tiedostoon docs/design/evidence/cap32-optimize/RESULTS.md eikä pisteytetty uudelleen. Optimi on paikallinen laatikolle ja aloituspisteelle; globaalia optimia ei väitetä
Testit
tests/campaign_optimize_reference.rs (ennakkorekisteröity fbe6c8b3 ja, kierroksen 1 protokollan ohituksen jälkeen, 441f31bc: p2_prime_interior_target_range_matches_the_closed_form — 1D-tavoiteratkaisu 6.1e-15 sisällä arvosta r* = r0 10^((m(r0)…
ValidoituKaistarajoitetut suljetut muodot mille tahansa etäisyydenmittaussignaalille: kaistan sisäinen teho ja varhais–myöhäis-koodiseurannan jitter julkaistuja arvoja vastaan, Gabor-kaistanleveys ja siirretty spektrinerotus ristiintarkistettuinanavsignal (sine_integral,bpsk_power_in_band_closed_form,bpsk_gabor_bandwidth_closed_form_hz,dll_jitter_bandlimited_s,dll_jitter_small_spacing_limit_s,bpsk_offset_ssc_closed_form,altboc_15_10_psd,parse_modulation)
Ominaisuus
navsignal: sini-integraali (sine_integral), BPSK-R:n tehon osuus kaksipuolisen kaistan sisällä suljetussa muodossa (bpsk_power_in_band_closed_form), kaistarajoitetun BPSK:n Gabor-kaistanleveys suljetussa muodossa (bpsk_gabor_bandwidth_closed_form_hz), kaistarajoitettu koherentti ja epäkoherentti varhais–myöhäis-viivelukitussilmukan jitter mille tahansa yksikköpinta-alaiselle spektrille Betzin & Kolodziejskin 2009 mukaan (dll_jitter_bandlimited_s) ja sen häviävän välin Gabor-raja (dll_jitter_small_spacing_limit_s), siirretty BPSK:n spektrinerotuskerroin suljetussa muodossa (bpsk_offset_ssc_closed_form), Galileo E5 AltBOC(15 10) -spektri (altboc_15_10_psd) ja modulaatiotunnisteen jäsennin (parse_modulation); tyyppi leo-signal käyttää näitä jokaiselle signaalimallille
Oraakkeli
Ulkoisesti lukittu: 90,3 prosenttia pääkeilan tehoa, koherentti varhais–myöhäis-jitter ilmoitetussa toimintapisteessä, sini-integraalitaulukon arvot sekä BPSK:n itse-spektrinerotuskerroin 2/(3 R_c) nollasiirtymällä. Vain sisäisiä ristiintarkistuksia, ei ulkoista validointia: kaistarajoitetun BPSK:n Gabor-kaistanleveyden suljettu muoto ja sen asymptootti sekä siirretty BPSK:n spektrinerotuskerroin nollasta poikkeavilla siirtymillä, molemmat johdettu tässä ja tarkistettu kvadratuurilla. Julkaistut suljetut muodot: BPSK-R:n sinc-neliöspektri ja sen 90 prosentin pääkeilan teho (Kaplan & Hegarty, Understanding GPS/GNSS, 3rd ed.); koherentti varhais–myöhäis-koodiseurannan jitter sigma^2 = B_L d / (2 C/N0) chips^2 (Kaplan & Hegarty, section 8) ja kaistarajoitettu yleistys Gabor-kaistanleveysrajoineen (Betz & Kolodziejski, Generalized Theory of Code Tracking with an Early-Late Discriminator, Part I, IEEE Transactions on Aerospace and Electronic Systems 45(4), 2009); Abramowitzin & Stegunin sini-integraalitaulukot (Table 5,1); spektrinerotuskerroin autokorrelaation neliön Fourier-muunnoksena (Betz 2001). AltBOC-spektristä tarkistetaan vain yksikköpinta-ala ja keilan paikka (Galileo Open Service Signal-in-Space Interface Control Document -lauseke integroituu arvoon 8, ja se jaetaan sillä).
ValidoituMatalan Maan kiertoradan navigointisatelliitin suurin Doppler, joka mitoittaa hakualueenleo_signal (max_doppler_hz)
Ominaisuus
leo_signal::max_doppler_hz: suurin satelliitin Doppler yläpuolisella ylilennolla korkeuskulmamaskin kohdalla ympyräradalle, v R_E cos(el) / (R_E + h) kertaa f / c, kunkin esiasetuksen omasta kantoaallosta ja ratakorkeudesta; tyyppi leo-signal lisää oskillaattori- ja käyttäjätermit ja muuttaa sen Doppler-lokeroiksi
Oraakkeli
Julkaistut luvut: Xona Pulsar X1 suurin Doppler 32–34 kHz (Leclère, Marathe & Reid, ION GNSS+ 2025, https://arxiv.org/abs/2509.19551); Iridiumin Doppler enintään +/-36 kHz (Resilient Navigation and Timing Foundation, Recent PNT Improvements and Test Results Based on Low Earth Orbit Satellites). Maan pyöriminen on jätetty pois, mikä muuttaa lukua enintään noin 2,3 kHz; molemmat julkaistut luvut täyttyvät ilman sitä.
Testit
leo_signal::tests::max_doppler_matches_published_xona_and_iridium_figures — Xona Pulsar X1 (1593.3225 MHz, 1080 km) 33.2 kHz inside the published 32 to 34 kHz; Iridium (1621 MHz, 780 km) within 0.5 kHz of the published…
MallinnettuMatalan Maan kiertoradan paikannus-, navigointi- ja ajanmääritysjärjestelmien signaalimallit: koodiseuranta, havaitseminen, GNSS-yhteensopivuus ja kaistavertailu mille tahansa järjestelmälleleo_signal (LeoSignalScenario,SignalDesign,Component,Shape,code_jitter_m,gabor_bandwidth_hz,detection_probability,threshold_for_pfa,mean_acquisition_time_s,ssc_leo_into_gnss,ssc_gnss_into_leo,jammer_tolerance,gnss_victim,preset,public_signal)
Ominaisuus
Tyyppi leo-signal: parametrisoidut signaalimallit (kaista, lähetyskaistanleveys, ITU-allokaatio; havainto-, data- ja pilottikomponentit BPSK(n)-, BOC(m,n)-, MBOC- tai tasaisilla spektreillä, tehonjaot, FDMA-alikantoaallot, koodipituudet ja datanopeudet) käännetyistä julkisista esiasetustiedostoista (Xona Pulsar, Iridium STL, Starlink-opportunistinen signaali, CentiSpace, yleinen C-kaistan malli sekä yleiset UHF/L/S/C/laaja-C-mallit, kullakin lähde-URL ja julkaisemattomat arvot merkittyinä REPRESENTATIVE) tai kirjoitettuna suoraan; signaalia kohti kaistarajoitettu tehospektritiheys, kaistansisäiset tehoosuudet, Gabor-kaistanleveys, koodijitter suhteessa C/N0:aan ja välitykseen sekä etäisyydenmittaustarkkuus, hakuavaruus, neliölakihavaitsemisen todennäköisyys sekä keskimääräinen sarja- ja koodirinnakkaishankinta-aika, spektrinerotuskerroin signaaleihin GPS L1 C/A, Galileo E1, GPS L5, Galileo E5a, E5b ja AltBOC ja niistä C/N0-heikkenemän kanssa sekä CW-, laajakaista- ja sovitettu J/S-sieto spektrityypin SSC-ketjusta; ionosfäärin viiveen, vapaan tilan vaimennuksen, yhtäläisellä C/N0:lla ja yhtäläisellä EIRP:llä saavutettavan etäisyydenmittaustarkkuuden ja häirinnänsiedon kaistavertailu; sekä mallin laadulliset muototarkistukset kuvattua mittausta vasten
Oraakkeli
Yllä olevien kahden rivin validoidut suljetut muodot, neliölakihavaitsemisen väärän hälytyksen identiteetti P_d(snr = 0) = P_fa ja Holmesin keskimääräinen hankinta-aika sekä palautus spektrityypin omaan SSC-ketjuun (sama Jammer::ssc-koodi). Mallit itse ovat syötteitä: esiasetukset, jotka on merkitty REPRESENTATIVE tai WORKSHOP, eivät ole julkaistuja määrittelyjä, parannetut Feher-QPSK-, koodinsiirtoavainnus- ja OFDM-spektrit on approksimoitu, ja muototarkistukset vertaavat muotoja, ei kalibroituja tasoja.
MallinnettuMonikaistainen spektrin vesiputouskuvaaja (UHF, L, S, C) suunnitelluilla signaaleilla ja kaistakohtaisilla häirijöilläspectrum (Band::unit_psd,Band::tracked_power_dbw,BandDesign,BandCfg,PanelCfg,SpectrumScenario,Waveform,multi_band_svg); leo_signal (SignalDesign::to_spectrum_band)
Ominaisuus
Tyyppi spectrum laajennettuna L-kaistan ulkopuolelle: kaistat annettuna esiasetettuna signaalimallina (piirrettynä jokaisella komponentilla, kaistarajoitettuna lähetyskaistanleveyteen, C/N0 ja J/S viitattuna seurattuun komponenttiin) tai mukautettuna kantoaaltona ja modulaationa; ylimääräiset vesiputouspaneelit millä tahansa taajuusalueella samalla aikajanalla ja värikaavalla; laajakaistainen (barrage) häirijä CW-, kapeakaista-, chirp- ja sovitetun kohinan rinnalla; kaistakohtainen J/S ja efektiivinen C/N0 muuttumattomasta spektrinerotuskerroinketjusta
Oraakkeli
Palautus nykyiseen spektriketjuun ja häirintätyypin häirinnänestoyhtälöön (yhden komponentin kaista antaa samat luvut kuin ennen laajennusta) sekä validoitujen rivien signaalispektreihin. Häirijöiden tehot, aikajana, etupään kaistanleveydet ja suunnitellut signaalit ovat syötteitä, ja suunniteltu signaali katkaistaan lähetyskaistallaan (ei kaistan ulkopuolista emissiota).
Testit
tests/leo_signal_reference.rs (monikaistainen vesiputous ajetaan neljällä paneelilla, UHF-, L5-kaista-, S- ja C-häirintälähettimet kieltävät kukin vain oman kaistansa, ja tavallisen kaistan ajo ei muutu laajennuksesta)…
ValidoituSateen ominaisvaimennuskertoimet mille tahansa LEO-PNT-linkin käyttämälle kaistalleleo_link::itu (p838_coefficients,p838_k_alpha,rain_specific_attenuation_db_km)
Ominaisuus
ITU-R (International Telecommunication Union, Radiocommunication Sector) P.838-3 -yhtälöt (1)–(5): k_H, alpha_H, k_V, alpha_V taulukoiden 1–4 käyräsovituksista, reitistä ja polarisaatiosta riippuvat (k, alpha) ja ominaisvaimennus k R^alpha; tyypin leo-pass sadetermi käyttää niitä
Oraakkeli
ITU-R P.838-3 (03/2005) Table 5, suosituksen oma taulukoitu k_H, alpha_H, k_V, alpha_V, committoitu tiedostoon tests/fixtures/leo_link/p838_3_table5.csv PDF-URL:n ja hakupäivän kanssa. Taulukko on pyöristetty painettuihin numeroihinsa, joten kynnys on tuo pyöristys
Testit
tests/leo_link_reference.rs (p838_coefficients_reproduce_table5_to_its_printed_digits: kaikki 115 taulukon 5 riviä, 1 GHz – 1000 GHz, jokainen kerroin 0,6 sisällä viimeisestä painetusta numerosta; huonoin havaittu 0,51)
ValidoituPitkän aikavälin vinon reitin sadevaimennus Maa–avaruus-linkilläleo_link::itu (p618_rain_attenuation_db,RainPath)
Ominaisuus
ITU-R P.618-14 section 2.2.1.1 steps 2–10 (vino ja vaakasuora reitti sadekorkeuden alapuolella, vaakasuuntainen supistus- ja pystysuuntainen korjauskerroin, A0.01 ja sen skaalaus arvoihin 0,001 %–5 % keskimääräisestä vuodesta), sadekorkeus (P.839) ja R0.01 (P.837) syötteinä, koska moottori ei sisällä kumpaakaan digitaalista karttaa; tyyppi leo-pass soveltaa kaistaa ja ajankohtaa kohti
Oraakkeli
ITU-R Study Group 3 -validointiesimerkkitiedosto CG-3M3J-13-ValEx-Rev8.3.0 suositukselle P.618-14, ITU-Rpy-validointisivujen taulukoimana, kunkin paikan P.839-4-sadekorkeus samoista esimerkeistä; committoitu tiedostoon tests/fixtures/leo_link/p618_14_rain_attenuation.csv URL-osoitteiden ja hakupäivän kanssa. Validoi menettelyn kun h_R ja R0.01 on annettu, ei karttoja
Testit
tests/leo_link_reference.rs (p618_rain_attenuation_matches_the_itu_validation_examples: 56 tapausta viidessä paikassa, 14,25 ja 29 GHz, 0,001 % – 1 %, 1e-4 dB sisällä; havaittu 5e-6 dB)
ITU-R P.618-14 section 2.4.1 steps 3–9 (vertailu-sigma arvosta N_wet, efektiivinen reitin pituus, antennin keskiarvoistuskerroin, häipymän syvyys 0,01 %:lle–50 %:lle ajasta), N_wet syötteenä tai laskettuna lämpötilasta, kosteudesta ja paineesta ITU-R P.453-14 -lausekkeilla; alle 4 GHz tyyppi leo-pass merkitsee arvon ekstrapoloinniksi
Oraakkeli
ITU-R Study Group 3 -validointiesimerkit (CG-3M3J-13-ValEx-Rev8.3.0) P.618-14-sintillaatiolle, kunkin paikan P.453-14 N_wet samoista esimerkeistä; committoitu tiedostoon tests/fixtures/leo_link/p618_14_scintillation.csv URL-osoitteiden ja hakupäivän kanssa. Märän refraktiivisuuden lauseketta lämpötilasta ja kosteudesta ei kata tämä rivi
Testit
tests/leo_link_reference.rs (p618_scintillation_matches_the_itu_validation_examples: 42 tapausta seitsemässä paikassa, 14,25 ja 20 GHz, 1e-5 dB sisällä; havaittu 5e-7 dB)
ITU-R P.2109-2 Annex 1 equations (1)–(10) ja Table 1: vaimennus, jota ei ylitetä todennäköisyydellä P, perinteisille ja lämpötehokkaille rakennuksille reitin korkeuskulmassa julkisivulla, 80 MHz–100 GHz; tyyppi leo-pass soveltaa kaistaa ja ajankohtaa kohti sisätiloissa olevaan käyttäjään (UHF-sisätilatapaus)
Oraakkeli
ITU-R Study Group 3 Clutter and BEL -validointityökirjan arvot sellaisina kuin ne on transkriboitu vertailu-MATLAB-toteutuksen validointiskriptissä (github.com/eeveetza/p2109), committoitu tiedostoon tests/fixtures/leo_link/p2109_bel.csv URL-osoitteen ja hakupäivän kanssa. Työkirja tulostaa kolme desimaalia
Testit
tests/leo_link_reference.rs (p2109_building_entry_loss_matches_the_itu_workbook: 568 arvoa, 28 GHz kulmassa 0 astetta ja 2 GHz kulmassa 45 astetta, molemmat luokat, P välillä 1e-7 – 0,998, 0,001 dB sisällä)
ValidoituEnsimmäisen asteen ionosfäärin viive kaistaa kohti, ionosfäärivapaa yhdistelmä ja vapaan tilan vaimennusleo_link::iono (group_delay_m,iono_free_coefficients,iono_free_noise_amplification); leo_link (fspl_db); linkbudget (free_space_loss_db)
Ominaisuus
Ryhmäviive 40,3 STEC/f^2 kaistaa kohti; ionosfäärivapaat kertoimet f1^2/(f1^2 - f2^2) ja -f2^2/(f1^2 - f2^2) sekä kohinan vahvistus sqrt(a1^2 s1^2 + a2^2 s2^2) mille tahansa kaistaparille; vapaan tilan vaimennus 20 log10(4 pi R f/c) funktiosta linkbudget::free_space_loss_db sen kilometri–megahertsi-muodossa
Oraakkeli
IS-GPS-200 section 20.3.3.3.3.2, joka ilmoittaa L1/L2-ryhmäviiveen suhteen gamma = (77/60)^2, joka seuraa ensimmäisen asteen 1/f^2-skaalauksesta, sekä Friisin siirtokaava (Proc. IRE, 1946). Validoi skaalauslait, ei vinoa TEC:iä
Testit
tests/leo_link_reference.rs (first_order_iono_reproduces_the_is_gps_200_group_delay_ratio: gamma = (77/60)^2 to 1e-12, L1/L2 and L1/L5 amplification 2.978 and 2.588…
ValidoituSuurin Doppler, jonka staattinen käyttäjä näkee LEO- tai MEO-radaltaleo_link::geometry (max_static_user_range_rate,DopplerEnvelope,doppler_hz)
Ominaisuus
leo_link::geometry::max_static_user_range_rate: haku ympyräradan jokaisen rataspaikan ja jokaisen satelliitin horisontilla olevan käyttäjän yli, Maan pyöriessä, suurimmalle etäisyyden muutosnopeudelle, sekä rata- ja suurin Maahan kiinnitetty satelliitin nopeus; tyyppi leo-pass raportoi kaistaa kohti Doppler-verhokäyränä ja käyttää sitä sen matalaenergiamallin kylmäkäynnistyksen hakuikkunana
Oraakkeli
Leclere, Marathe and Reid, Insights into Xona Pulsar LEO PNT: Constellation, Signals, and Receiver Design, ION GNSS+ 2025, arXiv 2509,19551, Table 1 (staattinen vastaanotin 6371 km:n pallolla, Maan pyöriminen ainoa muu vaikutus): 37751,7 / 33628,5 / 31813,4 / 4018,4 Hz L1:llä. Kattaa ympyrämäiset kahden kappaleen radat
Testit
tests/leo_link_reference.rs (doppler_envelope_reproduces_the_pulsar_paper_table_1: Pulsar IOV 520 km 97 astetta, Pulsar FOC polaarinen 1080 km 97 astetta, Pulsar FOC kalteva 1080 km 53 astetta ja GPS 20180 km 55 astetta; kiertonopeus…
MallinnettuLEO-PNT-ylilento ja sen kaistakohtainen linkkibudjetti näkyvissä oleviin MEO-GNSS-satelliitteihin verrattunaleo_pass (LeoPassScenario); leo_link::geometry (design_pass,link_geometry,numerical_check,SatMotion,UserMotion); leo_link::antenna; leo_link::itu (p676_gaseous_attenuation_db); leo_link (system_noise_temperature_k,cn0_dbhz)
Ominaisuus
Tyyppi leo-pass: satelliitit suunnitellusta ylilennosta, elementeistä, TLE:stä SGP4:n kautta tai Walker-satelliittitähdistöstä tyypistä constellation-design; kaistaa ja ajankohtaa kohti katselukulmat, etäisyys, suljetun muodon etäisyyden muutosnopeus ja etäisyyden kiihtyvyys (tarkistettu joka ajolla keskeisdifferensseillä ja raportoitu), vapaan tilan vaimennus, EIRP isoflux-, Gauss- tai tasaisella kuviolla, patch-, puolipallo- tai isotrooppinen käyttäjäantenni, ITU-R P.676-10 Annex 2 -kaasuvaimennus, P.618-sade ja -sintillaatio, P.2109-rakennuksen läpäisyvaimennus, polarisaatiosovittumattomuus, järjestelmän kohinalämpötila, C/N0, Doppler ja Dopplerin muutosnopeus sekä ensimmäisen asteen viive Klobucharin tai pystysuoran TEC:n vinosta TEC:stä satelliitin alapuolisella Chapman-osuudella skaalattuna; ionosfäärivapaat parit koodikohinalla ylilennon huipulla; Galileo- tai GPS-kantoaallot niiden rajapintadokumenttien vastaanotetuista tehoista saman vastaanottimen kautta
Oraakkeli
Suljetut muodot ja itsejohdonmukaisuus: etäisyyden muutosnopeuden ja etäisyyden kiihtyvyyden identiteetit numeerisia derivaattoja vasten, isoflux-vahvistus kumoaa etäisyyden kasvun, oppikirjan polarisaatiohäviön rajat, laadullinen LEO–GNSS-havainto (kellonmuotoinen, minuuttien mittainen ylilento, jonka huippu on useita dB tasaisten 44–51 dB-Hz GNSS-kantoaaltojen yläpuolella). EIRP:t ja kuviot ovat julkaistuja vastaanotettuja tehoja muutettuna EIRP:ksi tai edustavia valintoja, kaasutermi on korvattu P.676-10:n yksinkertaistettu menetelmä, eikä mitään verrata mitattuun LEO:n C/N0:aan
Testit
leo_pass::tests (the_leo_pass_is_a_bell_above_flat_gnss; closed_form_doppler_agrees_with_the_numerical_derivative: under 0.01 Hz and 0.01 Hz/s; indoor_uhf_suffers_less_building_loss_than_c_band…
MallinnettuNimetyt LEO-PNT-järjestelmäesiasetukset ilmoitetuin lähtein sekä järjestelmäagnostinen moottorileo_link::presets (SystemPreset,BandPreset,all,by_id,gnss_meo); leo_pass (resolve_bands)
Ominaisuus
leo_link::presets: yleinen monikaista (UHF, L, S, C), yleinen C-kaista, Xona Pulsar X1/X5, Iridium STL, Starlink vain Doppler-signaalina opportunistisena signaalina, CentiSpace ja valinnainen Celeste IOD -esiasetus, kunkin lähde merkittynä PUBLIC (URL-osoitteen kanssa), REPRESENTATIVE tai WORKSHOP, työpajaesiasetus valinnaisessa Celeste IOD -esiasetustiedostossa ja käännetään mukaan vain jos tuo tiedosto on olemassa; jokainen kaista ja rata on ohitettavissa skenaariossa, ja skenaario voi olla nimeämättä mitään esiasetusta
Oraakkeli
Lainattujen julkisten lukujen transkriptio ja johdonmukaisuustarkistus: julkaistusta pienimmästä vastaanotetusta tehosta asetettu EIRP ennustaa julkaistun suurimman 0,5 dB:n sisällä tasaisella kuviolla. Se on etäisyysvaihtelun tarkistus, ei minkään satelliitin antennin validointi; edustavat esiasetukset eivät väitä mitään todellisesta järjestelmästä
MallinnettuMatalaenergiapaikannus: aika ensimmäiseen ratkaisuun ja energia ratkaisua kohti suhteessa käyttösuhteeseenleo_link::energy (fix_budget,duty_curve,IotReceiver,IotSignal); leo_pass (iot_section)
Ominaisuus
leo_link::energy ja tyypin leo-pass [iot]-osio: Doppler-nopeuden rajoittama koherentti integrointi, neliölakiset epäkoherentit summat havaitsemiskynnykseen, Doppler-lokerohaku radan staattisen käyttäjän verhokäyrän yli (kylmä) tai tuettu ikkuna (kuuma), rinnakkainen tai sarjahaku koodille, navigointiviestin aika kylmäkäynnistyksessä, energia ratkaisua kohti ja akun kesto ratkaisuvälien yli, jokaiselle LEO-kaistalle ja GNSS-signaalille
Oraakkeli
Ilmoitetun mallin sisäinen johdonmukaisuus: jokainen teho-, kynnys- ja hakuvalinta on syöte, ja malli jättää huomiotta bittireunan epäselvyyden, havaitsematta jäämisen ja uudelleenhankinnan. Ei verrata mitattuun vastaanottimeen
ValidoituGlobaalin keskiarvon signaali avaruudessa -etäisyysvirheen painot mille tahansa ratakorkeudelleleo_navmsg::sisre (sisre_weights,StatsAcc)
Ominaisuus
leo_navmsg::sisre::sisre_weights: radiaalipaino w_R ja poikittaispainon neliö w_AC^2 näkölinjan nadiirikulman cos^2:n ja puolikkaan sin^2:n keskiarvoina korkeuskulmamaskin yläpuolella näkyvällä Maan kalotilla tasaisesti jakautuneiden käyttäjien yli, mille tahansa ratasäteelle, Simpsonin integroinnilla; jokainen leo-navmsg-SISRE-luku käyttää sitä (korkeudella 510 km w_R 0,46 ja w_AC^2 1/2.5)
Oraakkeli
Julkaistu SISRE-painokerrointaulukko, Montenbruck, Steigenberger ja 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 ja 1/49, GLONASS 0,98 ja 1/45, Galileo 0,98 ja 1/61, BeiDou MEO 0,98 ja 1/54, BeiDou IGSO/GEO 0,99 ja 1/126. Sama keskiarvo laskettuna LEO-ratasäteillä antaa LEO-painot; julkaistua LEO-taulukkoa ei ole kiinnitetty, joten LEO-arvot ovat validoidun menetelmän soveltamista, eivät erikseen validoituja
Testit
leo_navmsg::sisre::tests (weights_reproduce_the_published_meo_and_geo_table — GPS 0,979 ja 1/48.9, GLONASS 1/45.0, Galileo 0,984 ja 1/61.1, BeiDou MEO 1/54.2, geostationaarinen 0,992 ja 1/126.2 0 asteen maskilla, kukin…
leo_navmsg::elements::kepler_point: Galileo OS SIS ICD:n mukainen Kepler-ratojen laskenta (Keplerin yhtälö, toisen harmonisen korjaukset, Maahan sidottu solmu), kirjoitettu erikseen moottorin RINEX-laskijasta; se palauttaa paikan sekä leveysargumentin, inklinaation ja solmun, joiden varaan pitkin-, poikki- ja säteissuuntainen korjauskehys rakennetaan, sekä Liu et al. 2025 -laajennustermit
Oraakkeli
RTKLIB 2.4.2-p13 eph2pos ECEF-paikat (saman ICD-algoritmin riippumaton toteutus) todellisille BKG/IGS-lähetetyille tietueille ajalta 2024-09-10; molemmat on tallennettu alkuperätietoineen hakemistoon tests/fixtures/rinex_sp3_interop (NOTICE, rinex_ecef_reference.txt, brdc_multignss_slice.rnx). Tämä validoi Kepler-käyttäjäalgoritmin; sen päälle lisättyjä pitkin-, poikki- ja säteissuuntaisia korjauksia kattavat niiden omat rivit ja Liu-termejä Liu et al. 2025 -mallin 22 parametrin rivi
Testit
tests/leo_navmsg_reference.rs (the_galileo_user_algorithm_reproduces_rtklib_to_a_millimetre — neljä todellista Galileo-lähetysefemeridiä E10, E19, E24, E25 hetkillä tk = 0, +/-600, +/-1800, +/-3600 s, jokainen akseli 1 mm sisällä…
leo_navmsg::codec::crc24q: generaattoripolynomi 0x1864CFB, alkuarvo 0, ei peilausta, ei lopullista XOR-operaatiota; tarkistus, jonka Kshana-LEO-kehys kantaa kaikkien edeltävien tavujen yli
Oraakkeli
CRC-luettelon tarkistusarvo näille parametreille (reveng.sourceforge.io CRC catalogue, CRC-24/LTE-A: leveys 24, poly 0x864CFB, init 0, check 0xCDE703), jotka ovat RTCM 10403:n ja Galileo OS SIS ICD:n CRC-24Q-parametrit, sekä RTCM 10403:ssa painettu viestityypin 1005 esimerkkikehys
ValidoituLEO-lähetetyn efemeridin sovitin ja signaali avaruudessa -etäisyysvirhe suhteessa sovitusvälin pituuteen ja päivitysjaksoonleo_navmsg::fit (fit_message,lstsq,polyfit); leo_navmsg::truth (TruthOrbit,TruthClock); leo_navmsg (sequence_stats,LeoNavmsgScenario)
Ominaisuus
Tyypin leo-navmsg sovitin ja kompromissi: valittuun asteeseen asti vyöhykkeisellä J2-J6- tai EGM2008-painovoimalla ja ilmanvastuksella integroitu todellinen rata sekä siemenluvulla alustettu vapaa tai ohjattu kello; Galileon Kepler-parametrijoukon Levenberg-Marquardt-sovitus ei-singulaarisille elementeille heikoin priorein, minkä jälkeen pitkin-, poikki- ja säteissuuntaiset korjauspolynomit lineaarisella pienimmän neliösumman menetelmällä; kellopolynomi sovitettuna käyttäjän relativistisen termin vähentämisen jälkeen; SISRE (pelkkä rata ja kellon kanssa) käyttöjaksoilla, jotka on keskitetty sovitusikkunoihinsa, suhteessa sovitusväliin ja päivitysjaksoon. Validoitu osa: 16 parametrin Kepler-sovitus ja sen pelkän radan SISRE suhteessa sovitusväliin todellisilla tarkoilla radoilla sekä integroitu J2-J6/EGM2008(20, 70)/ilmanvastus-todellinen rata Orekit 12,2 -ohjelmaa vasten 4,6 mm:n sisällä 6 tunnin ajalla (kynnys 2 cm, sama tiheyssyöte); korjauspolynomit, kellosovitus (siemenluvulla alustettu vapaa tai ohjattu kello) ja päivitysjakson kompromissi pysyvät mallinnettuina
Oraakkeli
Todelliset tarkat tieteelliset radat todellisena arvona (TU Graz IfG/ITSG:n operatiiviset redusoidun dynamiikan radat, vapaasti käytettävissä kaikkeen käyttöön kuittausta vastaan; SHA-256-arvot tiedostossa fixture NOTICE) sovitettuna 16 parametrin joukolla 20 ja 30 min:n kaarille, verrattuna tilastoihin, jotka Liu et al. 2025 (Remote Sensing 17(16):2894, CC BY 4,0) julkaisevat samoille satelliiteille ja päiville: pitkin-, poikki- ja säteissuuntainen RMS kukin 1,5-kertaisen rajan sisällä (mitattu 0,804–1,087), SISRE 1,5-kertaisen rajan sisällä (mitattu 0,716–0,809) ja SISRE-painot 0,005:n sisällä sen taulukosta 2 (mitattu 0,0007); toleranssit kiinnitettiin ennen vertailua. Komponenttikohtainen portti antaa testille hampaat: inklinaation muutosnopeuden nollaaminen jättää jokaisen SISRE-suhteen 1,5-kertaisen rajan sisään mutta kaataa poikkisuuntaisen portin. Yhtenäinen SISRE-suhde 0,72–0,81 on artikkelin oma: sen painetut SISRE-arvot käyttävät taulukon 2 painoja neliöimättöminä oman yhtälönsä 9 sijaan, jota Kshana noudattaa (Montenbruck et al. 2018). Integroitu todellinen rata (vyöhykkeinen J2-J6, EGM2008 asteisiin 20 ja 70, ilmanvastus) täsmää Orekit 12,2 -ohjelman (CS GROUP, Apache-2.0) ja Hipparchus 3,1 -kirjaston kanssa, kun ne on edetetty samasta alkutilasta samoissa koordinaatistoissa samalla tiheyssyötteellä, 4,55 mm:n sisällä 6 tunnin ajalla (kynnys 0,02 m kiinnitettiin ennen ajoa, ennakkorekisteröinti 65e4d46c). Väitteen ulkopuolella: korjauspolynomit, kellosovitus ja päivitysjakson kompromissi, joilla on sisäiset tarkistukset (kaksikappaleradan todellinen rata, jonka 16 parametrin joukko palauttaa alle 1 mm:n tarkkuudella, sekä GRACE-FO:n ja sen CLK1B-kellon vientisanomien sisäinen numpy-ristiintarkistus, jonka tämä projekti kirjoitti ja ajoi ja joka ei ole riippumaton oraakkeli)
MallinnettuLEO-navigointisanoman päivitys ylilennon aikana ja jatkuvuustarkistus vaihtohetkelläleo_navmsg (LeoNavmsgScenario::midpass,worst_case_jump,elevation,geodetic_to_ecef)
Ominaisuus
Tyypin leo-navmsg ylilennon aikaisen päivityksen analyysi: käyttäjän korkein ylilento hakujaksolla, sanomat yleisellä aikataululla ja käyttöjaksot keskitettynä sovitusikkunoihinsa, ja jokaisella vaihtohetkellä 3D-paikkahyppy, kellohyppy, käyttäjän pseudoetäisyyshyppy, suurin hyppy minkä tahansa näkyvän näkölinjan yli (suljettu muoto nadiirikartion yli), etäisyysvirhe ennen ja jälkeen sekä PASS/FAIL kynnystä vasten
Oraakkeli
Sisäinen johdonmukaisuus (hyppyidentiteetti ja kartiorajoite raa'an voiman otantaa vasten). Kynnys on syöte; julkaistua LEO-jatkuvuusvaatimusta ei ole kiinnitetty
Testit
leo_navmsg::tests::a_mid_pass_update_is_continuous (jokaisen vaihdon etäisyyshyppy vastaa etäisyysvirheen muutosta, ja korjattu 300 s:n sovitus, joka päivitetään 150 s välein, läpäisee 5 cm:n kynnyksen)…
MallinnettuLEO-navigointisanoman dokumentoitu binäärikoodaus ja kvantisointivirhebudjettileo_navmsg::codec (encode,decode,write_payload,read_payload,field_table,quantisation_budget)
Ominaisuus
leo_navmsg::codec: Kshanan oma kehys (johdanto, versio, malli, pituus, hyötykuorma, CRC-24Q) neljälle efemeridimallille, kellopolynomille, SVID:lle, datan julkaisutunnukselle, kaistalle, terveydelle, Klobuchar-joukolle, NeQuick-G-kertoimille ja UTC-parametreille, jokaiselle kentälle ilmoitettu leveys ja askel (field_table), kvantisointi alueen ylityksen hylkäyksellä sekä budjetti suurimmalle paikan ja kellon muutokselle, jonka kunkin kentän puolen askeleen muutos aiheuttaa voimassaoloaikana
Oraakkeli
Kierrosidentiteetit ja itse budjetti. Muoto on Kshanan oma, mallinnettu julkaistuihin sanomakomponentteihin ja Galileo ICD:n kenttäjoukkoon; se ei ole Celesten tai minkään muun järjestelmän bittiasettelu (mikään ei ole julkinen), joten ulkoista asettelua vasten ei voi validoida
Testit
leo_navmsg::codec::tests (signed_fields_round_trip_through_the_bit_packer; week8_resolves_near_the_reference); leo_navmsg::tests::every_model_round_trips_through_the_binary_frame (every model within 2 mm of the exact…
MallinnettuLEO-navigointisanomien RINEX-4-tyyliset ja CSV-viennitleo_navmsg::text (rinex_export,rinex_import,csv_export,csv_import,calendar,from_calendar)
Ominaisuus
leo_navmsg::text: RINEX-4-tyylinen lohko (> EPH-tietueen otsikko, satelliitti- ja epookkirivi kolmella kellotermillä, D19.12-lähetetyn radan rivit) järjestelmäkirjaimella L ja tietuetyypeillä KP16, KRAC, LU22 ja APOL, jokaisessa otsikossa merkittynä Kshana-laajennukseksi, joka ei kuulu RINEX 4,02 -standardiin, sekä CSV-taulukko oletussarakeskeemalla ja esiasetetuilla skeemoilla, kullekin tuoja
Oraakkeli
Kierrokset ja kalenterilaskenta. RINEX 4,02 ei määrittele LEO-navigointitietueita (IGS RINEX 4,02), joten asettelu on dokumentoitu laajennus, jossa arXiv 2401,17767 on mainittu aiempana tekniikkana; sen tarkistamiseen ei ole ulkoista lukijaa
Testit
leo_navmsg::text::tests (calendar_round_trips_and_knows_the_gps_origin; d19_is_rinex_shaped); leo_navmsg::tests::rinex_and_csv_round_trips (jokainen malli 0,1 mm sisällä tekstilohkon jälkeen, CSV täsmällinen)
ValidoituLiu et al. 2025 -mallin 22 parametrin LEO-efemeridimalli ja sen sovitus todellisille tarkoille radoilleleo_navmsg::elements (kepler_point,Liu22Extra); leo_navmsg::fit (fit_message,fit_kepler,initial_params,formal_sigma); leo_navmsg::truth (TruthOrbit)
Ominaisuus
leo_navmsg::elements::EphemerisModel-tyypin Liu22-variantti, jonka kepler_point laskee Liu22Extra-rakenteella: 16 parametrin joukko sekä isoakselin muutosnopeus a_dot, keskiliikkeen muutosnopeus n_dot, joka tulee mukaan muodossa n = sqrt(mu/A0^3) + dn + n_dot tk ja on kirjattu artikkelin yhtälöstä 1 (sovitusvertailu ei riipu tästä skaalakonventiosta, joten lähetetyn nDot-arvon merkitystä ei validoida tässä), sekä kerran ja kolmesti kierrosta kohden esiintyvät sädeharmoniset Crs1, Crc1, Crs3, Crc3 korjaamattomalla leveysargumentilla. Sen sovitus leo_navmsg::fit::fit_message-funktiolla noudattaa artikkelin kohdan 2,3 alkutilaa ja estimaattoria (jokainen korjaus alkaa nollasta; tavallinen pienin neliösumma ilman prioreita; artikkelin 100 iteraation raja), mutta pysähtyy Kshanan parametrikonvergenssisääntöön (jokainen askel alle 1e-3 sen muodollisesta sigmasta) artikkelin säännön, RMS-muutos alle 0,1 mm, sijaan. Sovitettu 20 ja 30 minuutin kaarille taulukoidusta tarkasta radasta
Oraakkeli
Mitattu: TU Graz IfG/ITSG:n operatiiviset redusoidun dynamiikan radat (vapaasti käytettävissä kaikkeen käyttöön kuittausta vastaan; SHA-256-arvot tiedostossa fixture NOTICE) satelliiteille GRACE-A, GRACE-C, Sentinel-2A ja Sentinel-6A ovat todellinen arvo, sovitettuna 20 ja 30 min:n kaarille ja verrattuna Liu, Su, Xie, Zhou ja Qu (2025) -artikkelin taulukoiden 4, 5, 6 ja 8 22 parametrin riveihin (a_dot, n_dot, Crs3, Crc3, Crs1, Crc1), Remote Sensing 17(16):2894, doi 10.3390/rs17162894 (CC BY 4,0; luvut lainattu, ei kopioitu). Kynnykset kiinnitettiin ennen ensimmäistä vertailua: pitkin-, poikki- ja säteissuuntainen RMS kukin 1,5-kertaisen rajan sisällä kaksipuolisesti ja SISRE 1,5-kertaisen rajan sisällä jokaiselle satelliitille ja molemmille kaaren pituuksille. Kierroksen 2 uusinta ennakkorekisteröitiin (aa559785) ennen moottorimuutosta ja ennen pidätettyjen ratojen hakua: artikkelin yhtälön 1 ja kohdan 2,3 sovitus sekä kaksi uutta pidätettyä päivää satelliittia kohden samoja painettuja arvoja vasten. Mitattu: jokainen artikkelin päivän suhde 0,755–1,138 ja jokainen pidätetyn päivän suhde 0,683–1,186. Ilmoitettu: ensimmäisen ajon 20 min:n pitkittäissuuntaiset suhteet 1,71 (Sentinel-2A) ja 1,86 (Sentinel-6A) tiedettiin ennen uusintaa. Pienimmät pidätetyt SISRE-suhteet ovat lähellä alarajaa 0,667, koska artikkelin painettu SISRE käyttää taulukon 2 painoja neliöimättöminä (ks. 16 parametrin sovittimen rivi). Ennakkorekisteröinti kuvasi artikkelin pysäytyssäännön väärin (artikkeli pysähtyy, kun RMS-muutos on alle 0,1 mm); ennalta rekisteröity parametrikonvergenssisääntö säilytettiin. Mutaatio: nollakeskisten prioreiden palauttaminen antaa Sentinel-6A:lle 20 min:n pitkittäissuuntaiseksi arvoksi 1,08 vasten 0,70 cm (1,54), mikä epäonnistuu. Arvioijan koe: ennen versiota 0.30 käytetty konventio (kerroin 1/2 arvolle n_dot) jättää jokaisen luvun muuttumattomaksi, joten vertailu rajaa 22 parametrin mallin funktioavaruutta ja sen sovituksen laatua, ei n_dot-konventiota. Väitteen ulkopuolella: ATOMIC ECEF -polynomi ja synteettinen viiden korkeuden mallivertailutaulukko, joilla on oma MODELLED-rivinsä
Testit
tests/leo_navmsg_fit_real_orbit_oracle.rs::liu22_model_matches_the_published_sisre (neljä artikkelin päivää: radan suuntainen, poikkiradan, radiaalinen ja SISRE-suhteet 0,755 – 1,138 lähteestä Liu ym. 2025, 1.5x sisällä)…
MallinnettuATOMIC-nollakello-ECEF-polynomi ja synteettinen viiden korkeuden LEO-mallivertailuleo_navmsg::elements (EcefPoly,ephemeris_at); leo_navmsg (liu_comparison,LIU2025_TABLE)
Ominaisuus
leo_navmsg::elements::EphemerisModel-tyypin EcefPoly-variantti: akselikohtainen ECEF-polynomi ilman kellotermejä, relativistinen termi lausekkeesta -2 r.v/c^2, pisteytettynä ohjattua kelloa vasten. Lisäksi mallivertailuanalyysi (liu_comparison yli LIU2025_TABLE), joka sovittaa 22-parametrisen mallin artikkelin viidellä korkeudella Kshanan integroimalle radalle 20 minuutin kaarilla ja tulostaa tuloksen julkaistun SISRE:n viereen
Oraakkeli
ATOMIC-mallin tosiasiat InsideGNSS-lehdestä (6. asteen polynomi, noin yhden minuutin voimassaoloaika, 30 s päivitys, kello ohjattu, 24 cm kellovirhe). Nämä ovat kuvailevia tosiasioita, joille ei ole julkaistuja vertailulukuja. Viiden korkeuden taulukko tulostaa Liu ym. 2025 SISRE-arvot (8,88, 6,21, 2,87, 2,11 ja 0,75 cm korkeuksilla 320, 475, 786, 966 ja 1336 km 20 minuutin kaarella) Kshanan omalle integroidulle radalleen tekemän sovituksen (4,25, 2,87, 2,20, 1,25 ja 0,51 cm; suhteet 0,46 – 0,77) viereen, ei kiinnitetty, koska artikkelissa sovitettiin todellisia tarkkoja ratoja ja totuudet eroavat. 22-parametrinen malli ja sovite itse validoidaan todellisia ratoja vastaan rivillä Liu et al. 2025 22-parametrinen LEO-efemeridimalli ja sen sovitus todellisille tarkoille radoille. Revisio 0,30: taulukon luvut muuttuivat artikkelin käytännön mukaisen sovituksen myötä (GRACE-A 5,40 -> 4,25 cm, GRACE-C 4,12 -> 2,87, Sentinel-2A 2,95 -> 2,20, HY-2A 2,38 -> 1,25, Sentinel-6A 0,70 -> 0,51)
ValidoituLEO-navigointiviestin yksitaajuiset ionosfääri- ja UTC-palvelutleo_navmsg::services (klobuchar_delay_m,effective_ionisation_level,system_to_utc)
Ominaisuus
leo_navmsg::services: Klobucharin lähetetty viive millä tahansa kantoaallolla (moottorin L1-malli skaalattuna kertoimella (f_L1/f)^2), NeQuick-G:n tehokas ionisaatiotaso Az = ai0 + ai1 mu + ai2 mu^2 nollasääntöineen ja [0, 400] sfu -sääntöineen sekä järjestelmäaika UTC-aikaan ICD:n kolmella karkaussekuntitapauksella
Oraakkeli
GNSSTk 15.3.1 (ARL:UT, LGPL-3.0, commit 55ea3344, ajettuna erillisenä ohjelmana testikehyksen kautta; GNSSTk-koodia ei ole mukana): KlobucharIonoNavData-tyypin getIonoCorr taajuuksilla L1, L2 ja L5, NeQuickIonoNavData-tyypin getEffIonoLevel arvolle Az sääntöineen (kaikki nollia ja [0, 400] sfu), ja GPSLNavTimeOffset-tyypin getOffset UTC-ajautumalle, rajoissa 1e-3 m, 1e-6 sfu ja 1e-9 s; sekä ERFA pyerfa-paketin 2.0.1.5 (BSD-3) kautta, joka johtaa UTC:n IERS:n karkaussekuntitaulukosta, ICD:n kolmelle karkaussekuntitapaukselle todellisten 2015-06-30 ja 2016-12-31 karkaussekuntien yli, mukaan lukien lukema 23:59:60, rajoissa 1e-9 s (GNSSTk ei toteuta ICD:n tapauksen (b) vuorokauden pituuden sääntöä, joten sitä ei käytetty siinä, kuten ennakkorekisteröinnissä on kirjoitettu). Syötteet ovat todelliset IGS BRDC -otsakkeen kertoimet. Ennakkorekisteröity (6a66994b; muutos 88807a7e tallensi 21 602 rivin osajoukon karkaussekuntihilasta ennen kuin yhtäkään Kshanan arvoa verrattiin). NeQuickin elektronitiheyden integrointia ei ole toteutettu, eikä korjausta tehdä ionosfäärin sisällä lentävälle LEO-satelliitille
Testit
leo_navmsg::services::tests (klobuchar_scales_with_inverse_frequency_squared — the L1 value is RTKLIB's 6.1278 m; nequick_az_rules; utc_without_an_event_is_tow_minus_leap_seconds_folded_to_a_day…
ValidoituDoppler, jota maanpäällisen vastaanottimen on käsiteltävä LEO-navigointisatelliitiltaleo_fusion::geom (EarthOrbit); leo_fusion::doppler (range_rate,doppler_envelope)
Ominaisuus
Sellaisen satelliitin tarkka etäisyysnopeus, jonka Maahan kiinnitetty paikka ja nopeus tulevat kahden kappaleen radalta sekulaarisella J2-ajautumalla ja Maan pyörimisellä (leo_fusion::geom::EarthOrbit::state, nopeus on paikan tarkka aikaderivaatta), muunnettuna Doppleriksi kantoaallolla; suurin absoluuttinen Doppler, Doppler-nopeus ja nykäys korkeuskulmamaskin yläpuolella ikkunassa (leo_fusion::doppler::doppler_envelope), raportoituna LEO-järjestelmittäin lajissa leo-pvt Doppler-tilassa
Oraakkeli
Julkaistut luvut toistettuna ilmoitetulta radalta ja kantoaallolta: Iridium-Doppler enintään plus tai miinus 36 kHz (Resilient Navigation and Timing Foundation, Recent PNT improvements and test results based on LEO satellites) ja Xona Pulsar X1:n suurin Doppler 32 – 34 kHz (Leclère, Marathe ja Reid, ION GNSS+ 2025, arXiv:2509,19551). Iridium-luku on pyöristetty yläraja, minkä vuoksi kynnys on 5%. Doppler-nopeus ja nykäys raportoidaan mutta niitä ei validoida: Pulsar X1:n mallinnettu ylilentonykäys on noin 1,0 Hz/s^2 julkaistua lukua 1,26 vastaan
Testit
tests/leo_doppler_reference.rs (iridium_doppler_reaches_the_published_36_khz: yksi satelliitti korkeudella 780 km ja 86,4 astetta lennettynä vuorokauden ajan taajuudella 1621 MHz neljällä leveysasteella, maksimi 5 %:n sisällä arvosta 36 kHz…
MallinnettuPaikannus LEO-Dopplerista, yhden ja usean satelliitin, kellon ajautuma- ja nopeustiloillaleo_fusion::doppler (solve,formal_covariance,single_pass_geometry,offset_site,closest_approach); leo_fusion::pvt_kind (run_doppler)
Ominaisuus
Eräajona tehtävä Gauss–Newton-paikannus etäisyysnopeudesta analyyttisillä osittaisderivaatoilla (d rho_dot / d r = -(I - u u^T)(v_s - v_u)/rho, d/dv = -u, d/d drift = 1), vaihtoehtona vakiokäyttäjänopeus, korkeuspseudomittaus pintakäyttäjälle, vaimennetut askeleet; muodollinen kovarianssi todellisessa pisteessä; ratasuuntaiset, ratapoikittaiset ja pystysuuntaiset projektiot; yhden ylilennon tarkkuus suhteessa käyttäjän ratapoikittaiseen siirtymään; lähimmän lähestymisen aika. Lajin leo-pvt Doppler-tila lisää virheen ikkunan pituuden funktiona ja vain Doppleriin perustuvan opportunistisen signaalin tilan (esiasetus starlink-sop)
Oraakkeli
Sisäinen johdonmukaisuus: kohinaton palautus, kinemaattinen identiteetti rho_ddot = (|v|^2 - rho_dot^2 + d.a)/rho derivoituna numeerisesti, nolla-Doppler lähimmän lähestymisen hetkellä, yksittäisen ylilennon peiliratkaisu ja siemenluvulla tuotetut virheet muodollista kovarianssia vasten. Kozhayan, Saroufimin ja Kassasin Starlink-luku (NAVIGATION 72(1), 2025: noin 2 m 20 sekunnissa kolmella satelliitilla) on vain vertailu: mallinnettu vastaanotin täydellisellä efemeridillä ja kaikilla virheillä 30 Hz:n Doppler-sigmassa on samassa ikkunassa useita kertoja epätarkempi, eikä artikkelin vastaanotinta ja mittaustahtia toisteta
Testit
leo_fusion::doppler::tests (range_acceleration_obeys_the_kinematic_identity_and_vanishes_doppler_at_closest_approach; noise_free_multi_satellite_doppler_recovers_the_user: 1 mm:n tarkkuudella ja ajautuma 1e-6 m/s…
MallinnettuYhteinen GNSS- ja LEO-pseudoetäisyyspaikannus järjestelmien välisillä harhoilla ja signaalikohtaisilla virhemalleillaleo_fusion::joint_pvt (solve,dop,code_sigma_dll_m,SystemClock); leo_fusion::system (SystemCfg,System); leo_fusion::pvt_kind (run_joint)
Ominaisuus
Painotetun pienimmän neliösumman Gauss–Newton-ratkaisut mille tahansa järjestelmien yhdistelmälle, yksi vastaanottimen kello järjestelmää kohti (järjestelmien välinen harha estimoidaan paikan mukana) tai tunnettu lähetetty siirtymä vertailuaika-asteikolla; mittauskohtaiset sigmat kutsujan antamina, oletuksena moottorin viivelukitussilmukan lämpökohina (navsignal::dll_code_jitter_chips) korkeuskulman C/N0-arvolla yhdistettynä signaali avaruudessa -etäisyysvirheeseen; painottamaton DOP (GDOP, PDOP, HDOP, VDOP, TDOP) paikallisessa geodeettisessa koordinaatistossa, muodolliset itä–pohjoinen–ylös-sigmat ja harhasigmat; lajin leo-pvt yhteinen tila vertaa vain GNSS:n, vain LEO:n ja yhdistettyjä ratkaisuja ja pyyhkäisee DOP:n lisättyjen LEO-satelliittien lukumäärää vastaan
Oraakkeli
Käsin johdettu neljän satelliitin DOP (yksi satelliitti zenitissä ja kolme horisontissa 120 astetta toisistaan, joiden normaalimatriisi käännetään käsin), rakenteellinen identiteetti, että järjestelmä omalla kellollaan ja yhdellä satelliitilla ei lisää geometriaa, paikan, kellon ja harhan kohinaton palautus sekä siemenluvulla tuotetut virheet kovarianssia vasten. Vain sisäisiä tarkistuksia; ei verrattu vastaanottimen tulosteeseen. 0,30 ulkoinen vertailu, havainto (pysyy MODELLED): usean GNSS:n IGS-päivänä (ABMF 2018-05-13, GPS ja Galileo C1C, lähetetty efemeridi, Klobuchar) järjestelmien välinen harha on samaa mieltä RTKLIB v2.4.2-p13 rnx2rtkp:n kanssa (mediaaniero -0.11 ns lähetetyn ryhmäviiveen korjauksen 0,30 jälkeen, -0.35 ns ennen; kynnys 1 ns), mutta vain 93,6 % 280 epookista (93,2 % ennen korjausta) on 3 m:n sisällä ITRF2020-koordinaatista ennakkorekisteröityä 95 %:a vastaan. RTKLIB itse yltää samalla datalla arvoon 88,2 %, joten kynnys on yksitaajuisen lähetetyn paikannuksen ulottumattomissa tällä asemalla ja päivänä eikä kyse ole ratkaisijan poikkeamasta; vertailutesti on tallennettu ohitettuna. 0,30 kierros 2, tiukemmat syötteet muuttumattomalla 3 m / 95 % / 1 ns -kynnyksellä, havainto (pysyy MODELLED): Galileon E1/E5a-ionosfäärivapaalla parilla (ennakkorekisteröity 6927e039) 79,9 % epookeista on 3 m:n sisällä (RTKLIB 67,9 %); tarkoilla CODE MGEX -radoilla, -kelloilla, satelliittiantennien siirtymillä ja koodiharhoilla (ennakkorekisteröity 7d8c3597) 94,2 % (RTKLIB 94,1 %), ja järjestelmien välinen harha poikkeaa RTKLIB:stä -1.03 ns, koska RTKLIB:n yksittäistila ohittaa satelliittiantennien siirtymät (+0,04 ns, kun molemmat jättävät ne pois)
MallinnettuTarkan pistepaikannuksen (PPP) konvergenssi pelkällä GNSS:llä ja LEO-täydennykselläleo_fusion::ppp (run,PppScenario,LI_2019)
Ominaisuus
Float-PPP-laajennettu Kalman-suodatin ionosfäärivapaalla koodilla ja vaiheella: staattiset koordinaatit, valkoinen vastaanottimen kello, yksi järjestelmien välinen harha jokaista lisäjärjestelmää kohti, satunnaiskävelyn zeniitin märkäviive kuvattuna kertoimella 1/sin(korkeuskulma), float-kokonaislukuepävarmuus jokaiselle satelliittikaarelle lisättynä nousussa ja pudotettuna laskussa sekä satelliitin koodille ja vaiheelle yhteinen tarkan radan ja kellon virhe, käsiteltynä yhtenä korreloituna kaksirivisenä päivityksenä Joseph-vakautetussa muodossa; mittaukset simuloidaan samasta mallista; konvergenssiaika (virheet kynnysarvojen alla ajon loppuun asti), virhekäyrät ja ajon keskiarvoistettu paikan NEES pelkälle GNSS:lle ja kullekin LEO-tapaukselle, ajettuna lajina leo-ppp
Oraakkeli
NEES:n khiin neliö -testi on sisäinen johdonmukaisuustarkistus (totuus ja suodatin jakavat mallin). Suuntausta verrataan julkaisuun Li ym., LEO constellation-augmented multi-GNSS for rapid PPP convergence, J. Geod. 93:749-764 (2019), doi 10.1007/s00190-018-1195-2: usean GNSS:n 9,6 min lyheni arvoihin 7,0, 3,2, 2,1 ja 1,3 min, kun LEO-satelliitteja on 60, 96, 192 ja 288. Mukana toimitettu skenaario antaa 7,4, 4,8, 3,2, 2,7 ja 2,3 min omilla edustavilla 1000 km:n, 60 asteen kuorillaan, kohinallaan ja asemillaan; artikkelin tähdistöjä, kohinaa ja konvergenssimääritelmää ei toisteta, joten tämä on suuntauksen MODELLED-johdonmukaisuus (yksitoikkoinen lyheneminen, suurin tähdistö alle kolmanneksessa pelkän GNSS:n ajasta), ei validointi
Testit
leo_fusion::ppp::tests (the_filter_is_consistent_over_monte_carlo_seeds: 24 siemenlukua, ajoilla keskiarvoistetun NEES:n keskiarvo välillä [2,4, 3,6] ja vähintään 75 % epookeista kaksipuolisen 95 %:n khiin neliö -kaistan sisällä; mitattu 150 siemenluvulla, keskiarvo…
Validoitu5G-ei-maanpäällisen verkon (NTN) paikannustarkkuus signaalin kaistanleveydestäleo_fusion::ntn (gabor_bandwidth_flat_hz,gabor_bandwidth_bpsk_hz,gabor_bandwidth_numeric_hz,rms_duration_numeric_s,toa_crb_sigma_m,doppler_crb_sigma_hz,frequency_crb_sigma_hz,NtnScenario::geometry,NtnScenario); leo_fusion::joint_pvt (formal_sigma_enu)
Ominaisuus
Cramér–Rao-raja saapumisajalle neliöllisen keskiarvon (Gabor) kaistanleveydestä, c/(2 pi beta sqrt(2 (C/N0) T)), tasaiselle OFDM-spektrille (beta = B/sqrt(12)), kaistarajoitetulle BPSK-spektrille (suljetun muodon osoittaja) tai mille tahansa spektrille kvadratuurilla, sekä kompleksisen sävelen taajuudelle, sqrt(3/(2 pi^2 (C/N0) T^3)); alalinkin saapumisaikaan perustuvat ratkaisut tuntemattomalla vastaanottimen kellolla ja yhden satelliitin Doppler-ratkaisu ylilennon aikana 3GPP:n n256 MSS S -kaistalla, ajettuna lajina ntn-positioning
Oraakkeli
Julkaistut lasketut esimerkkiarvot (P1): Bachl, Lei ja Nabeel, arXiv:2608,10270 (2026), NR NTN:n yhden SSB:n rajat toistettuna 3GPP TS 38,211 -SSB-kartasta Kshanan omilla numeerisilla funktioilla (W_rms 1,9616 vs 1,96 MHz, sigma_t 38,755 vs 39 us, sigma_f 100.79/87.28 vs 101/87 Hz, sigma_rho 0.5970/0.5831 vs 0.60/0.58 m, kukin puolen painetun viimeisen numeron yksikön sisällä); Betz 2001 taulukko 1 BPSK-R RMS-kaistanleveydet (1.128/3.477 vs 1.1/3.5 MHz, täydentävä); saapumisajan ja Doppler-ratkaisun kovarianssit ovat samaa mieltä numpy 2.4.6 numpy.linalg.inv:n kanssa viedyllä geometrialla (P2; 5e-15 ja 1.2e-5 suhteellisena, kynnykset 1e-5 ja 1e-3). Ennakkorekisteröity (9f2875db; osa C 0d66dccd). Moottorin ratkaisu joint_pvt::formal_sigma_enu (raja arvioituna todellisessa pisteessä, ei kohinaisessa ratkaisussa) kirjoitettiin sen jälkeen, kun ensimmäinen 200 kHz:n ajo epäonnistui arvolla 6.5e-5, ja ajettiin uudelleen muuttumattomalla toleranssilla. Skenaarion ajamat tasaisen spektrin ja kompleksisen sävelen muodot (gabor_bandwidth_flat_hz, doppler_crb_sigma_hz) saavuttavat P1-tarkistuksen crate-kirjaston sisäisillä identiteettiyksikkötesteillä. Rajat monitiettömällä kanavalla, ei saavutettu tarkkuus. Revisio 0,30: ntn-5g-positioning toa_median_sigma_3d_m 2,0903959 -> 2,0903962 m (NR 5 MHz) ja 25,938613 -> 25,938839 m (NB 200 kHz)
Testit
leo_fusion::ntn::tests (the_numerical_rms_bandwidth_matches_the_closed_forms; the_range_bound_scales_as_one_over_bandwidth_and_root_cn0: 0.4157 m by hand at 5 MHz, 45 dB-Hz, 0.1 s…
MallinnettuLEO-avusteinen ajansiirto UTC-aikaan suhteessa C/N0:hon ja vastaanottimen oskillaattoriinleo_fusion::timing (simulate,utc_offset_s,system_to_utc_s); leo_fusion::pvt_kind (run_timing)
Ominaisuus
Kellomittaukset jokaiselta näkyvissä olevalta LEO-satelliitilta tunnetussa paikassa, yhdistettynä käänteisvarianssilla pseudoetäisyyden kohinamallista, suodatettuna kaksitilaisella (vaihe, taajuus) Kalman-suodattimella, jonka prosessikohina on oskillaattoriluokan valkoinen ja satunnaiskävelytaajuuskohina (slot_timing::ClockNoise, clock_state::ClockClass; holdover::coast_phase_variance-funktion vapaaliikevarianssi), samoista tasoista siemenluvulla tuotettu todellinen kello ja IS-GPS-200:n kohdan 20.3.3.5.2.4 järjestelmäaika–UTC-lauseke, johon lähetetyn siirtymän epävarmuus lisätään ajokohtaisena harhana; lajin leo-pvt ajoitustila pyyhkäisee oskillaattoreita ja C/N0-siirtymiä
Oraakkeli
Sisäinen johdonmukaisuus: julkaistu siirtymälauseke laskettuna käsin, normalisoitu virhe 40 siemenluvulla ja siirtymän epävarmuuden asettama lattia. NIST:n luku Iridium-ajoitusvastaanottimille pienoisatomikellolla (alle 40 ns UTC(NIST):stä 40 päivän aikana) on vain vertailu; mukana toimitettu Iridium-skenaario antaa 10 – 11 ns RMS nimellisteholla edustavalla 5 m:n etäisyysvirheellään. Flicker-taajuuskohinaa ja ionosfäärin viivettä ei simuloida
ValidoituLEO-peitto ja tarkkuuden heikkenemiskerroin napa- ja arktisille käyttäjille MEO-GNSS:ään verrattunaleo_fusion::polar (latitude_sweep,latitude_sweep_at,element_sets,satellite_states_at); leo_fusion::joint_pvt (dop); sgp4 (MeanElementSet::from_earth_fixed,SgpOrbit,teme_to_itrs_matrix)
Ominaisuus
Näkyvissä olevat satelliitit ja mediaani-PDOP, -HDOP ja -VDOP saatavuuksineen leveysasteen funktiona, otoksina valituilla pituuksilla ja epookeilla, pelkille MEO-GNSS-järjestelmille, pelkille LEO-järjestelmille ja kaikille yhdessä, kullekin järjestelmälle oma maski ja kellomalli, ajettuna lajin leo-pvt napatilana; radat ovat SGP4/SDP4-elementtijoukkoja pyyhkäisyn epookilla (2026-01-01T00:00:00 UTC napatilassa) vietynä Maahan kiinnitettyyn koordinaatistoon validoitua Maa-radan polkua pitkin (IAU 2006/2000A, UT1 = UTC, ei napaliikettä)
Oraakkeli
Orekit 13.1.8 (Apache-2.0) ja Hipparchus 4.0.3: moottorin GCRS-tilat kierrettynä ITRF:ään Orekitilla (IERS 2010), WGS-84 TopocentricFrame -näkyvyys kunkin järjestelmän maskia vasten, org.orekit.gnss.DOPComputer yhdelle kellotuntemattomalle ja NumPy 2.4.6 numpy.linalg.inv (P2) useammalle; polku tarkistettuna python-sgp4:ää ja ERFAa vastaan (rivi 'One Earth-orbit path'). Kynnykset kiinnitetty ennen ajoa (ennakkorekisteröity 72ea9eb0; T2 ja T3 ovat 0,30 kierroksen 2 kynnyksiä). J2000:een jäädytetty TEME -> GCRS-vaihe punaistaa testin (4739 epäonnistumista). Vain geometria; ei skintillaatiota, maastoa eikä signaalitehoa. GNSS:n VDOP kasvaa kohti napaa (1,20 päiväntasaajalla – 1,51 kohdassa 89,9 astetta GPS:lle ja Galileolle mukana toimitetussa skenaariossa), kun taas lähes napainen LEO-kuori suppenee siellä. Historia: kierros 2 (3254d456) oli samaa mieltä taulukoiduista kahden kappaleen tiloista; D8:n kierroksen 1 täysi väite Orekitin omaa TLE-etenemää vastaan (e947e69d) oli havainto, Orekitin SDP4 arvolla e = 0 ja sen IERS 1996 TEME, kiinnitetty
Testit
tests/leo_polar_coverage_on_path_orekit_oracle.rs (konfiguraatiot A ja B, 4040 näytettä: maakiinteät paikat 6.8e-5 m sisällä, kynnys 0,2 m; näkyvissä olevien määrät identtiset 4040/4040; DOP:n mediaani 2.3e-11 suhteellisella tarkkuudella, kynnys…
Järjestelmäriippumattomat syötteet: jokainen järjestelmä on Walker-kuoria, eksplisiittisiä elementtejä tai GNSS-esiasetus, signaali (kantoaalto, chip-nopeus, kaistanleveys, vastaanotettu teho tai C/N0-alue), SISRE, Doppler-sigma ja kellomalli; esiasetukset täyttävät vain sen, minkä skenaario jättää pois, yksi tiedosto kutakin, lähteet merkittynä PUBLIC (URL-osoitteella), WORKSHOP tai JOHDETTU ja julkaisemattomat arvot lueteltuna edustavina: Xona Pulsar X1/X5, Iridium STL, Starlink-opportunistiset signaalit, CentiSpace, edustava C-kaistajärjestelmä, ATOMIC-nollakellon efemeridimalli ja yksi työpajassa johdettu esiasetus valinnaisessa Celeste IOD -esiasetustiedostossa, joka poistetaan käytöstä poistamalla tuo tiedosto ja sen skenaariot
Oraakkeli
Siteerattujen julkisten arvojen transkriptio, tarkistettu rakenteen osalta (jokaisella julkisella lähteellä on URL-osoite, Walker-kuviot jakautuvat tasan, C/N0 vastaanotetusta tehosta kT:hen 290 K:n lämpötilassa), ei ulkoista oraakkelia vasten. Edustavat arvot on nimetty kussakin esiasetuksessa ja ovat havainnollistavia
MallinnettuYksi LEO-PNT-järjestelmä päästä päähän: signaalisuunnittelu, ylilennon linkkibudjetti, navigointiviesti ja yhdistetty paikannus, kunkin vaiheen tuloste annettuna seuraavalleleo_pnt_chain (LeoPntChainScenario); leo_pass (BandCfg::signal,design_tracking); leo_navmsg (LeoNavmsgScenario::broadcast_sisre); leo_fusion::pvt_kind; leo_fusion::ppp
Ominaisuus
Laji leo-pnt-chain: leo-signal-suunnittelu (julkinen esiasetus tai inline) asettaa leo-pass-kaistan keskitaajuuden, kaistanleveyden, chip-nopeuden ja EIRP-jaon; ylilento antaa seurattavan komponentin C/N0:n ja kaistarajoitetun koodijitterin epookeittain; pienimmän neliösumman C/N0-suora muuttujassa sin(korkeuskulma), leo-navmsg-viestin SISRE (sovitettuna ylilennon satelliitin radalle, plus ilmoitettu radanmääritystermi neliöiden summan neliöjuurena) sekä suunnittelun kantoaalto ja chip-nopeus siirtyvät jokaiselle leo-pvt-yhteisratkaisun LEO-järjestelmälle ja valinnaisesti leo-ppp:n LEO-tapauksille; jokainen luovutus raportoidaan arvona ja yksikkönä
Oraakkeli
Luovutusten itseyhtenevyys: jokainen eteenpäin annettu arvo on yhtä suuri kuin edeltävän vaiheen oma tuloste, ja edeltävän syötteen muuttaminen siirtää jokaista siitä riippuvaa jälkimmäisen vaiheen lukua. Vaiheet säilyttävät omat merkintänsä; ketju ei lisää fysiikkaa eikä ulkoista oraakkelia
Testit
leo_pnt_chain::tests (a_sine_line_fit_recovers_its_line); tests/leo_pnt_chain.rs (every_upstream_change_moves_the_downstream_figures: vahvempi EIRP, pidempi sovitusväli ja suurempi radanmääritystermi kukin…
MallinnettuHarhautuksen havaitseminen LEO-Dopplerin ja ylilentogeometrian johdonmukaisuudellaleo_link::spoof (range_rate_position_gradient,line_of_sight,fll_frequency_jitter_hz,doppler_consistency_window,doppler_consistency); leo_pass (SpooferCfg,spoof_section)
Ominaisuus
Lajin leo-pass osio [spoofer]: harhauttaja väärentää etäisyyden ja etäisyysnopeuden suhteen itsejohdonmukaisesti väitetyssä paikassa nähdyt signaalit, ja paikka hyppää ja/tai työntyy pois todellisesta alkamisen jälkeen (LEO-kaistaa kohti ja MEO-GNSS-signaalille); vastaanotin ennustaa jokaisen etäisyysnopeuden lähetetyltä radalta ja riippumattomasta ennakkopaikasta ja -nopeudesta ja testaa mitatut etäisyysnopeudet yleistetyn pienimmän neliösumman khiin neliö -tunnusluvulla epookkien ikkunan yli (kellon ajautuma haittaparametrina tai ennakkotiedolla), GNSS-kanavilla, LEO-kanavilla ja kaikilla kanavilla taajuuslukitussilmukan lämpökohinalla C/N0:sta (Kaplan & Hegarty 2006, kohta 5.6.2); havaitsemistodennäköisyys ei-sentraalisesta khiin neliö -jakaumasta ilmoitetulla väärän hälytyksen todennäköisyydellä, havaitseminen julistetaan ilmoitetulla havaitsematta jäämisen todennäköisyydellä
Oraakkeli
Suljetun muodon ratkaisut ja identiteetit, ei ulkoinen mittaus: etäisyysnopeuden gradientti keskeisdifferenssiä vasten, informaatiomuotoinen tunnusluku tiheää kovarianssimuotoa vasten, puhdas kellon ajautuma antaa nollan, ennakkotiedolla selitetty työntö antaa enintään |dx|^2/sigma_p^2, tunnusluku on hypyn suhteen neliöllinen. Mitään havaitsemislukua ei verrata mitattuun hyökkäykseen; harhauttaja on idealisoitu (ei tehoa, saapumiskulmaa eikä korrelaatiopiikin tunnusta)
Jokaiselle LEO-satelliitille ja etäisyydenmittauskaistojen parille osio [spoofer] muodostaa geometriasta vapaan pseudoetäisyysyhdistelmän, poistaa vastaanottimen ionosfäärimallin ja testaa sen epookista toiseen tapahtuvaa askelta kahden kaistan koodikohinaa ja ilmoitettua siedettyä mallintamatonta ionosfäärinopeutta vasten (kaksipuolinen Gauss, tarkka havaitsemistodennäköisyys); harhauttaja, joka väärentää osan kaistoista mutta ei toisia, tai kaikki kaistat ilman ionosfääriä, havaitaan alkamishetkellä; sellaista, joka väärentää jokaisen kaistan ja simuloi ionosfäärin, ei havaita, minkä tulos ilmoittaa
Oraakkeli
Identiteetit: ionosfäärivapaan harhauttajan alkamisaskel on yhtä suuri kuin parin mallinnettu ionosfäärin viive-ero, kynnys on kaksipuolinen normaalikvantiili kertaa askeleen keskihajonta plus nopeuden raja. Vastaanottimen ionosfäärimalli on moottorin oma, joten aito jäännös on keskiarvossa nolla rakenteen vuoksi; ei ulkoista oraakkelia
Jokaiselle lajin leo-pass satelliitin kaistaparille raportti antaa vinon kokonaiselektronisisällön, jonka geometriasta vapaa koodiyhdistelmä palauttaa ylilennon huipulla, (P2 - P1) f1^2 f2^2 / (40,3 (f1^2 - f2^2)), ja sen 1-sigman kahden kaistan lämpökoodikohinasta, jotta mitä tahansa monikaistaista LEO-PNT-suunnitelmaa voidaan punnita ionosfäärisondina
Oraakkeli
Ensimmäisen kertaluvun dispersioidentiteetti, rakenteensa puolesta tarkka moottorin oman ensimmäisen kertaluvun viiveen suhteen (jonka 1/f^2-skaalaus on VALIDATED IS-GPS-200:aa vastaan omalla rivillään); toistotarkkuus on vain lämpökoodikohinaa, ilman monitie-etenemistä tai taajuuksien välisiä harhoja. 0,30 kierros 2, mitattu (ennakkorekisteröity 5e795f93), havainto (pysyy MODELLED): CODEn globaali ionosfäärikartta CODG1330.18I ABMF:n C1C/C2W-koodia vasten CODEn harhoilla antaa 33 36 kaaren keskiarvosta 3 TECU:n sisällä (pahin +6,84 TECU iltakaarella; epookkikohtainen RMS 3,95 TECU), kynnyksen ollessa jokainen kaari; ei validoitu
Testit
tests/leo_resilience_verticals.rs (the_geometry_free_tec_is_the_pass_slant_tec: vastaa ylilennon vinoa TEC:iä huipulla tarkkuudella 1e-9 ja sen sigma vastaa koodikohinan neliösummaa jaettuna 40,3 (1/f1^2 - 1/f2^2))…
Kuun koordinaatiston kampanjaskenaarion seitsenparametrinen Helmert-datumin kovarianssi Maa-asemat estimoituna (asema 1 ankkuroituna), sellaisena kuin lunar_frame_campaign laskee sen binary64-tarkkuudella: viiveen Jacobin matriisista kertyvä asemien ja majakoiden yhteinen Fisherin informaatio, asemalohko marginalisoituna Schurin komplementilla Jacobin spektraalisen käänteismatriisin kautta, H = AᵀSA muodostettuna Helmertin suunnittelumatriisilla ja käännettynä spektraalisesti. Ongelma on rakenteeltaan huonosti ehdollistettu (Helmertin ehtoluku 2.1e8 – 2.3e8, yhteisen informaation ehtoluku 1.6e12 – 3.0e13): 1e-9 suhteellinen muutos Schurin korjauksessa siirtää datumin sigmoja jopa 28 %. Raportoidaan: seitsemän datum-sigmaa, Helmertin ehtoluku ja heikoin suunta. VÄITE, RAJATTUNA: moottorin datum-sigmat ja ehtoluku ovat taaksepäin vakaan kaksoistarkkuusputken a priori pahimman tapauksen virherajan sisällä tässä ongelmassa; tämä ei väitä niiden olevan niin tarkkoja kuin kaksoistarkkuus sallii (tekijöihinjakoreitti on samoilla syötteillä noin tuhat kertaa tarkempi ja valinnainen neliöjuuriratkaisija noin kymmenen miljoonaa kertaa), ja heikoin suunta validoidaan vain siellä, missä sen kynnys on alle suoran kulman (asemat kiinnitetty -kontrolli)
Oraakkeli
mpmath 1.3.0 (BSD-3-Clause) 50 merkitsevällä numerolla, itsetarkistettuna arvolla 80 (yhtäpitävyys 1.1e-38 tai parempi), moottorin tallennetulla Jacobin matriisilla, painoilla ja Helmertin suunnittelumatriisilla: mpmathin oma LU-ratkaisu Schurin komplementille, sen käänteismatriisi H:lle ja sen Jacobin ominaishajotelma (P2, riippumaton numeerinen kirjasto). Ennakkorekisteröity 804662d5 ennen kuin vertailuaineisto oli olemassa, kynnyksillä, jotka tulevat ensimmäisen kertaluvun taaksepäinvirhekaavasta: vakio (3n+1)n + m kertaa yksikköpyöristysvirhe (Higham, Accuracy and Stability of Numerical Algorithms, lause 10,4, Tier B -muoto), kertaa kunkin suureen tarkka ensimmäisen kertaluvun herkkyys yhteiselle informaatiolle, Schurin komplementille ja H:lle. Mitattu: datum-sigmat 4.8e-6 sisällä päivänä 2026-03-18 (kynnykset 9.6e-2 – 2.2e-1), 9.7e-6 päivänä 2024-01-01 (kynnykset 2.8e-2 – 6.9e-2) ja 2.0e-14 asemat kiinnitettyinä (kynnykset 1.0e-11 – 2.8e-7); ehtoluku 4.6e-6, 1.3e-5 ja 4.1e-14 sisällä. Asemat estimoituna -skenaarioissa kynnykset ovat pahimman tapauksen kynnyksiä ja neljä kertaluokkaa mitatun virheen yläpuolella, ja heikoimman suunnan kynnys ylittää siellä suoran kulman, joten sitä yhtä tarkistusta ei lasketa; asemat kiinnitettyinä -kontrollissa heikoin suunta on samaa mieltä arvolla 6.6e-16 rad kynnystä 9.4e-11 vastaan, mitattuna yksikkövektorien välisellä jänteellä (aiempi acos-vertailija ei pystynyt erottamaan alle 1.5e-8 rad:n kulmia; kynnys on muuttumaton). Diagnostiikka: NumPy 2.3.5 Cholesky- ja QR-reitit yltävät arvoihin 9e-9 ja 5e-9 syötteillä 2024-01-01, sen käänteismatriisi- ja ominaisarvoreitit arvoihin 2.9e-6 ja 6.2e-6: moottori on rajansa sisällä mutta noin tuhat kertaa epätarkempi kuin tekijöihinjakoreitti. Validoi lineaarialgebran tallennetuilla syötteillä, ei Jacobin matriisia (sen tekee kampanjarivin SPICE-haara) eikä havainnollistavan kampanjan fysikaalista tarkkuutta
Testit
tests/lunar_frame_campaign_mpmath_oracle.rs (lunar_frame_campaign_datum_matches_mpmath_extended_precision: kolme skenaariota — asemat estimoituna uudella kampanjapäivällä 2026-03-18 (sitova), asemat kiinteinä sinä päivänä…
Valinnainen neliöjuuri-informaatioratkaisija (lunar-frame-campaign solver = "srif"; oletus muuttumaton), joka ei koskaan muodosta eikä käännä informaatiomatriisia datumille: valkaistun viiveen Jacobin matriisin Householder-QR (ortogonaali-kolmiohajotelma) neliöjuuri-informaatiosuodattimen mittauspäivityksenä, Maa-asemat marginalisoituna perässä olevan kolmiolohkon kautta (jonka Gram-tulo on Schurin komplementti), toinen QR matriisille R_bb A seitsenparametriselle Helmert-datumille, sigmat kolmiomatriisin käänteismatriisin rivinormeina ja spektri (ehtoluku, heikoin suunta) yksipuolisesta Jacobin singulaariarvohajotelmasta. Sisätulot kompensoidaan Dekker-jaetulla virheettömällä tulolla, joten jokainen operaatio on oikein pyöristetty IEEE-754-peruslaskutoimitus tai neliöjuuri; identtiset tulokset kaikilla alustoilla perustellaan tästä, niitä ei testata alustojen välillä
Oraakkeli
mpmath 1.3.0 (BSD-3-Clause) 50 merkitsevällä numerolla, itsetarkistettuna arvolla 80 (yhtäpitävyys 1.4e-43 tai parempi), moottorin tallennetulla Jacobin matriisilla, painoilla ja Helmertin suunnittelumatriisilla (P2, riippumaton numeerinen kirjasto: mpmathin oma LU-ratkaisu, käänteismatriisi, Cholesky ja Jacobin ominaishajotelma). Ennakkorekisteröity b41908c9 ennen ratkaisijan kirjoittamista, kynnyksillä, jotka tulevat ensimmäisen kertaluvun taaksepäinvirherajasta neliöjuurimuodossa: Householder-QR:n vakio mn plus (3n+1)n kertaa yksikköpyöristysvirhe (Higham, Accuracy and Stability of Numerical Algorithms, lause 19,4 ja luku 8) kertaa tarkat herkkyydet. Mitattu: datum-sigmat 3.0e-13 sisällä päivänä 2026-06-09 (kynnykset 4.1e-7 – 5.3e-7), 1.9e-15 asemat kiinnitettyinä (kynnykset aina arvoon 4.8e-12 asti), 3.8e-13 päivänä 2026-03-18 ja 2.3e-13 päivänä 2024-01-01, kun oletusspektraaliratkaisija on 4.8e-6 ja 9.7e-6 pielessä; ehtoluku 4.9e-13 sisällä; heikoin suunta 1.4e-13 rad sisällä (kontrolli 1.7e-16 kynnystä 5.1e-10 vastaan). TARKISTUKSEN RAJA: kynnykset todistavat vain noin 2e-7 suhteellista pienemmät datumvirheet; mitatut 1e-13 -luvut ovat havaintoja, eivät sitä, mitä kynnykset todistavat. Tarkistus hylkää oletusspektraaliratkaisijan (sigmat 9.7e-6 vastaan 2.9e-7 päivänä 2024-01-01; sitovana päivänä 1.3e-6 vastaan 4.9e-7, marginaali 1,3 – 2,6) ja väärin otetun kolmiomatriisin käänteismatriisin (sarakenormit: punainen), mutta käännetty Householder-merkki, kompensoimaton pistetulo ja sigmat neliöjuuritekijästä muodostetun H:n spektraalisesta käänteismatriisista (3.7e-9) menevät kaikki läpi, joten se ei osoita, että jokainen neliöjuuriaskel on tarpeen. Validoi valinnaisen ratkaisijan lineaarialgebran tallennetuilla syötteillä, ei Jacobin matriisia eikä oletusratkaisijaa; alustojen välinen bittitoistettavuus perustellaan käytetyistä operaatioista ja testataan vain uudelleenajon identtisyytenä yhdellä alustalla
Testit
tests/lunar_frame_campaign_srif_mpmath_oracle.rs (srif_datum_matches_mpmath_extended_precision: neljä skenaariota — asemat estimoituna uudella kampanjapäivällä 2026-06-09 (sitova), asemat kiinteinä sinä päivänä (kontrolli)…
ValidoituMerenkulun luottamusvalvonnat: aritmetiikka, jolle ne perustuvat (NMEA-dekoodaus, geodeettiset siirtymät, kinemaattiset tunnusluvut ja anturijäännösten tunnusluvut)receiver_trust (ingest,maritime)
Ominaisuus
Aluksella receiver_trust dekoodaa NMEA 0183 -lauseet, joita vastaanotin ja sen instrumentit lähettävät (GGA, RMC, VTG, HDT, VHW, VBW, ZDA, GSV), muodostaa paikannusten välisen itä–pohjoinen-siirtymän (maritime::en_offset_m) ja näistä tunnusluvut, joihin sen valvonnat perustavat päätöksensä: implikoitu nopeus, dead reckoning -jäännös, implikoitu kiihtyvyys ja implikoitu kääntymisnopeus 30 s:n ikkunoissa, suunnan ja kulkusuunnan, nopeusmittarin ja maanopeuden sekä antennin korkeuden jäännökset (10 s:n mediaanit) sekä satelliittisignaalin signaalikohinasuhteen hajonta ja nousu.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: (1) jokaisen kentän dekoodaus, jonka valvonnat lukevat, pynmea2-kirjastoa 1.19.0 (MIT) vastaan 8 synteettisellä lokilla (1 086 epookkia), kentän yksikössä tarkkuudella 1e-9 (leveys- ja pituusaste, korkeus, geoidin erotus, HDOP, nopeudet, kulkusuunta, suunta, signaalikohinasuhde; kokonaisluvut ja päivämäärät tarkasti; vuorokaudenaika tarkkuudella 1e-6 s), suurimmat erot doublen viimeisen numeron tasolla; (2) kahden paikannuksen välinen itä–pohjoinen-siirtymä etäisyytenä ja suuntakulmana geographiclib-kirjaston 2,1 (MIT) WGS84-geodeettista viivaa vastaan 223 paikannusparilla, joiden lähtöviivat ovat enintään 2 km, leveysasteilla -45 – 70 astetta ja antimeridiaanin yli, tarkkuudella 0,01 m ja 0,001 astetta (suuntakulma verrattuna geodeettisen viivan keskiazimuttiin, jänteen suuntaan); (3) valvontojen syötetunnusluvut 341 pisteytetyllä epookilla 400 s:n synteettisellä matkalla, jossa on käännös ja paikka-askel, Python-uudelleenlaskentoja vastaan, jotka käyttävät geographiclibiä etäisyydelle ja azimutille, pynmea2:ta dekoodaukseen ja numpya mediaaneille ja keskihajonnoille: implikoitu nopeus tarkkuudella 0,005 m/s, dead reckoning -jäännös 0,02 m, kiihtyvyys 5e-4 m/s^2, kääntymisnopeus 1e-3 deg/s, jäännösmediaanit sekä signaalikohinasuhteen hajonta ja nousu 1e-6. MITÄ EI: valvontojen ikkunapituudet, sallitut poikkeamat ja kynnykset ovat tämän projektin omia sääntöjä; Python toistaa ne samasta dokumentaatiosta, joten yhtäpitävyys tukee aritmetiikan toteutusta, ei sääntöjä. THS-lauseella ei ole pynmea2-luokkaa eikä ROT-lausetta lueta; kumpikaan ei ole katettu. Taulukko NMEA-lähettäjästä ja satelliittinumerosta RINEX-tyyliseen satelliittitunnukseen on tämän projektin oma (vain numero, lähettäjä ja arvo verrataan). Aika-askeleen, isäntäkellon ja todennustilan syötteillä ei ole oraakkelia. Kaikki data on synteettistä tekstiä, jonka tuottaa receiver_trust::synth; mikään tässä ei ole mittaus eikä mitään väitetä siitä, miten mikään valvonta toimii todellisessa häiriössä. Suuntakulma: verrattu geodeettisen viivan keskiazimuttiin. Ennakkorekisteröity vertailu paikannuksen 1 etuazimuttiin epäonnistui tarkkuudella 0,001 astetta (77 paritapausta 223:sta, pahin 8.3e-3 astetta) määritelmäeron eikä aritmetiikan vuoksi; muutos tehtiin ensimmäisen ajon jälkeen ja molemmat tulokset on kirjattu (etuazimuttivertailu pysyy testissä kuvailevana, ei ennakkorekisteröitynä rajana 0,01 astetta). Ilmoitettu: ensimmäiset ajot paljastivat, että syötteet kuormittivat liian vähän (kiihtyvyys ja kääntymisnopeus rajattiin nollaan joka epookilla, eikä antimeridiaanin raita koskaan ylittänyt sitä), virheen synteettisessä generaattorissa (ei pituuden kiertoa) ja suuntakulman osalta sen, että rekisteröity oraakkelisuure (geodeettisen viivan etuazimutti ensimmäisessä paikannuksessa) poikkeaa jänteen suunnasta noin puolella meridiaanikonvergenssista (77 paritapausta 223:sta rajan 0,001 astetta ulkopuolella, pahin 8.3e-3); syötteet korjattiin ja suuntakulma verrattiin keskiazimuttiin samalla toleranssilla (muutokset 1 – 3 ennakkorekisteröinnissä, tehty tulosten näkemisen jälkeen eikä siis sokkona); kulkusuunta- ja suuntavertailut tehtiin ympyrämäisiksi (360 ja 0 astetta ovat yksi kulkusuunta, muutos 5). Mutaatio: itäsiirtymän 1e-4-skaalaus epäonnistuu geodesiavertailussa.
MallinnettuMerenkulun luottamuspistemäärä: valvontojen todisteiden kokoaminen 0–100 pistemääräksi ja sen kolmeksi vyöhykkeeksireceiver_trust (score,monitors,live)
Ominaisuus
Jokainen valvonta tiivistää todisteensa tunnusluvun ja kynnyksen suhteeksi; pistemäärä on 100 miinus valvontojen yli laskettu painon ja suhteen rajatun lineaarisen rampin tulo (0 arvoon 0,5 asti, 1 kohdassa 1,5) summattuna, rajattuna välille 0 – 100 ja pyöristettynä tarkkuuteen 0,1, vyöhykerajoina 90 ja 55; jokainen epookki luettelee valvonnat, jotka vähensivät pisteitä, ja niiden pisteet.
Oraakkeli
Toteutus määrittelyä vasten, EI ulkoinen oraakkeli: puhtaalta pöydältä tehty Python-uudelleentoteutus (scripts/maritime_score_cleanroom.py), jonka kirjoitti lukija, jolle annettiin vain docs/RECEIVER-TRUST.md ja docs/MARITIME-TRUST.md eikä Rust-lähdekoodia, on samaa mieltä score_from_ratios-funktion kanssa 600 suhdevektorilla (pistemäärä, vyöhyke, pisteet ja vähennysten järjestys, ero 0), kun dokumentaatio oli täydennetty niiltä osin, joissa ensimmäinen lukija havaitsi sen vaikenevan tai olevan epäjohdonmukainen (tasapelien järjestys, pyöristys, hyväksytty-tai-hylätty-valvonnan suhde, kaksi esimerkkiä, joiden luvut eivät vastanneet kaavaa). Se osoittaa, että dokumentaatio riittää ja koodi tekee sen, mitä sanoo. MITÄ EI TARKISTETA, ja miksi rivi pysyy MODELLED: sääntö itse (painot, ramppi, vyöhykerajat, todisteen pito) on tämän projektin oma, ennakkorekisteröity mutta ilman ulkoista lähdettä, eikä mikään tässä osoita, että pistemäärä 80 tai 40 tarkoittaa sitä, mitä navigoija haluaisi sen tarkoittavan todellisessa häiriössä; sellaista lukua ei anneta. Valvontojen kynnykset ovat samoin tämän projektin omia (rivi A tarkistaa vain niiden aritmetiikan).
Testit
tests/maritime_trust_reference.rs::t5_score_matches_the_clean_room_reading_of_the_documented_rule; receiver_trust::score::tests (monotone in every statistic, adding a monitor never raises the score, healthy statistics…
ValidoituNMEA 0183 -harjoitusvirran vaatimustenmukaisuus ja dekoodatut arvotnmea_synth (track,sentences,scenarios); cli nmea-scenario
Ominaisuus
Synteettiset komentosillan NMEA 0183 -virrat miehistön harjoitteluun (kshana nmea-scenario): GGA, RMC, VTG, ZDA, GNS, GSA, GSV, HDT, VBW ja PKSHT-merkki, tuotettuna todellisesta kulkuraidasta mallinnetuin vastaanotin-, taivas-, häirintä- ja harhautusvaikutuksin. Vain tekstitulostetta; mitään ei lähetetä.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: kaikki 225 227 kahdeksan synteettisen harjoitusvirran lausetta (neljä kirjastoskenaariota, siemenluvut 1 ja 7; GGA, RMC, VTG, ZDA, GNS, GSA, GSV, HDT, VBW ja PKSHT-merkki) jäsentyvät pynmea2:ssa 1.19.0, riippumattomassa NMEA-jäsentäjässä, kelvollisella tarkistussummalla sekä odotetulla lähettäjällä ja tyypillä. Paikka, maanopeus, maakulkusuunta, suunta, UTC-aika ja -päivämäärä, paikannustila ja GGA:n satelliittimäärä, jotka se dekoodaa, ovat yhtä suuria kuin generaattorin todellinen kulkuraita ennen ensimmäistä vertailua kiinnitettyjen toleranssien sisällä (1.5e-6 deg, 0,06 kn, 0,07 km/h, 0,11 deg kulkusuunta, 0,5 deg suunta, 0,02 s), ajettuna skriptillä scripts/gen_nmea_training_ref.py vertailuaineistolla kansiossa tests/fixtures/nmea_training_ref/. GGA:n satelliittimääräodotus korjattiin ensimmäisen ajon jälkeen NMEA-käytännön mukaiseksi (00 ilman paikannusta); numeeriset toleranssit pysyivät ennakkorekisteröinnin commitin mukaisina. MITÄ EI: että mikään vastaanotin, karttaplotteri tai komentosillan järjestelmä hyväksyy virrat; vastaanotin-, taivas-, häirintä- tai harhautusmallien realistisuus (nimellistaivas, mallinnettu kohina, vetämis- ja toistoprofiilit, kaikki MODELLED); HDOP, korkeus sekä DOP- ja GSA/GSV-sisältö syntaksia ja lukumääriä pidemmälle; ohjaajan loki. Mitään ei lähetetä, eikä häirinnänsietoa tai harhautuksensietoa väitetä.
ValidoituHäiriökartta: tarkkuuskoodien merkitykset, AIS:n ei-saatavilla-arvot, ruutusolun osoitus, reitin pituus solun tilaa kohti ja sisämaan peittämineninterference_map (adsb::nacp_epu_bound_m,adsb::nic_rc_bound_range_m,adsb::AdsbParams::classify,ais::ais_position_is_valid,ais::ais_speed_kn,grid::Grid::cell_of,route::exposure,land::LandMask::is_inland)
Ominaisuus
Kartan käyttämien ADS-B:n navigoinnin tarkkuus- ja eheyskoodien tulkinta (NACp-koodia vastaava EPU-raja, NIC-koodia vastaava rajoitussäteen raja sekä menetelmän niistä johtamat matala ja hyvä luokka); AIS:n paikan ja nopeuden ei-saatavilla-arvot, jotka AIS-lukija hylkää; kiinteä leveys- ja pituusasteen ruutusolu, johon paikka osuu; reitin pituus ja sen jako solun tilan mukaan (degraded, not degraded, unassessed, not observed), jonka reittialtistus raportoi; sekä se, onko paikka maapolygonin sisämaan puolella enemmän kuin puskurin verran. Solu, joka on merkitty degraded tai anomalous, on lausuma ilmoitetuista tarkkuuskentistä tai epäuskottavista paikoista, ei havainto häiriöstä, eikä mikään tässä tarkista sitä.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: viisi riippumatonta toteutusta lukee samat synteettiset syötteet. (1) pyModeS 2,21 dekoodaa synteettiset DF17-käyttötilan ja ilmassa olevan paikan kehykset; Kshanan NACp:n EPU-rajat ovat samaa mieltä tarkkuudella 0,5 m (suurin ero 0,4 m), sen NIC:n rajoitusrajat koodeille 5 – 11 tarkkuudella 1 m, ja sen matala ja hyvä luokka asettavat kaikki 12 NACp-koodia ja jokaisen oraakkelin tuottaman NIC-koodin (0 – 11) samalle puolelle kynnyksistä, jotka oraakkelin rajat implikoivat (0 erimielisyyttä). (2) pyais 3.3.0 dekoodaa AIVDM-tyypin 1 lauseet, joiden hyötykuorman bitit skripti pakkaa raaoista ITU-R M.1371 -kenttäarvoista; Kshana hylkää täsmälleen dekoodatut ei-saatavilla-paikat (leveysaste 91, pituusaste 181) ja nopeuden (102,3 kn) ja pitää arvot 0 – 102,2 kn dekoodattuina (0 erimielisyyttä 94 kehyksellä). (3) shapely 2.2.0 covers() solupolygoneilla on samaa mieltä funktion grid::Grid::cell_of kanssa 1770 pisteelle solukooilla 0,5, 0,25, 1 ja 0,07 astetta, mukaan lukien reunan lähellä olevat pisteet, molemmat navat ja antimeridiaani (0 erimielisyyttä). (4) shapely 2.2.0 reitin ja solun leikkaus GeographicLib 2,1 WGS84-geodeettisilla pituuksilla on samaa mieltä reittialtistuksen kanssa 8 synteettisellä reitillä, joista kaksi ylittää antimeridiaanin: kokonaispituus tarkkuudella 0,6% (suurin ero 0,49%, pallo ellipsoidia vastaan) ja kunkin solun tilan pituus tarkkuudella 0,6% plus 125 m kappaletta kohti (suurin 21% tuosta toleranssista). (5) shapely 2.2.0 contains() pyprojin atsimutaalisella ekvidistanttietäisyydellä rannikkoon on samaa mieltä 2000 m:n sisämaamaskin kanssa 992 hilakeskipisteellä neljän synteettisen saaren ympärillä, yksi järvellä (0 erimielisyyttä; 4 pistettä 20 m:n sisällä puskurista jätettiin pois ja laskettiin). Toleranssit kiinnitettiin tiedostossa tests/fixtures/interference_map_ref/PREREGISTRATION.md ennen mitään vertailua, eikä niitä muutettu jälkikäteen; kaksi ensimmäisen ajon löytämää virhettä synteettisissä syötteissä on kirjattu sinne. MITÄ EI: Kshana ei dekoodaa raakoja Mode S -kehyksiä eikä AIVDM-lauseita, joten tämä validoi sen jo dekoodattujen arvojen luennan, ei dekooderia. Oraakkelin NIC-rajoitussäteet koodeille 1, 2 ja 4 poikkeavat DO-260B:stä (20, 8 ja 2 NM), joten numeerisesti verrataan vain koodeja 5 – 11. Paikkasääntö (0, 0), korkeusalaraja, lähdetyyppisuodatin, tunnisteiden tiivistäminen, menetelmän kynnykset ja tunnusluvut sekä solukoon valinta ovat Kshanan omia, eikä niitä tarkisteta mitään vasten. Reittivertailu käyttää samaa suoraa leveys- ja pituusasteen mukaista polun määritelmää molemmilla puolilla, joten se tarkistaa pituudet ja soluosoituksen, ei sitä, että tämä polku on oikea alukselle tai ilma-alukselle. Mikään tässä ei osoita, että merkitty solu on häiriötä. Syötteet ovat synteettisiä; oraakkelivertailuaineistot kirjoittaa skripti scripts/gen_interference_map_ref.py (pyModeS on GPL-3.0 ja sitä käytetään vain siinä offline-skriptissä; CI ei tarvitse Pythonia).
Testit
tests/interference_map_reference.rs::adsb_accuracy_and_integrity_codes_agree_with_pymodes (12 NACp codes, 59 NIC rows); tests/interference_map_reference.rs::ais_field_rules_agree_with_pyais_decoding (94 frames)…
MallinnettuHäirintälähteen alue: mahdollinen lähetinalue ilma-alusten ja alusten paikkaraporteistainterference_map::emitter (estimate,sessions,build_units,profile,GaussianFix::from_tdoa),interference_map::emitter_out (locate),kshana interference-map locate
Ominaisuus
Mahdollinen alue sille, missä heikentyneitä navigointiraportteja aiheuttava lähde voi olla, ADS-B- (NIC/NACp) tai AIS-paikkaraporteista: radion näköyhteys 4/3-maapallon säteellä raportin korkeudesta ja lähetinantennin korkeusvälistä, rajoitettu tehollinen kantama tuntemattomalle teholle, vaikutuksen alaiset yksiköt vetävät posteriorin kohti kantamaansa ja vaikutuksen ulkopuoliset yksiköt, joilla on näköyhteys, työntävät sitä vastaan, ryhmiteltyinä istunnoiksi ajassa ja paikassa. Tuloste on suurimman tiheyden alueet ilmoitetuilla luottamustasoilla, posteriorin painopiste momenttiellipsillä, istunnon alku, loppu, kesto, vaikutuksen alainen pinta-ala ja erillisten ilma-alusten lukumäärä julkaisuminimin yläpuolella, vuorokaudenaikaprofiili ja tunnit päivässä. Maastoton; yksi lähde istuntoa kohti; uskottavuus on ehdollinen mallille. Valinnainen fuusio geolocation-moduulin TDOA-paikannukseen.
Oraakkeli
Ei vielä ulkoista. Vain synteettisiä eteenpäin-käänteisiä kiertoajoja generaattorilta, joka jakaa estimaattorin mallin, joten ne tarkistavat koodin ja ilmoitettujen tasojen kalibroinnin tämän mallin alaisena eivätkä mitään todellisista lähettimistä. Ulkoinen tarkistus julkaistuja Jammertest 2025 -lähetinkohteita vasten ennalta rekisteröitiin (docs/emitter-region/PREREGISTRATION.md, omistaja kuittasi ennen yhtäkään pisteytettyä ajoa) ja ajettiin kerran (docs/emitter-region/RESULTS.md): ADS-B NOT ASSESSABLE (2 aikataulutettua istuntoa, vähemmän kuin rekisteröity minimi 4) ja AIS NOT ASSESSABLE (ei julkaistua istuntoa), joten mitään kynnystä ei testattu ja rivi pysyy MODELLED
Testit
interference_map::emitter unit tests (projection round trip, horizon figure, synthetic forward and inverse round trips: the known emitter lies inside the stated region at about the stated rate, edge cases, session…
GNSS-luottamus (pistemäärä, vyöhyke, syyt, portti ja pyynnöstä paikka) Prometheus-tekstialtistuksena osoitteessa /metrics ja OTLP/HTTP JSON -mittareina, syy-nimikkeiden kardinaliteetti rajattuna.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: meidän Prometheus-tekstialtistuksemme 84-rivisestä synteettisestä virrasta (nimiöarvot lainausmerkeillä, kenoviivoilla, rivinvaihdoilla ja ei-ASCII-tekstillä, 64 syysarjaa plus 'other'-yhdistelmä, portti- ja paikkamittarit) hyväksytään prometheus_client 0.26.0:n tekstijäsentäjässä, ja sen lukemat metriikkaperheet, tyypit, ohjeteksti, nimiöjoukot ja arvot ovat täsmälleen rekisterin tilan mukaiset (arvot f64-yhtäsuuruudella). Meidän OTLP/HTTP JSON samalle rekisterille jäsentyy protobufilla 7.36.2 json_format.Parse(ignore_unknown_fields=False) opentelemetry-proto 1.45.1:n ExportMetricsServiceRequestiksi, ja jokainen mittarin nimi, kuvaus, yksikkö, laji, monotonisuus, aggregointiaikasuhde, attribuutti, arvo, aloitusaika ja aika on täsmälleen rekisterin tilan mukainen. Molempien jäsentäjien osoitettiin hylkäävän tuntemattoman kentän, väärin tyypitetyn arvon ja virheellisen rivin (scripts/gen_telemetry_formats_ref.py). Skeema 1,3 (0,36), ennakkorekisteröity (fb226057) ennen kuin mikään työkalu luki sen: 64-rivisessä synteettisessä skeema-1.3-virrassa (geometrian tilat, DOP:t, nimiöt ja signaalin menetys läsnä, null, poissa ja tuntematon; vähennysluokat; jäsentymättömät rivit) samat kaksi jäsentäjää lukevat geometriasarjan (Prometheus kshana_trust_geometry*, OTLP kshana.geometry.*) ja nimiön class mittarilla kshana_trust_reason_active täsmälleen niin kuin rekisteri implikoi (24 perhettä ja 54 näytettä; 12 mittaria ja 31 pistettä), promtool 3.5.0 check metrics päättyy koodilla 0 ilman lint-ongelmia, ja OpenTelemetry Collector contrib 0.135.0 hyväksyy OTLP/HTTP JSON:in (tila 200, mitään ei hylätty) ja sen tiedostoviejä tallentaa pyynnön muuttumattomana (xval/telemetry-1.3, datariippuvainen: julkaisutarkistuspaketit haetaan kiinnitetyillä SHA-256-tiivisteillä ja niiden tulosteet tallennetaan). MITÄ EI: HTTP-päätepistettä, toimitusta, aikakatkaisuja ja uudelleenyhteyttä ei tarkista oraakkeli, eikä Collectorin prometheus-vastaanotinta; rekisteri luetaan accessorien kautta, joten itse rekisterin tilan virhe jäisi havaitsematta; OTLP:n 'tallennettu tuloste on ajan tasalla' -tarkistus ajetaan vain otlp-ominaisuudella; mittarien nimiä ja niiden hyödyllisyyttä operaatiokeskukselle ei validoida; CEF ja LEEF eivät ole katettuja (katso seuraava rivi).
ValidoituLuottamustelemetrian SIEM-tapahtumat: Common Event Format (CEF) syslogin ylitelemetry (syslog: cef,rfc5424,SyslogSink; time)
Ominaisuus
Vyöhykemuutos- (tai epookkikohtaiset) tapahtumat Common Event Format -hyötykuormina RFC 5424 -kuoressa UDP:n tai TCP:n yli, dokumentoidulla kenttäkartoituksella ja CEF-escapauksella.
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: kahta riippumatonta avoimen lähdekoodin jäsentäjää vasten (oraakkelit: pycef 1,11 (PyPI, MIT); Logstashin CEF-koodekki (logstash-codec-cef 6.2.7 Logstashissa 8.15.3)), tämän crate-kirjaston kirjoittamien CEF-rivien aineistolla (157 ennen alla olevaa muutosta 4, 170 sen jälkeen, 176 muutoksen 5 jälkeen): jokainen vyöhykemuutos ja jokainen epookki tallennetussa 84-rivisessä synteettisessä luottamusvirrassa sekä haastavaa tekstiä isäntänimissä, syissä, aikanimiöissä ja porttien nimissä, jotka sisältävät yhtäsuuruusmerkkejä, kenoviivoja, kenoviiva-yhtäsuuruusmerkkejä, pystyviivoja, rivinvaihtoja, kohdistimen palautuksia, sarkaimia, välilyöntijonoja, monitavuisia ja astraalimerkkejä sekä avaimen näköisiä merkkijonoja, äärimmäisiä pistemääriä ja siirtymiä, jokainen vyöhyke edellisen vyöhykkeen kanssa ja ilman. pycef jäsentää rivit, joiden otsake ei tarvitse escapausta (153 ennen muutosta 4, 166 sen jälkeen, 172 muutoksen 5 jälkeen) ja palauttaa täsmälleen otsakekentät, vakavuuden, tarkan laajennusavainjoukon ja jokaisen arvon (luvut f64-yhtäsuuruudella) CEF-määrittelyn unescape-sääntöjen mukaan, joita pycef ei sovella ja jotka scripts/gen_cef_ref.py soveltaa. Logstash-koodekki, joka purkaa escapauksen itse, jäsentää jokaisen rivin (157, sitten 170, sitten 176), täyttää saman kynnyksen ja palauttaa myös neljä escapausta vaativaa otsakekenttää (pystyviiva, kenoviiva ja yhtäsuuruusmerkki versiomerkkijonossa), joita pycefin otsakekuvio ei pysty lukemaan, joten otsakkeen escapaus nojaa yksin Logstash-koodekkiin. Vertailukynnys rekisteröitiin commiteissa 5172e579 (pycef) ja 0a7598aa (Logstash) ennen kuin kumpaakaan jäsentäjää ajettiin, ja molemmat täyttivät sen ensimmäisellä vertailulla. Viisi muutosta ilmoitetaan. Muutokset (1) – (3) eivät koskeneet mitään vertailusääntöä eikä odotettua arvoa: (1) aineiston kokotarkistus korjattiin arvosta 5 arvoon 4 vyöhykemuutosta, laskuvirhe, koska virrassa on 4; (2) Logstash-ajurin putken erotinjohdotus korjattiin ensimmäisen yrityksen jälkeen, joka ei tuottanut tapahtumia; (3) luottamuspistemäärä ja epookin siirtymä siirrettiin CEF:n kokonaislukukentistä cn1 ja cn2 liukulukukenttiin cfp1 ja cfp2, tässä julkaisussa tehty siirtomuodon muutos, jonka jälkeen aineisto luotiin uudelleen ja molemmat oraakkelit ajettiin uudelleen kynnys muuttumattomana ja ne täyttivät sen jälleen. Muutos (4), 0,36, laajensi aineistoa ja odotettua avainjoukkoa, rekisteröity commitissa d6331429 ennen kuin kumpaakaan jäsentäjää ajettiin uusilla riveillä: skeema-1,3-syötteet lisäävät satelliittigeometrian mukautetuissa kentissä cs6 (nimiö geometry: tila, sitten ';' ja vähennysluokat), cfp3 (geometryHdop) ja cfp4 (geometryPdop); 13 geometriatapausta (aineisto 170 riviin) ja kolme uutta avainta; molemmat täyttivät kynnyksen, muuten muuttumattomana, ensimmäisellä vertailulla (pycef jäsensi 166 170 rivistä, 4 tason 2 otsakkeen tapausta kuten ennen; Logstash 170 170:stä). Muutos (5), 0,36, lisäsi 6 geometrianimiötapausta (aineisto 176 riviin), rekisteröity commitissa 9a8e4fa9 ennen kuin kumpaakaan jäsentäjää ajettiin niillä: syötteistä, jotka sisältävät geometrianimiön, cs6 saa kolmannen kentän (';' ja nimiö) ja cn1 (geometryUsedSatellites) käytettyjen satelliittien määrän; Logstash-koodekin kartoitustaulukko luettiin ensin (ei flexString-kenttiä, siis cs6 eikä flexString1); molemmat täyttivät kynnyksen ensimmäisellä vertailulla (pycef 172 176:sta, Logstash 176 176:sta), ja jokainen aiempi vertailuaineiston merkintä toistui muuttumattomana. MITÄ EI: kumpikaan jäsentäjä ei tyyppitarkista cfp-arvoja (molemmat säilyttävät ne tekstinä), joten liukulukukenttien käyttö nojaa CEF-sanakirjaan eikä oraakkeliin; yhtään toimittajan SIEM:iä ei ajettu; laajennusavainten nimet ja niiden kartoitus ovat tämän crate-kirjaston valinta, ja jäsentäjät osoittavat vain, että ne luetaan takaisin sellaisina kuin ne kirjoitettiin; RFC 5424 -kuori, toimitus, aikakatkaisut ja uudelleenyhteys eivät ole katettuja; pycef on pieni jäsentäjä, jonka viimeisin julkaisu on vuodelta 2020, ja Logstash-koodekki on vankempi oraakkeli.
Vyöhykemuutos- (tai epookkikohtaiset) tapahtumat Log Event Extended Format 2,0 -hyötykuormina RFC 5424 -kuoressa UDP:n tai TCP:n yli, dokumentoidulla kenttäkartoituksella.
Oraakkeli
MITÄ TARKISTETAAN: tämän crate-kirjaston omat täsmällisen merkkijonon testit dokumentoidulle LEEF-kenttäkartoitukselle sekä RFC 5424 -kuoren kentät; ylläpidettyä avoimen lähdekoodin LEEF-jäsentäjää ei ole (Python-pakettihakemiston haku ei löytänyt yhtään), joten muoto tarkistetaan omaa määrittelyään vasten, jonka sama tekijä luki, ei ulkoista oraakkelia vasten. MITÄ EI: hyväksyykö jokin toimittajan jäsentäjä tai SIEM LEEF-hyötykuormat; dokumentoitujen sääntöjen ulkopuoliset escapaussäännöt; todellisen syslog-keräimen käyttäytyminen.
Allekirjoitettu, tiivisteketjutettu todistepaketti GNSS-luottamustapahtumasta: SHA-256 jokaisen tiedoston yli ja ketju manifestin yli, Ed25519-allekirjoitus manifestin täsmällisten tavujen yli sekä varmentaja, joka nimeää jokaisen virheen (muuttunut, poistettu, uudelleennimetty, vaihdettu tai lisätty tiedosto, uudelleenjärjestetty tai muokattu manifesti, ilman avainta uudelleentiivistetty manifesti, uudelleenallekirjoitettu paketti, väärä kiinnitetty avain sekä aikaleimatunniste, joka on poistettu, korvattu, roskaa tai toisen asiakirjan päällä).
Oraakkeli
MITÄ ULKOISESTI TARKISTETAAN, suppeasti sanottuna: (1) Ed25519-funktiot, joilla paketti allekirjoittaa ja varmentaa tiukasti (evidence::bundle::sign_detached, evidence::verify::verify_detached), toistavat RFC 8032 kohdan 7,1 testivektorien 1, 2, 3 ja 1024 julkiset avaimet ja allekirjoitukset tavu tavulta, hyväksyvät ne ja hylkäävät vektorin 1 jokaisen käännetyn bitin ja muiden jokaisen seitsemännen bitin sekä ei-kanonisen S+L-allekirjoituksen; vektorit jäsennetään RFC-tekstistä ja toistetaan kahdella riippumattomalla toteutuksella (cryptography/OpenSSL ja PyNaCl/libsodium) skriptissä scripts/gen_ed25519_rfc8032_ref.py. (2) evidence::bundle::sha256_hex, jokaisen paketin tiivisteen ja ketjun taustalla oleva tiiviste, toistaa FIPS 180-4 SHA-256 -esimerkit (abc; 448-bittinen viesti; miljoona a:ta), tyhjän viestin ja hashlib-tiivisteet 0 – 130 tavun portaikolle täytön rajojen yli, täsmälleen. (3) Pythonilla vain tiedostosta docs/EVIDENCE-PACKS.md kirjoitettu varmentaja (scripts/evidence_verify_cleanroom.py: hashlib ja cryptography; sen tekijä ei lukenut Rust-koodia) on täsmälleen samaa mieltä Rust-varmentajan kanssa 71 synteettisellä ehjällä ja peukaloidulla paketilla tuomiosta, virheiden joukosta tiedostonimineen, allekirjoituksen tuomiosta sekä tiedostoista uudelleenlasketusta ja manifestiin kirjatusta ketjun päästä. Ensimmäisellä ajolla 64 71:stä oli samaa mieltä; erimielisyydet olivat yksi määrittelyn monitulkintaisuus (kiinnitetyn avaimen tarkistus lukukelvotonta manifestia vasten), yksi oraakkelin rajapintapoikkeama ja yksi epätäydellisesti rakennettu tapaus; määrittelylause selvennettiin, oraakkeli toteutettiin uudelleen tekstistä ja tapaus täydennettiin, mitään toleranssia tai odotusta muuttamatta (kirjattu commitiin d54e14c6). MITÄ EI: puhtaalta pöydältä tehty varmentaja on eri tekijän riippumaton toteutus, ei kolmannen osapuolen auktoriteetti, ja se jakaa määrittelyn valinnat, joten se tukee tämän toteutuksen sääntöjen toteutusta, ei sääntöjä; vektorit validoivat primitiivit, eivät paketin muodon suunnittelua. Tällä rivillä RFC 3161 -tunniste luetaan vain sanomatiivisteensä osalta ja testitunnisteet ovat synteettisiä ja allekirjoittamattomia; auktoriteetin allekirjoitus ja ketju varmennetaan valinnaisesti (kshana evidence verify --tsa-ca) erillisellä rivillä 'RFC 3161 timestamp-token signature and chain verification'. Peukalointitapaukset ovat synteettisiä. Mikään tässä ei ole oikeudellinen lausunto eikä todistus mistään paketista.
Testit
tests/evidence_crypto_reference.rs (RFC 8032 section 7.1 vectors 1, 2, 3 and 1024; FIPS 180-4 SHA-256 examples; exact); tests/evidence_pack_reference.rs::kshana_and_the_clean_room_verifier_agree_on_every_case (71…
evidence::tsa::verify_token ja valinnainen kshana evidence verify --tsa-ca <anchors.pem> paketin tiedostolle timestamp.tsr: RFC 3161 TimeStampResp tai paljas TimeStampToken (CMS SignedData TSTInfon yli) tarkistettuna offline-tilassa luotettuja ankkureita vasten samoin kuin openssl ts -verify sen tarkistaa: allekirjoitettujen attribuuttien sisältötyyppi ja sanomatiiviste TSTInfon yli; allekirjoitus allekirjoitettujen attribuuttien yli (RSA PKCS#1 v1.5, RSASSA-PSS, ECDSA P-256 ja P-384; RSA:n julkiset operaatiot crypto-bigintillä); ESS signing-certificate v1 (SHA-1) tai v2 -tiiviste, joka nimeää allekirjoittajan varmenteen, löydettynä tunnisteen ja kutsujan epäluotettujen varmenteiden joukosta; allekirjoittajan kriittinen, ainoa timeStamping-laajennettu avainkäyttö; ketju luotettuun itse myönnettyyn ankkuriin kunkin varmenteen allekirjoituksen, CA-tilan ja avainkäytön kanssa, ja jokainen varmenne voimassa tunnisteen genTime-hetkellä; sekä sanomatiiviste dataa vasten. Ei tarkisteta: peruutus (CRL, OCSP), nimi- ja käytäntörajoitteet, nonce
Oraakkeli
OpenSSL 3.0.13 (openssl ts -verify -attime genTime ja openssl cms -verify -cades -purpose timestampsign plus TSTInfon tiiviste RSA-PSS-tunnisteille), ajettuna skriptillä tests/fixtures/evidence_tsa/run_openssl.sh tiedoston cases.tsv 27 tapauksella: RSA PKCS#1 v1.5 SHA-256:lla ja SHA-512:lla sekä ESS v1 ja v2, ECDSA P-384 -juuri P-256-välivarmenteen yllä sekä P-256- ja P-384-TSA:t, RSA-PSS, tunniste ilman allekirjoittajan varmennetta sen kanssa ja ilman, CAdES-allekirjoitetut tunnisteet, käännetty allekirjoitustavu (kolme algoritmia), muutettu TSTInfo (kaksi), käännetty välivarmenteen allekirjoitus, ESS-kaksoisvarmenne, vääriä ankkureita (neljä), vanhentunut TSA-varmenne, ei-kriittinen ja väärä laajennettu avainkäyttö sekä väärä data (kolme). Ennakkorekisteröity tiedostossa tests/fixtures/evidence_tsa/PREREGISTRATION.md (tallennettu yksinään, 30ad70b2, ennen kuin varmentaja oli olemassa; OpenSSL-tuomiot ajettiin sen jälkeen uudelleen, tavu tavulta identtisinä). Ensimmäinen ajo: kaikki 27 tuomiota ovat samaa mieltä (B1) ja jokainen genTime on samaa mieltä sekunnin tarkkuudella (B2). Soveltamisala, suppeasti sanottuna: itse luodut testivarmenteet ja -tunnisteet, tehty samalla OpenSSL:llä, joka niitä arvioi; OpenSSL on riippumaton toteutus, ei aikaleimauksen auktoriteetti; yhdenkään julkisen auktoriteetin tunnistetta ei ole mukana (freetsa.org ei ilmoita lisenssiä). Mikään tässä ei todista yhtään todellista aikaleimaa
Testit
tests/evidence_tsa_openssl.rs::every_case_agrees_with_openssl (the pre-registered comparison); evidence::tsa::tests (civil dates and times, base64, the RSA public operation)…
receiver_trust::calibration::run_dataset: C/N0-pudotuksen, AGC:n ja häirintäindikaattorin valvontojen ennakkorekisteröity kalibrointi julkisella JammerTest 2024 -aineistolla (Zenodo 15911589, GPL-3.0-or-later, haettu ajon aikana, ei koskaan mukana): kansiota kohti 1 s:n aikajana tiedostoista mon_rf.csv ja rinex.csv, valvonnat ajetaan kerran, jokainen kalibroinnin jälkeinen epookki merkitään puhtaaksi tai häirityksi kansion attack_log-tiedoston perusteella (siirretty CEST:stä UTC:hen, 60 s:n suoja), jokainen kynnys pyyhkäistään kiinteällä hilalla, valitaan pienin kynnys, jolla yhdistetty puhtaan väärän hälytyksen todennäköisyys on enintään 0,01, ja jätä yksi kansio pois -pidätetyt lukumäärät; UBX-lukijan ristiintarkistus. Valinta toimitetaan vain valinnaisena profiilina [monitors] profile = "jammertest-2024-calibrated" (cn0_drop_db 1,5, agc_k_sigma 3,5, jam_ind_threshold 29); oletussääntö ja jokainen tuloste ilman sitä ovat muuttumattomia
Oraakkeli
Aineiston julkaistut tapahtumalokit (attack_log-ikkunat) tapahtumatotuutena, ennakkorekisteröinnin xval/jammertest-trust/PREREGISTRATION.md mukaisesti (tallennettu yksinään, 0fa012b, ennen kuin testikehys ajettiin). Ensimmäinen ja ainoa ajo (xval/jammertest-trust/RESULTS.md): 14 24 kansiosta arvioitavissa (7 häirinnällä), 3 502 puhdasta ja 9 560 häirinnän epookkia. Pidätetty puhdas väärän hälytyksen todennäköisyys: cn0_drop_db 0,0231 (81/3502) kynnystä 0,02 vastaan, FAIL; agc_k_sigma 0,0003, hyväksytty; jam_ind_threshold 0,0094, hyväksytty; kolmen yhdiste: väärät hälytykset 0,0328, havaitseminen 0,807 kynnyksiä 0,05 ja 0,50 vastaan, hyväksytty. Rekisteröidyn säännön mukaan rivi on MODELLED (yksi kynnys epäonnistui). Suppea: yksi vastaanotintyyppi (u-blox ZED-F9P), yksi tapahtuma, ajastetut yhden minuutin ajanjaksot totuutena (havaitseminen on alaraja; puhdas tarkoittaa kirjattujen ikkunoiden ulkopuolella); kalibroitu CSV-lokeilla, ja UBX-lukija antaa enemmän vääriä hälytyksiä kahdella kansiolla. Merenkulun luottamuspistemäärän vyöhykkeitä ei kalibroida
MallinnettuJammertest-pisteytys: vastaanottimen loki pisteytetään jokaista ajoitettua testiä kohden (havaitsemisviive, havaitsematta jääneet hälytykset, väärät hälytykset, palautumisaika) julkaistua testisuunnitelmaa vastaanjammertest::plan (parse_catalog,parse_plan,import,import_attack_log,events_toml); jammertest::score (score_run); jammertest::dataset (run_dataset); jammertest (score_log,score_pack); examples/jammertest_score_2024.rs
Ominaisuus
jammertest::{plan, score, dataset} (kshana jammertest import|score): NPRA:n testiluettelo ja lähetyssuunnitelma (MIT, haettu kiinnitetyllä SHA-256-tiivisteellä, ei koskaan mukaan kopioituna) luetaan ajoitettuna totuutena luettelotunnukset säilyttäen; receiver-trust-ajo pisteytetään testeittäin (ensimmäinen hälytys miinus suunniteltu alku, havaittu/myöhäinen/ohi mennyt toleranssia vasten, aika ensimmäiseen hälytyksettömään jaksoon, hälytykset jokaisen ajanjakson ja sen suojavälin ulkopuolella), ja allekirjoitettu todistepaketti kuljettaa tuloskortin. Aikataulu koostuu suunnitelluista ajanjaksoista, ei tallennetuista lähetysajoista
Oraakkeli
Suunnitelman ajanjaksojen lukumäärät testialueittain (76, 77 ja 45 ajanjaksoa, joista 61, 63 ja 32 lähettää) laskettiin riippumattomasti skriptillä samasta JSON-tiedostosta; 2024-aineiston attack_log-ikkunat tapahtumien totuutena, tiedoston xval/jammertest-score/PREREGISTRATION.md mukaisesti (kirjattu yksinään, c2e6d3b, ennen pisteyttimen ajoa). Ensimmäinen ja ainoa ajo (xval/jammertest-score/RESULTS.md): rekisteröity vähimmäisaineistosääntö FAILED (4 pisteytettävää häirintäikkunaa 4:stä 12 UBX-kansiosta, kun vähimmäisvaatimus oli 10 ikkunaa 2 kansiosta: 5 kansiota hylättiin lähtötasosäännön perusteella, 3 UBX-lokissa on vain GPS-viikon aika), joten kynnyksiä B1–B4 ei voida arvioida; mitään ei löysätty eikä ajettu uudelleen. v2 (xval/jammertest-score/PREREGISTRATION-v2.md, kirjattu yksinään, vain aineiston käsittely: pelkkää GPS-aikaa sisältävät lokit sijoitettiin päivämäärän mukaan, 12 vain CSV-tiedostoja sisältävää kansiota, liikkuvan alustan istunto liikkuville roverreille; samat kynnykset ja vähimmäisaineistosääntö): 14 kansiota 24:stä säilytettiin, mutta pisteytettäviä häirintäikkunoita oli 7, vähimmäisaineistosääntö ei jälleen täyttynyt, mitään kynnystä ei voida arvioida (RESULTS-v2.md). Ajoitettu totuus: suunniteltu ajanjakso ei ole lähetystallenne, ohi mennyt tapahtuma voi olla testi, jota ei koskaan ajettu, viive lasketaan suunnitellusta alusta, ja puhdas tarkoittaa suunniteltujen ajanjaksojen ulkopuolista. Mittausalueen monitorien tekemä havaitseminen ei kerro mitään pienitehoisesta harhauttajasta. Yksi vastaanotintyyppi (u-blox ZED-F9P). 2025-vuoden SimulaMetin NMEA-aineistoa ei käytetä (lisenssiä ei ole ilmoitettu, tilausmuurin takana)
Testit
tests/jammertest_plan_roundtrip.rs (datan varassa muuttujalla KSHANA_JAMMERTEST_PLAN_DIR: paikkamäärät testialuetta kohti vuoden 2025 suunnitelmassa, katalogitunnisteet, TOML-edestakainen kierto); tests/jammertest_score.rs (synteettinen loki, jossa tunnettu pudotus…
ValidoituTestipenkin vienti (kshana bench-export): Maahan kiinnitetyt, geodeettiset ja paikallisen nopeuden sarakkeet, asentosarakkeet ja NMEA 0183 -tulosteinterop::testbench (write_motion_csv,write_nmea,trajectory_of,export); fusion::pack::truth_trajectory
Ominaisuus
Liike-CSV:n Maahan kiinnitetyn koordinaatiston paikka, geodeettinen paikka, Maahan kiinnitetyn koordinaatiston nopeus, suunta/nousu/kallistus ja UTC-sarakkeet sekä NMEA GGA/RMC -sanomat, kirjoitettuna synteettisistä skenaarioista (gnss-ins mukaan lukien automotive-urban-canyon, jamming, gnss-sim). Vain liike ja tapahtumat; signaalia ei kirjoiteta, eikä mitään simulaattorin tai vastaanottimen suorituskykyä väitetä.
Oraakkeli
MITÄ TARKISTETAAN ULKOISESTI, suppeasti ilmaistuna: pyproj 3.8.0 (PROJ 9.8.1), geographiclib 2,1, pynmea2 1.19.0 ja scipy 1.18.1 vasten, ajettuna skriptillä scripts/gen_testbench_ref.py 4 synteettisellä skenaariolla, toleranssit kiinnitettynä ennen ensimmäistä vertailua (kukin kirjoittajan pyöristyksen pahin tapaus): Maahan kiinnitetyt sarakkeet vastaavat geodeettisten sarakkeiden WGS 84 -muunnosta (pahin 1.3e-4 m, kynnys 3e-4) ja käänteismuunnosta (1.3e-9 astetta, kynnys 2e-9; korkeus 1.3e-4 m, kynnys 3e-4) jokaisella rivillä; PROJ:n toposentrisellä operaatiolla pohjois-itä-alas-muotoon kierretty Maahan kiinnitetty nopeus vastaa moottorin todellista NED-nopeutta (7.5e-5 m/s, kynnys 2e-4); suunta, nousu ja kallistus vastaavat scipyn yaw-pitch-roll-arvoja moottorin todellisesta kvaternionista (5.0e-7 astetta, kynnys 1e-6); jokainen NMEA-sanoma jäsentyy pynmea2:ssa kelvollisella tarkistussummalla, ja sen dekoodattu paikka (1.2e-3 m, kynnys 5e-3), korkeus, nopeus, kulkusuunta (5.0e-4 astetta, kynnys 1e-3) ja aika vastaavat liikearvoja; UTC-sarake vastaa riippumatonta päivämäärän ja ajan laskentaa. Tarkistettujen CSV- ja NMEA-tavujen tarkka SHA-256 on kiinnitetty. MITÄ EI TARKISTETA: skenaarion todellista rataa itsessään (ajoprofiili ja sen integrointi); konventioita (suunta on rungon kääntökulma, ei kulkusuunta, ja se poikkeaa siitä enintään noin 77 astetta skenaariossa automotive-urban-canyon; GGA:n laatukenttä, satelliittien lukumäärä ja HDOP ovat paikkamerkkejä); lukeeko mikään laboratoriosimulaattori tiedostot tarkoitetulla tavalla; mitään simulaattorin tai vastaanottimen suorituskykyä. Oraakkelit tarkistavat muunnokset ja koodaukset, eivät skenaarion fysiikkaa. Paikallisen koordinaatiston käsittely tarkistetaan vain nopeuden kierron sekä NMEA-nopeuden ja -kulkusuunnan kautta (CSV:ssä ei ole paikallista paikkasaraketta).
Testit
tests/testbench_reference.rs (7 tests: oracle pins, export bytes, worst case over every row, position columns, local velocity vs true NED velocity, Euler angles vs scipy, NMEA vs pynmea2); tests/interop_testbench.rs…
compliance (kshana compliance-report): kuvaus Kshanan tulosteista julkisten kehysten kohtiin pelkästään numeroin, täytettynä annetuista ajoista; tulos lasketaan jonkin ominaisuuden hyväksi vain, kun se sisältää kuvauksen nimeämän todisteen, tyhjä joukko ei todista mitään, ja sanamuoto on "tukee todisteita" (supports evidence for); raportti ei ole toteamus siitä, että jokin kehys täyttyisi, eikä kenenkään antama luokitus tai hyväksyntä.
Oraakkeli
Viitteet tarkistettu skriptillä poimittua otsikkoindeksiä vasten, joka perustuu viitattuihin julkisiin asiakirjoihin, luettu 2026-10-10 (tests/compliance_references.rs). MITÄ TARKISTETAAN: 49 viitattua lauseketta, kohtaa, kappaletta tai otsikkoviitettä on olemassa viitatussa asiakirjassa, ja 7 viitattua URL-osoitetta aukesi merkittynä päivänä (2 toisen reitin kautta); negatiiviset verrokit epäonnistuvat. MITÄ EI TARKISTETA: että mikään parafraasi, kuvaus tai aukko on oikein; EN 16803 -standardin lausekkeet (maksullinen, vain luettelon teksti); myöhemmät versiot; indeksi ei ole riippumaton toteutus.
MallinnettuMerenkulun integraatiot: Signal K -liitännäinen, OpenCPN:n portin virta ja pisteytyspaneeli, viitekäännösreceiver_trust (live: portti, sen TCP-kuuntelija, PKSHT); crate-paketin ulkopuolella: integrations/signalk (JavaScript), integrations/opencpn (JavaScript-välittäjä, C++-natiiviliitännäinen), deploy/reference-build (systemd-yksiköt, kontti)
Ominaisuus
Luottamuspistemäärä, kaista, syyt, portin tila ja vastaanottimen ilmoittama paikka julkaistaan polussa navigation.gnss.kshana Signal K -palvelimessa varoitus-, hälytys- ja normaali-ilmoituksin (integrations/signalk); porttitettu NMEA-virta, jossa paikka on merkitty virheelliseksi luottamuksen romahtaessa ja jossa on yksi PKSHT-sanoma kierrosta kohden, jonka portti itse tai pieni välittäjä tarjoaa OpenCPN:lle TCP:n yli, sekä OpenCPN:n natiivi pisteytyspaneeli, joka lukee PKSHT-sanoman (integrations/opencpn); sekä systemd-yksiköt ja kontti, jotka ajavat porttia (deploy/reference-build). Kun nämä näyttävät tulosteen, siinä on ohjeellinen ilmoitus: Ohjeellinen ohjelmisto, ei tyyppihyväksytty navigointilaite (IEC 61108, IEC 61162): käyttäjä vastaa edelleen aluksen navigoinnista.
Oraakkeli
MITÄ TARKISTETAAN, suppeasti ilmaistuna: että nämä integraatiot toimivat sen oikean ohjelmiston kanssa, jota varten ne on kirjoitettu. TODISTEET on kirjattu tiedostoihin integrations/signalk/evidence/README.md (JSON-tiedostoineen) ja integrations/opencpn/evidence/README.md (kuvakaappauksineen ja lokeineen), kummankin mukana skripti, joka toistaa ne. (1) Signal K: liitännäinen ladattiin kiinnitettyyn signalk-server 2.33.0 -npm-pakettiin yksityisessä, vain paluuosoitteeseen rajatussa verkon nimiavaruudessa, syötteenä synteettistä dataa. Palvelimen omat REST- ja WebSocket-rajapinnat näyttivät julkaistut polut, pisteytyksen metatiedot sekä ilmoituksen, joka eteni tilasta ei ilmoitusta tilaan varoitus, hälytys, normaali (pitoajan jälkeen) ja uudelleen varoitukseen, kun data lakkasi tulemasta. Kun liitännäinen ajoi todellisen kshanan palvelimen itsensä vastaanottamalla NMEA-datalla, ilmoitus eteni varoituksesta hälytykseen ja vastaanottimen ilmoittama paikka julkaistiin; palvelimen oman navigation.position-arvon kirjoitti sen NMEA-tarjoaja, ei koskaan liitännäinen. Ajettu uudelleen live-JSON-skeemaa 1,2 vasten. (2) OpenCPN: liitännäinen käännettiin OpenCPN:n liitännäisrajapinnan otsikkoa ja wxWidgets 3.2.4 -kirjastoa vasten, ladattiin OpenCPN 5.8.4 -ohjelman Ubuntu 24,04 -pakettiin virtuaalinäytöllä; OpenCPN latasi sen, ajoi sen alustuksen ja välitti sille porttitetun virran PKSHT-sanomat, ja paneeli muuttui punaiseksi epäluotetulla kaistalla. Yhdessä puhtaassa ajossa OpenCPN:n oma aluksen paikka lakkasi päivittymästä ja sen paikkamerkki putosi, kun portti merkitsi paikan virheelliseksi. Toinen ajo, jota syötti suoraan portin TCP-kuuntelija, osoitti toimituksen liitännäiselle mutta ei puhdasta ennen ja jälkeen -vertailua. (3) Välittäjätestit toistavat tallennetun otteen porttitetusta virrasta oikean TCP-pistokkeen kautta ja tarkistavat, mitä vastaanottaja saa (tavut muuttumattomina, kelvolliset tarkistussummat jokaisessa sanomassa uudelleenkirjoitetut mukaan lukien, GGA ja RMC yhtäpitävinä, yksi PKSHT kierrosta kohden portti-kenttineen siellä, missä paikka on virheellinen), ja päästä päähän -skripti tarkistaa, että portin kuuntelijan vastaanottaja saa täsmälleen ne tavut, jotka sama portti kirjoittaa vakiotulosteeseen. (4) PKSHT-jäsentimet (JavaScript ja C++) ajetaan kshana-tulosteesta tallennettujen sanomien yli, ja ne hylkäävät väärän tarkistussumman, version tai pistemäärän, joka on alueen 0–100 ulkopuolella. (5) systemd-yksiköt tarkistetaan komennolla systemd-analyze verify (systemd 255, binäärit korvattuina tynkillä) sekä suojilla, jotka koskevat shelliä kohdassa ExecStart, uudelleenkäynnistyskäytäntöä ja hiekkalaatikon avaimia; kontin sisääntulopisteen argumenttien käsittely tarkistetaan tynkäbinäärillä. MITÄ EI TARKISTETA: mitään näiden integraatioiden näyttämää arvoa varten ei ole ulkoista oraakkelia. Luottamusarvot itse ovat yllä olevat rivit, ja integraatioajo osoittaa vain, että putkisto kuljettaa ne; siksi tämä rivi on MODELLED eikä VALIDATED (docs/VALIDATION.md). Mitään todellista alusta, vastaanotinta, pitkää ajoa, kummankaan isäntäohjelman muuta versiota, muuta käyttöjärjestelmää tai työpöytää ei käytetty; kaikki data on synteettistä tekstiä, eikä mikään tässä ole mittaus. Ilmoituksen äänen ja visuaalisen käsittelyn todellisessa Signal K -asiakkaassa, OpenCPN:n työkalupalkin painiketta, asetuksia ja vanhentunutta tilaa sekä pakkaamista OpenCPN:n liitännäishallintaan ei kokeiltu. systemd:n hiekkalaatikon avaimet tarkistettiin vain syntaksin osalta, niitä ei ajettu elävässä systemd:ssä, eikä konttikuvan rakennuksesta ja sen terveystarkistuksesta ole tässä kirjattua todistetta. Mitään havaitsemis- tai väärän hälytyksen lukua ei väitetä. Ohjeellinen ohjelmisto, ei tyyppihyväksytty navigointilaite (IEC 61108, IEC 61162): käyttäjä vastaa edelleen aluksen navigoinnista.
Testit
tests/receiver_trust_live_cli.rs (portti ja sen TCP-kuuntelija, Rust-puoli); integrations/signalk/test/adapter.test.js, integrations/signalk/test/model.test.js ja integrations/signalk/test/plugin.test.js (24 Node…
MallinnettuBOC(1 1)-seuranta: DLL-skaalaus ja bump-jump-ambiguiteetin ratkaisu (valinnainen)iq::track::boc (BocKind,BocTracking,BumpJump,boc11_dll_scale); iq::track::channel (the bump-jump taps and Channel::bump_jumps)
Ominaisuus
iq::track::LoopConfig-rakenteen boc-kenttä (valinnainen, oletuksena None): kolme DLL-diskriminaattoria skaalataan lukemaan koodivirhe chippeinä yksikkökaltevuudella sini-BOC(1 1) -pääpiikissä, ja bump-jump-monitori hyvin aikaisilla ja hyvin myöhäisillä korrelaattoreilla yhden alikantoaallon puolijakson (0,5 chippiä) etäisyydellä hyppäyttää koodin NCO:n kohti pääpiikkiä, kun ylös/alas-laskuri saavuttaa arvon N (oletuksena 8). Ilman valintaa jokainen tuloste on ennallaan.
Oraakkeli
Sisäinen johdonmukaisuus syötettyä totuutta ja suljettuja muotoja vasten, kynnyksin, jotka on ennakkorekisteröity versiossa 6b68f6cc (docs/design/evidence/boc-bump-jump/). BeiDoun B1C-datasignaali (PRN 19, 5 MS/s), jonka tuottaa iq::scene: kun valinta on pois, sivupiikistä alkava seuranta pysyy väärään lukittuna ennustetussa kohdassa ±(0,5 + d/4) chippiä (mitattu ±0,549); kun valinta on päällä, yksi hyppy kohti pääpiikkiä kohdassa 0,08 s ja myöhäisen ikkunan RMS 0,0008 chippiä tasolla 45 dB-Hz ja 0,0048 chippiä tasolla 35 dB-Hz; ei hyppyä pääpiikistä tasoilla 35, 40 ja 45 dB-Hz 4 sekunnin aikana; skaalattu EMLP-kaltevuus 0,94–0,99 näytteistetyllä signaalilla (skaalaamaton 3,6–3,8). Pelkkä bump-jump-ilmaisin korrelaattorikolmikoilla, joissa oli tarkka BOC(1 1)-kohinakovarianssi, ei tehnyt yhtään väärää hyppyä 100 000 päivityksessä tasoilla 25–45 dB-Hz ja havaitsi 1000 sivupiikkialkua 1000:sta tasolla 35 dB-Hz. NOT MET (löydös F1): skaalauksen ennakkorekisteröity yksikkötestiruudukko sisältää siirtymiä diskriminaattorien lineaarisen alueen ulkopuolelta, missä skaalatut lukemat ohittavat siirtymän enintään 48 %. MITÄ EI TARKISTETA: kenttä-IQ, kaistarajoitetut etupäät, yhdistetyt MBOC/QMBOC-replikat ja mikään ulkoinen vastaanotin.
Testit
tests/iq_boc_bump_jump.rs (b1_b2_b3_side_peak_and_false_jumps_on_the_iq_chain, b4_scaling_on_the_sampled_signal, b5_false_jump_rate_and_detection_at_correlator_level); iq::track::boc unit tests…
iq::channel::scint, Cornellin tuikintamalli (Rice-intensiteetti, toisen asteen Butterworth-spektri, vaihe arg z), jota ohjataan mitatun ikkunan S4-arvolla ja intensiteetin dekorrelaatioajalla, verrattuna siihen, mitä se tuottaa näiden kahden syötteen lisäksi; realdata::scint50 lukee mitatun lokin, poistaa siitä trendin ja ajaa vertailun.
Oraakkeli
Mitattu data kynnyksin, jotka on ennakkorekisteröity versiossa b6ccb499 (xval/scint-malindi/): Zenodo-tietue 16941224 (INGV, Malindi, 18. maaliskuuta 2023, GPS PRN 26, 50 Hz:n intensiteetti ja kantoaallon vaihe, CC BY 4,0, SHA-256 tarkistettu). 22 kelpuutettua 60 sekunnin ikkunaa (N1 täyttyi). MET: intensiteettijakauma (Kolmogorov–Smirnov D 0,0415, kynnys 0,05) ja S4:ään sidottu vaihetuikinta (mitatun ja mallin sigma-phi:n mediaani 0,779, kynnys 2/3–3/2). NOT MET (löydös F1): mallin syvien häipymien osuus on 2,38-kertainen mitattuun verrattuna (kynnys 0,5–2) ja sen keskimääräinen häipymä 3,51-kertaisesti pidempi (kynnys 2/3–3/2). Löydös F2: rekisteröity käsittely lukee mallin kiedotun vaiheen, minkä itsetarkistus paljasti; B3 toistettuna jälkikäteen vaihe avattuna antaa 0,804. MITÄ EI TARKISTETA: muut yöt, asemat, leveysasteet tai signaalit; vastaanottimen kohina mallissa. Rivi pysyy tasolla MODELLED.
Testit
tests/iq_scint_malindi_measured.rs (cornell_model_verdict_is_the_recorded_one, rekisteröity tuomio varmistettu tallennetun mukaiseksi, havainto F1; finding_model_fades_are_deeper_and_longer_than_measured…
iq::acq::ca_cfar ja ca_cfar_cells (valinnainen): hakuruudukon solua verrataan oman Doppler-rivinsä vertailusolujen keskiarvoon (suoja- ja askelviiveet, jaksolla ympäri kiertäen), kertoimella alpha, joka asetetaan suljetun muodon CA-CFAR-väärähälytystodennäköisyydestä M epäkoherentille lohkolle (ca_cfar_pfa, ca_cfar_alpha). Näytetehoilmaisin pysyy oletuksena, ja jokainen olemassa oleva tuloste on ennallaan.
Oraakkeli
Suljettu muoto, kynnyksin, jotka on ennakkorekisteröity versiossa 3724aefa (docs/design/evidence/acq-cfar/). CA-CFAR-väärähälytystodennäköisyys Gamma(M)-soluille tarkan mallin Monte Carlo -ajoa vasten: 18 tapausta 18:sta 3 binomisen sigman sisällä. Jokaisella iq::acq-hakujen solulla (GPS L1 C/A, 2,5 MS/s, 210 000 solua kussakin) suunnitteluarvolla 1 %: 0,977 % ja 0,969 % gaussisella kohinalla sekä 1,006 % ja 0,999 % 2-bittisesti kvantisoidulla kohinalla (M = 1 ja 4; kynnys plus tai miinus 20 %); päätökset ennallaan, kun syöte skaalataan. NOT MET (löydös F1): kohinattomalla 2-bittisellä signaalilla havaitseminen ja sen solu ovat oikein, mutta 1,28 % piikin rivin piikin ulkopuolisista soluista (kynnys 1 %) ylittää kynnyksen koodin deterministisissä korrelaation sivukeiloissa. MITÄ EI TARKISTETA: muut CFAR-variantit, kaksiulotteiset ikkunat, kaistarajoitetut etupäät, kenttädata.
MallinnettuSpektrimalli: GLONASS-, BeiDou- ja Galileo E6 -kaistat (valinnainen)spectrum (default_band,MORE_BAND_NAMES,GLONASS_CHANNELS)
Ominaisuus
spectrum::default_band ratkaisee pelkän nimen perusteella (MORE_BAND_NAMES) GLONASSin L1OF:n ja L2OF:n jokaisella FDMA-kanavalla K = -7–6 (BPSK, 0,511 Mchip/s), BeiDoun B1I:n (BPSK(2)), B1C:n (MBOC(6,1,1/11)), B2a:n ja B3I:n (BPSK(10)) sekä Galileon E6:n (BPSK(5)), niiden rajapintakuvausasiakirjojen kantoaalloilla ja vähimmäisvastaanottotehoilla; oletuskaistajoukko ja jokainen olemassa oleva tuloste ovat ennallaan.
Oraakkeli
Julkaistut rajapintakuvausasiakirjat ja suljetut muodot, kynnyksin, jotka on ennakkorekisteröity versiossa 5806f28b (docs/design/evidence/spectrum-bands/): GLONASS ICD Edition 5,1, BDS-SIS-ICD B1I 3,0, B1C 1,0, B2a 1,0 ja B3I 1,0, Galileo OS SIS ICD Issue 2,1. MET: jokainen kantoaalto, chip-nopeus ja vastaanottoteho kuten ne on litteroitu (28 GLONASS-kanavaa), BPSK:n ensimmäiset nollakohdat chip-nopeudella, B1C-yhdistelmä yhtä suuri kuin MBOC(6,1,1/11), kuten sen ICD:n tehotaulukko antaa, C/N0-polun identiteetti ja tavu tavulta identtiset spektriskenaariot. NOT MET: yksikköalakynnys, joka oli saavuttamaton sellaisena kuin se oli kirjoitettu (löydös F1; alat vastaavat suljetun muodon kaistansisäistä osuutta), sekä IQ-kerroksen B1I- ja B1C-aaltomuotojen binikohtainen yhtäpitävyys mallin verhokäyrän kanssa (1,26 ja 1,56 dB kynnyksellä 0,5 dB, löydös F2; GLONASS 0,07 dB), koska Gold- ja Weil-koodien viivaspektrit ovat epätasaisia; kaistakeskiarvoistettuna pääkeilat täsmäävät 0,25 dB:n sisällä. MITÄ EI TARKISTETA: tallennettu IQ, muut signaalit, järjestelmän sisäinen häiriö.
iq::signals::beidou::b1i_bits ja b1i: BDS-SIS-ICD-B1I-3.0:n Gold-koodit typistettyinä 2046 chippiin, PRN 1–63, sellaisina kuin IQ-kerros ne tuottaa, hakee ja seuraa.
Oraakkeli
GNSS-SDR v0.0.19 (tagi v0.0.19, commit 1ddd4562), saman ICD:n riippumaton avoimen lähdekoodin toteutus: sen beidou_b1i_code_gen_int, käännettynä erillisenä, tuotti kaikki 63 koodia. Vain sen ohjelmatuloste on kirjattu: tests/fixtures/iq_signals/beidou_b1i_gnss_sdr.txt, 64 chipin etuliite ja kunkin 2046 chipin koodin SHA-256. Tuo tuloste on ne BeiDou B1I -PRN-koodit, jotka julkinen BDS-SIS-ICD-B1I-3.0 määrittelee; varastossa ei ole GNSS-SDR:n lähdekoodia eikä binääriä. Kynnys ennakkorekisteröity versiossa 911106d1 (xval/beidou-b1i-gnss-sdr/): kaikki 2046 chippiä kaikista 63 PRN-koodista identtisiä, ei inversiota, siirtoa tai uudelleennimeämistä. Tulos: 63 63:sta identtistä; vakiopaketti luotiin uudelleen tuoreesta v0.0.19-checkoutista (lähdetiedoston SHA-256 kirjatun mukainen) ja on tavu tavulta identtinen. MITÄ EI TARKISTETA: NH20-toissijainen koodi, GEO-PRN-luettelo, kantoaalto ja chip-nopeus.
iq::signals::gps::l1c_p_bits, l1c_d_bits ja l1c_o_bits: L1CP- ja L1CD-Weil-etäisyydenmittauskoodit (laskettu Legendre-jono, Weil-indeksi, ennen chippiä p lisätty laajennusjono) ja L1CO S1 -peittokoodit, PRN 1–63.
Oraakkeli
IS-GPS-800J (01-AUG-2022, jakelulauselma A), tarkistussarakkeet, jotka se painaa generaattorin parametrien viereen: Taulukko 3.2-2 jokaisen L1CP- ja L1CD-koodin alku- ja loppu-24 chippiä, Taulukko 3.2-3 jokaisen L1CO-koodin alku- ja loppu-11 bittiä, Taulukko 6.2-1 pituuden 10223 Legendre-jono; litteroitu skriptillä scripts/extract_is_gps_800_tables.py PDF-tiedostosta (SHA-256 c4aad710...). Kynnykset ennakkorekisteröity versiossa fe372e26 (docs/design/evidence/l1c-codes/): 252 252:sta saraketta, 63 63:sta peittokoodia ja 10 223 10 223:sta Legendre-bittiä identtisiä; poiminnan --check läpäisee; negatiivinen verrokki epäonnistuu uudelleennimetyillä, käännetyillä ja siirretyillä koodeilla. MITÄ EI TARKISTETA: itse generaattorin parametreja (ne tulevat samoista taulukoista), painettujen sarakkeiden välisiä chippejä, TMBOC-alikantoaaltokuviota ja L1CO S2 -koodeja.
iq::signals::lunanet::afs_i_bits ja afs_q_primary_bits (signaalien nimet lunanet-afs-i ja lunanet-afs-q komennossa kshana iq): AFS-I-Gold-koodi (2047 lyhennettynä syklillä 2046:een, G2 viivästetty PRN-koodin mukaan) ja AFS-Q-Weil-ensisijaiskoodi (laskettu Legendre-jono, Weil-indeksi, ennen chippiä p lisätty laajennusjono), PRN 1–210.
Oraakkeli
LSIS-AFS V1.0:n painettuja taulukoita vasten (merkitty määrittelyssä TBC): LunaNet Interoperability Specification V5, Applicable Document 1 Volume A: LunaNet Signal-In-Space Recommended Standard, Augmented Forward Signal (LSIS-AFS) V1.0, 29. tammikuuta 2025 (NASA; PDF:n SHA-256 986e0795...), tarkistussarakkeet, jotka se painaa generaattorin parametrien viereen: Taulukot C-1–C-5 ja D-2–D-6 jokaisen AFS-I- ja AFS-Q-koodin ensimmäiset ja viimeiset 24 chippiä, Taulukko D-1 pituuden 10223 Legendre-jono; poimittu skriptillä scripts/extract_lunanet_afs_tables.py (xval/lunanet-afs/oracle/). Kynnykset ennakkorekisteröity versiossa b3ba5d5 (xval/lunanet-afs/PREREGISTRATION.md) ennen generaattorin olemassaoloa: B1 420 420:sta, B2 identtinen, B3 420 420:sta. Asiakirja merkitsee koodi taulukkonsa {LSIS-TBC} ja toteaa niiden olevan vain testaukseen ja integrointiin, joten tämä validoi rakenteen kyseisen painoksen taulukoita vasten, ei myöhemmän. Ennakkorekisteröity väite painetusta G2:n alkutilasta (B1b) oli esitetty väärään suuntaan ja on NOT MET (0 210:stä), kiinnitetty; korjattu suhde (2047 miinus viive) pätee 210 210:stä ja on kirjattu jälkikäteen tehdyksi. MITÄ EI TARKISTETA: itse generaattorin parametreja (samat taulukot), painettujen sarakkeiden välisiä chippejä, kolmannen tason koodia, viestikerrosta ja LDPC-koodausta.
MallinnettuLunaNet AFS:n kolmannen tason koodit ja viestikerros (SB1 BCH, CRC-24Q, lomittaja) LSIS-AFS V1.0:aa vasteniq::lunanet_afs; iq::signals::lunanet (afs_q_tertiary_bits,afs_q_overlay_bits,afs_q_tiered); surface (lunanet_afs_check_spec,lunanet_afs_check_symbols,lunanet_afs_generate)
Ominaisuus
iq::signals::lunanet::afs_q_tertiary_bits, afs_q_tiered; iq::lunanet_afs: synkronointikuvio, SB1 BCH(51 8) -enkooderi ja 256 hypoteesin dekooderi, CRC-24Q, 60 x 98 -lohkolomittaja, symbolivirran tarkistin (kshana lunanet-afs-check) ja testivirran generaattori paikkamerkkialikehyksin. Alikehysten 2–4 nopeuden 1/2 LDPC-koodausta ei ole toteutettu (sen matriisit ovat erillisessä liitteessä).
Oraakkeli
LSIS-AFS V1.0 (kuten yllä): pituuden 1499 Legendre-jono (Taulukko E-1, identtinen) ja kolmannen tason ensimmäiset ja viimeiset 24 chippiä (Taulukot E-2–E-6: 419 420:stä saraketta identtisiä; asiakirja painaa samat viimeiset 24 chippiä, A14850, koodeille PRN 147 ja PRN 151, ja generaattori toistaa PRN 151:n arvon, joten PRN 147:n merkintä on todennäköisimmin painovirhe; kynnys 420 420:stä on NOT MET ja ohi meno on kiinnitetty); SB1-koodin kuvan 8 työstetty esimerkki (yksi esimerkki: 0x045 koodautuu muotoon 0x229F61DBB84A0); CRC-24Q luettelon tarkistusarvoa 0xCDE703 vasten ASCII-merkkijonolle 123456789; asiakirjan oma kehysaritmetiikka. Kynnykset ennakkorekisteröity versiossa b3ba5d5. Yksi kirjattu ohi meno ja yksi työstetty esimerkki viestikerrokselle, joten rivi pysyy tasolla MODELLED. MITÄ EI TARKISTETA: LDPC ja CRC-sanat alikehyksissä 2–4, viestin sisältö ja mikään tallennettu virta
MallinnettuStandardipaketit: skenaariot pisteytettynä ennen ajoa asetettuja kynnyksiä vastenstandards_pack; compliance (standards-pack facts in compliance-report)
Ominaisuus
standards_pack (kshana standards-pack): DHS Resilient PNT -kehyksen testiprofiilit tasoille 1–4, IMO MSC.1/Circ.1575:n tarkkuustasot ja eheyden arviointi sekä ICAO Doc 9849 Appendix F:n monitoroi, arvioi ja lievennä -paketit: jokainen testi ajaa mukana toimitetun skenaariotyypin ja vertaa tuloskenttiä paketissa asetettuihin kynnyksiin, ja testit, jotka tarvitsevat vastaanottimen lokin, on merkitty NEEDS INPUT eikä niitä pisteytetä.
Oraakkeli
Ei ulkoista skenaariotuloksille: jokainen paketin testi ajaa MODELLED-skenaariotyypin. Kynnykset ovat paketin laatijan ilmoittama profiili (DHS-kehys ei ilmoita arvoja; IMO:n tarkkuusrajat ovat MSC.1/Circ.1575:n Taulukko C-1, luettu kokonaan; ICAO-paketti seuraa ICAO:n omaa RFI Mitigation Plan -esitystä, koska Doc 9849 on maksullinen julkaisu eikä sitä luettu), kirjattu ennen yhtäkään pisteytettyä ajoa xval-tyylisiin PREREGISTRATION.md-tiedostoihin hakemistossa standards/. MET-kynnys kertoo, että mallinnettu skenaario täytti ilmoitetun kynnyksen, ei mitään tuotteesta
Testit
tests/standards_packs.rs (pinned_outcomes: jokaisen testin tila, mukaan lukien ohitukset L4-T1 ja neljä IMO:n tarkkuustestiä); standards_pack::tests
evidence::roundtrip (kshana evidence round-trip) ja komennon kshana bench-export vastaanottimen lokin vienti kshana.test-conditions/1: allekirjoitettu paketti, joka kirjaa skenaarion tiivisteen, ilmoitettujen olosuhteiden tiivisteen, lokin tiivisteen ja pisteytyksen ilmoitettuja tapahtumia vasten, ja joka hylkää olosuhteet, jotka ovat ristiriidassa pisteytyksen tapahtumien kanssa, sekä lokin, jonka tiiviste ei ole ilmoitettu. Signaalia ei kirjoiteta, toisteta eikä ajoiteta.
Oraakkeli
Ei ulkoista: paketti linkittää tiivisteet ja MODELLED-vastaanotinlokin pisteytyksen, tarkistettuna synteettisellä datalla (mukana toimitetun skenaarion viety NMEA käsiteltynä vastaanottimen lokina). Mitään laboratorioajoa ei väitetä
MallinnettuIQ-seurantamoottori GNSS-SDR 0.0.19:ää vasten riippumattomilla tallenteillaiq::track (Channel,LoopCore,design); iq::cli::track
Ominaisuus
Koko IQ-kerroksen seurantamoottori (iq::track komennon kshana iq track kautta: haun luovutus, korrelaattorit, NCO:t, toisen asteen 15 Hz:n Costas-PLL, ensimmäisen asteen 2 Hz:n kantoaaltoavusteinen EML-verhokäyrä-DLL, lukitusilmaisin ja C/N0-estimaattorit) GPS L1 C/A:lla tasoilla 30–45 dB-Hz.
Oraakkeli
GNSS-SDR 0.0.19 (GPL-3.0-or-later, Ubuntu 24,04 -paketti, ajettuna erillisenä ohjelmana; vain johdetut luvut kirjattu) seuraa samoja numpy-tallenteita (riippumattomia moottorista), molempia mitattuna analyyttistä totuutta vasten. Kynnykset ennakkorekisteröity versiossa 48edd4a5, muutettu ennen yhtäkään testitallennetta versiossa 1e4288c4 (10 Hz:n FLL vain sisäänvedon aikana molemmissa vastaanottimissa, sen jälkeen kun rekisteröity kalibrointi epäonnistui GNSS-SDR:n väärän luovutuksen vuoksi, löydös F3). MET tasoilla 30, 35, 40 ja 45 dB-Hz: kantoaallon värinä 4,3 %:n, koodin värinä 4,6 %:n sisällä sekä Dopplerin keskiarvo ja hajonta GNSS-SDR:n arvojen mukaiset. NOT MET: moottorin NWPR-C/N0 lukee 2,3–7,1 dB GNSS-SDR:n SNV:n alapuolella (löydös F4, tunnettu NWPR-raja; sen M2M4 on 0,06 dB:n sisällä totuudesta); vaiheen lukitusilmaisimet eroavat määritelmänsä mukaan (F5); tasolla 30 dB-Hz GNSS-SDR luisti kahdesti ja moottori ei (F6). GNSS-SDR:n oma luovutus lukittui väärälle taajuudelle 3 kalibrointiajossa 30:stä. MITÄ EI TARKISTETA: muut signaalit, databittien poisto, uudelleenhaku, kenttätallenteet. Rivi pysyy tasolla MODELLED.
Testit
tests/iq_track_gnss_sdr_oracle.rs (calibration_passes_for_both_receivers, registered_bars_give_the_recorded_verdict, recorded_numbers_are_pinned), on numbers derived by…
Häirintätyypin valinnainen [crpa]-osio: kanavakohtainen keila kohti kutakin satelliittia (nollan ohjaus häirittäjä nollana, tai MVDR kaavalla sigma^2 I + P_j a_j a_j^H), joka skaalaa kunkin linkin kohinaa tekijällä ||w||^2 ja häirittäjää tekijällä |w^H a_j|^2 ennen olemassa olevaa häirinnänestoyhtälöä C/N0:lle.
Oraakkeli
Riippumaton numpy-uudelleenlasku (xval/crpa-jamming/oracle.py, ei yhteistä koodia: numpy-ohjausvektorit, numpy.linalg.solve ja inv) jamming-demo-geometrian jokaiselle linkille 4-elementtisellä neliöryhmällä, molemmilla painotuksilla. Kynnykset ennakkorekisteröity versiossa 08d83b4d. MET: A1 (kaikki 150 skenaariotulosta tavu tavulta identtisiä ilman osiota, korjauksen jälkeen: ensimmäinen rakennus lisäsi crpa-yksiköt jokaisen häirinta-ajon yksikkötaulukkoon), A2 (yksi elementti vastaa ryhmän puuttumista 1e-12 dB:n tarkkuudella), A3 ryhmän kohinavahvistukselle ja tehokkaalle C/N0:lle (912 linkkipainotusta 1e-9 dB:n sisällä, pahin 2.1e-14 dB) sekä nollan ohjauksen häirittäjänollalle (alle -200 dB molemmilla puolilla), A4 (MVDR 0,1 dB:n sisällä nollan ohjauksesta JNR-arvolla 80 dB). NOT MET: A3 MVDR:n häirittäjävahvistukselle, 194 linkkiä 456:stä yli 1e-9 dB:n 0,36-siirrettävällä matematiikalla (202 isäntämatematiikalla; docs/revisions/STUDIO15-batch4-rebaseline.md) (pahin 1.7e-6 dB) residuaaleilla -100–-188 dB, missä float64:n kumoutuminen rajoittaa molempia toteutuksia (numpyn inv ja solve ovat keskenään eri mieltä 169 linkillä, pahin 7.9e-7 dB); näiden syöttämä tehokas C/N0 ei kärsi. MITÄ EI TARKISTETA: keskinäinen kytkentä, elementtien epäsovitus, laajakaistakäsittely, useat häirittäjät, mikään antennilaitteisto. Samojen yhtälöiden uudelleenlasku, ei ulkoinen oraakkeli; rivi pysyy tasolla MODELLED.
Testit
tests/jamming_crpa.rs (a1_crpa_units_only_with_the_section, a2_one_element_is_no_array, a3_verdict_is_the_recorded_one, a4_mvdr_tends_to_the_null_at_high_jnr), against xval/crpa-jamming/expected.json from…
Jamming-lajin valinnainen osio [terrain]: suurympyrän maastoprofiili jammerin ja vastaanottimen välillä SRTM .hgt -ruudulla k-kertoimen Maan pullistuman kanssa, hallitseva veitsenterä (suurin Fresnel–Kirchhoff nu) ja ITU-R P.526-15:n kohdan 4,1 yhden veitsenterän häviö, vähennettynä jammerin vastaanotetusta tehosta.
Oraakkeli
Riippumaton numpy-uudelleenlaskenta (xval/jamming-terrain/oracle.py, ei jaettua koodia: oma .hgt-luku, bilineaarinen interpolointi, WGS 84 -edestakaismuunnos, profiili, pullistuma, nu ja J(nu)) kymmenelle jammerin sijoitukselle vastaanottimen ympärillä Badwater Basinissa tallennetulla todellisella SRTM-ruudulla tests/fixtures/terrain/N36W117_sub6.hgt. Kynnykset ja sijoitukset ennakkorekisteröity commitissa 92cd2bfd. Kaikki MET: additiivisuus (kaikki 150 skenaariotulosta tavu tavulta identtisiä ilman osiota); jokaisen sijoituksen profiilipisteet ja este yhtäpitäviä ja nu sekä häviö 1.6e-10 sisällä (kynnys 1e-9); häviö ei koskaan kasva, kun jammer nousee arvosta 2 arvoon 4902 m; häviö alentaa jokaista J/S:ää täsmälleen itsensä verran eikä mitään muuta; J(nu) 1e-12 dB:n sisällä oraakkelin arvosta. Havainnot: sijoitukset Black- ja Funeral-vuorten yli menettävät 44 – 48 dB; kaksi laaksonpohjan sijoitusta menettää 8 ja 15 dB pelkästä Maan pullistumasta 2 m:n antennikorkeuksilla, yhden veitsenterän mallin hipaisutapaus. MITÄ EI TARKISTETA: mitattua etenemistä, usean terän diffraktiota, maaheijastusta, peitteisyyttä (clutter) eikä DEM:n omaa virhettä. Saman mallin uudelleenlaskenta, ei ulkoinen oraakkeli; rivi pysyy MODELLED.
Jamming-lajin valinnainen osio [acquisition] (satelliitti hankitaan hankintakynnyksellä tai sen yläpuolella uudelleenhankintaviiveen jälkeen ja pidetään, kun taso on seurantakynnyksellä tai sen yläpuolella) ja osio [front_end] (AGC-lukema 10 log10(1 + J/N) ja ADC:n Gaussin syötteen kvantisoijahäviö, vähennettynä jokaisesta linkistä, merkittynä ei-Gaussisille jammereille pätemättömäksi).
Oraakkeli
Riippumaton Python-uudelleenlaskenta jokaiselle hankintalipulle (xval/jamming-acq-agc/hysteresis.py) moottorin epookkikohtaisesta tehokkaasta C/N0:sta, riippumaton numpy-Monte Carlo kvantisoijan häviölle (xval/jamming-acq-agc/quantiser_mc.py, oma optimiaskelhaku, 2^22 näytettä) sekä IQ-kerroksen AGC-silmukka. Kynnykset ennakkorekisteröity commitissa 70c72fcc, täydentävällä ajojoukolla 37793290. MET: additiivisuus (kaikki 150 skenaariotulosta tavu tavulta identtisiä ilman osioita); jokainen lippu yhtäpitävä täydentävissä ajoissa (1824 linkkiä, joista 732 osoittaa hystereesiä); monotoninen kynnyksen suhteen; kvantisoijan häviö 0,0007 dB:n sisällä Monte Carlosta 1 – 4 bitillä (kynnys 0,02 dB); AGC-lukema 0,012 dB:n sisällä AGC-silmukasta (kynnys 0,05 dB). NOT MET: rekisteröidyt hystereesiajot (jamming-demo 10 – 30 dBW) olivat tietoa tuottamattomia, kun jokainen linkki menetettiin, ja niiden H2 ja H4 täyttyvät vain triviaalisti. Havainto: CW-jammerilla 1-bittinen ADC menettää noin 5 dB enemmän kuin moottorin soveltama Gaussin luku, ja se merkitään pätemättömäksi. MITÄ EI TARKISTETA: hankintahaku itse, AGC:n dynamiikka ajassa, mikään vastaanotinlaitteisto. Saman mallin uudelleenlaskentoja, ei ulkoinen oraakkeli; rivi pysyy MODELLED.
MallinnettuRajattu FLL:n sisäänveto oletussuunnittelun FLL:stä PLL:ään siirtymän lattian alapuolella (valinnainen)iq::track (LoopConfig,FllGate,design); iq::track::channel (the FLL gate)
Ominaisuus
iq::trackin valinnainen carrier.fll_pull_in_max_s (iq::track::LoopConfig-tyypin kenttä fll_pull_in_max_s): asetuksella fll_assist = pull-in FLL luovuttaa PLL:lle kiinteän sisäänvetoajan jälkeen PLI:stä riippumatta, ja vastaava paluuviipymä kestää, kunnes PLI ensimmäisen kerran saavuttaa arvon fll_off_pli.
Oraakkeli
Sisäinen johdonmukaisuus syötettyä totuutta vasten: synteettinen dataton GPS L1 C/A -lähde (PRN 13, 1500 Hz, 4,1 MHz, 8 s, kymmenen kohinasiemenlukua), jonka kantoaallon vaihe tunnetaan, kynnyksillä, jotka on ennakkorekisteröity commitissa 58789af0 (docs/design/evidence/fll-handover-floor/). MET: kontrolli (rajaamaton oletus ei koskaan luovuta 9 siemenluvusta 10 arvolla 33 dB-Hz); additiivisuus (oletustiiviste ja nykyiset seurantatestit muuttumattomia); 100 Hz:n vääristä lähtevän luovutuksen sisäänveto arvolla 45 dB-Hz. NOT MET: 1,0 s:n rajalla luovutus ja pito jokaisessa ajossa (16 20:stä arvolla 33 dB-Hz, 8 20:stä arvolla 31 dB-Hz; loput kiertävät pakotettujen luovutusten ja FLL:n paluun välillä) ja vaihejitter 25 %:n sisällä pelkästä PLL:stä (10,8 vastaan 6,1 astetta arvolla 33 dB-Hz). MITÄ EI TARKISTETA: databitit, muut signaalit ja näytteenottotaajuudet, kenttätallenteet. Oletus on muuttumaton; rivi pysyy MODELLED.
Lukee RTKLIB-ratkaisutiedoston (kalenteri- tai GPS-viikko/TOW-aika, leveys-/pituusaste- tai ECEF-paikka, käytetyt satelliitit) receiver-trust-aikajanaksi (receiver_trust::machines::rtklib).
Oraakkeli
Ei mitään ulkoista: yhtään RTKLIB:n tuottamaa tiedostoa ei luettu, ja sarakerakenne on RTKLIB-käsikirjasta. Tarkistettu vain itse kirjoitetuilla tiedostoilla; ECEF-muunnos käyttää uudelleen funktiota frames::ecef_to_geodetic, jolla on omat rivinsä
Lukee BESTPOSin (paikka), RANGEn (C/No signaalia kohti) ja RXSTATUSin (vastaanottimen häirintälippu epookin omana ilmoituksena) ASCII- ja binäärimuotoisista OEM7-lokeista, CRC-tarkistettuna, vain luku (receiver_trust::machines::novatel).
Oraakkeli
Ei mitään ulkoista hyväksymiskynnyksenä. Kenttärakenteet ja CRC noudattavat julkista OEM7-dokumentaatiota (docs.novatel.com); CRC-rutiini tarkistettiin kerran dokumentaation omalle BESTPOSA-esimerkilleen ilmoittamaa CRC:tä vasten (siteerattu, ei lainattu). Vertailuaineistot on kirjoitettu itse; yhtään lokia todellisesta vastaanottimesta ei luettu
MallinnettuRTCM 3 MSM4- ja MSM7-kantoaalto–kohinasuhdelukija receiver-trustillereceiver_trust::machines::rtcm3 (read_rtcm3,crc24q); receiver_trust::LogFormat::Rtcm3
Ominaisuus
Lukee RTCM 3 MSM4- ja MSM7-viestien jokaisen signaalisolun C/N0:n (GPS, GLONASS, Galileo, SBAS, QZSS, BeiDou, NavIC) kehysvirrasta, CRC-24Q-tarkistettuna (receiver_trust::machines::rtcm3). Rakenteet BSD-lisensoiduista pyrtcm-taulukoista, ei RTCM-standardin tekstistä.
Oraakkeli
ReferenceImpl kertaluonteisessa tarkistuksessa, ei testi testijoukossa: pyrtcm 1.2.0:n dekooderi lukee samat itse kirjoitetut kehykset samaan C/N0:hon ja epookkiaikaan. Se jakaa taulukoidensa lähteen tämän lukijan kanssa, joten se tarkistaa bittikäsittelyn, ei rakennetta. Yhtään tallennetta todellisesta vastaanottimesta tai tukiasemasta ei luettu
Testit
receiver_trust::machines::rtcm3::tests (CRC-24Q:n katalogin tarkistusarvo, MSM4/MSM7 C/N0 ja epookin yhdistäminen, GLONASS-ajan ja SBAS-tunnisteen kartoitus, virheellinen CRC ja muut viestit)
Lukee GNSS-SDR Monitor (Gnss_Synchro) ja PVT-monitor -viestit, välitettyinä JSON-riveiksi proto-kenttien nimillä, kanavakohtaiseksi C/N0:ksi, paikannukseksi, käytetyiksi satelliiteiksi, HDOP:ksi ja taivaaksi (receiver_trust::machines::gnss_sdr; integrations/gnss-sdr/relay.py).
Oraakkeli
Ei mitään ulkoista: kenttien nimet ovat GNSS-SDR:n dokumentaatiosta; lukijaa eikä relay.py:tä ajettu elävää GNSS-SDR:ää tai todellista tallennetta vasten
Lukee IMU CSV:n (dokumentoidut sarakkeet tai EuRoC-rakenne); integroi kääntymisnopeuden suunnaksi, jonka heading-course-valvonta lukee ([log.imu]); ja sovittaa hybridi- ja fuusioskenaarioiden kiihtyvyysanturin ja gyron kohinaparametrit paikallaan olevasta lokista limittyvällä Allan-poikkeamalla (imu-fit).
Oraakkeli
Ei mitään ulkoista: sovite tarkistetaan synteettisillä valkoisen kohinan lokeilla, joiden kertoimet tunnetaan, suunta vakiokääntymisnopeuden lokeilla. Yhtään todellista IMU-lokia ei sovitettu, eikä q_aa:ta soviteta
Testit
receiver_trust::machines::imu::tests; receiver_trust::machines::imu_fit::tests (known white-noise coefficients recovered within 10 %, refusals, TOML parses as AccelCfg); tests/receiver_trust_machines.rs (heading…
MallinnettuHome Assistant MQTT -löytö ja tilaviejä luottamustelemetrialletelemetry::mqtt (discovery,state_json,connect_packet,publish_packet,MqttSink); surface::TelemetryFormat::Mqtt
Ominaisuus
JSON-tila-asiakirja ja Home Assistant MQTT -löytöviestit luottamusvirralle, tulostettuna tekstinä jokaisella pinnalla ja julkaistuna MQTT 3.1.1 QoS 0 -yhteydellä komentoriviltä (telemetry::mqtt; trust-telemetry --mqtt-tcp, --print-mqtt, format mqtt).
Oraakkeli
Ei mitään ulkoista: paketit luki testiä varten kirjoitettu loopback-kuuntelija, ei todellinen välittäjä, eikä Home Assistantia ajettu
Testit
telemetry::mqtt::tests (packet bytes, loopback broker, dead broker counted); tests/receiver_trust_machines.rs::trust_telemetry_mqtt_text_has_discovery_then_state
MallinnettuROS 2 receiver-trust -paketti ja gnss_lib_py-siltaintegrations/ros2/kshana_trust (bridge.py,trust_node.py); integrations/gnss_lib_py/kshana_gnss_lib_py.py
Ominaisuus
ROS-vapaa silta, joka kirjoittaa paikannus- ja satelliittiviestit NMEA:ksi ja pisteyttää ne Python-sidoksen kautta (integrations/ros2/kshana_trust), sekä gnss_lib_py NavData–receiver-trust-silta rtklib-pos-formaatin kautta (integrations/gnss_lib_py).
Oraakkeli
Ei mitään ulkoista: ROS-solmua ei ajettu elävällä ROS 2 -graafilla, eikä ublox_ubx_msgs-kenttien nimiä tarkistettu käynnissä olevaa ajuria vasten. gnss_lib_py (MIT) ajettiin siltatestiä varten
Testit
tests/receiver_trust_machines.rs (rtklib_pos_runs_as_a_receiver_log: muoto, jonka gnss_lib_py-silta kirjoittaa, ajettuna receiver-trustin läpi); siltojen Python-testit ovat…
Mikään ei vastaa suodatinta.
Tuotettu moottorin varmennusmatriisista ja lukittu testillä. Vieritä luetteloa tai avaa rivi nähdäksesi sen ominaisuuden, oraakkelin ja testit. Koko taulukko, kaikki sarakkeet kerralla, on dokumentaatiossa: Ominaisuusviite.
ProTarvitsetko tämän kirjanpidon tarkastuskelpoisena, toistettavana todistepakettina arviointilautakunnalle? Kshana Pro pakkaa sen.
04Toistettavissa oletuksena
Aja se uudelleen. Saat samat luvut.
Ilmainen ydin Tulos on toistettavissa bitilleen skenaariosta, siemenluvusta ja moottorin versiosta. Mikään tässä ei vaadi lisenssiä, tiliä tai meitä.
Leima, jonka jokainen result.json kantaaTallennettu ajo
Tämä on tallennetusta kellon holdover-ajosta. Avaa se Kshana Studiossa tai aja se itse uudelleen:
Aja sama skenaario.Se kirjoittaa tiedostot result.json, chart.svg, report.html ja table.csv skenaarion viereen.
Vertaa leimaa.Skenaarion tiiviste on SHA-256 (256-bittinen Secure Hash Algorithm) -hajautus kanonisesta skenaariosta: siemenluku, kynnykset, mallin parametrit. Muuta mitä tahansa syötettä, ja tiiviste muuttuu. Jokaisen kaavion alatunniste kantaa sen 12 ensimmäistä heksamerkkiä.
Anna moottorin tarkistaa itsensä.Jokaisessa koontiversiossa testit vahvistavat, että julkaistut kuvat toistuvat edelleen (tests/published_figures_still_reproduce.rs) ja että jokainen kirjanpitorivi nimeää testin ja viittaa olemassa olevaan todisteeseen (tests/verification_rows_name_a_test_that_exists.rs, tests/verification_rows_cite_evidence_that_exists.rs).
05Standardiruudukko
Puhuu muotoja, joita jo käytät.
18 standardia ja muotoa, jotka moottori toteuttaa. Vihreä merkki tarkoittaa, että se on tarkistettu todellista dataa, julkaistua esimerkkiä tai riippumatonta vertailutoteutusta vastaan.
TLE / SGP4AIAA 2006-6753TarkistettuTLE kaksirivinen elementtijoukko (two-line element set) · SGP4 Simplified General Perturbations 4, kiertoratamalli · AIAA American Institute of Aeronautics and Astronautics
RINEX 3oikea IGS-data → mitattu koordinaattiTarkistettuRINEX Receiver Independent Exchange Format · IGS International GNSS Service
SP3-c / dsovitus oikeisiin ESA/ESOC-tarkkoihin ratoihinTarkistettuSP3 Standard Product 3, tarkan radan muoto · ESA Euroopan avaruusjärjestö (European Space Agency) · ESOC Euroopan avaruusoperaatiokeskus (European Space Operations Centre)
CCSDS OEM / OMMjäsentää CCSDS 502.0-B-3 Blue Book -OEM-esimerkinTarkistettuCCSDS avaruusdatajärjestelmien neuvoa-antava komitea (Consultative Committee for Space Data Systems) · OEM kiertoradan efemeridiviesti (orbit ephemeris message) · OMM kiertoradan keskielementtiviesti (orbit mean-elements message)
IS-GPS-200lähetetty efemeridi → oikean datan PVTTarkistettuIS-GPS-200 GPS-rajapintamäärittely L1- ja L2-signaaleille · GPS Global Positioning System · PVT sijainti, nopeus ja aika (position, velocity and time)
IEEE 1139ADEV/MDEV/TDEV/HDEV NIST SP 1065 -vertailupoikkeamia vastenTarkistettuIEEE Institute of Electrical and Electronics Engineers · ADEV Allanin poikkeama · MDEV muunnettu Allanin poikkeama · TDEV aikapoikkeama · HDEV Hadamardin poikkeama · NIST National Institute of Standards and Technology
SBAS / DO-229EDO-229E HPL/VPL RTKLIB SBAS-PL -haaraa vasten oikealla EGNOS-datalla · L1/L5 ionosfääristä vapaaTarkistettuSBAS satelliittipohjainen täydennysjärjestelmä (satellite-based augmentation system) · DO-229E RTCA:n vähimmäistoimintavaatimukset satelliittipohjaisen täydennysjärjestelmän vastaanottimille, versio E · HPL vaakasuuntainen suojaustaso · VPL pystysuuntainen suojaustaso · RTKLIB avoimen lähdekoodin GNSS-paikannuskirjasto · EGNOS European Geostationary Navigation Overlay Service
IONEX / KlobucharKlobucharin L1-viive RTKLIB:n ionmodelia vasten · IONEX TEC -karttalukija sallivaa, ei vielä ulkoista oraakkeliaTarkistettuIONEX Ionosphere Map Exchange -muoto · RTKLIB avoimen lähdekoodin GNSS-paikannuskirjasto · TEC elektronien kokonaismäärä (total electron content)
IGRF-14virallisia BGS IGRF-14 -arvoja vastenTarkistettuIGRF-14 Kansainvälinen geomagneettinen vertailukenttä, 14. sukupolvi · BGS British Geological Survey
CCSDS 133,0ensisijainen otsake CCSDS 133.0-B-2:ta ja spacepackets-py-vektoreita vastenTarkistettuCCSDS avaruusdatajärjestelmien neuvoa-antava komitea (Consultative Committee for Space Data Systems)
CCSDS TDMjäsentää CCSDS 503.0-B-2 Blue Book -TDM-esimerkinTarkistettuCCSDS avaruusdatajärjestelmien neuvoa-antava komitea (Consultative Committee for Space Data Systems) · TDM seurantadataviesti (tracking data message)
CCSDS 401 / DSNlinkkiyhtälö julkaistua DESCANSO/JPL Galileo DCT:tä vastenTarkistettuCCSDS avaruusdatajärjestelmien neuvoa-antava komitea (Consultative Committee for Space Data Systems) · DSN Deep Space Network · DESCANSO Deep Space Communications and Navigation Systems Center of Excellence · JPL Jet Propulsion Laboratory (NASAn suihkumoottoritutkimuslaitos) · DCT suunnittelun ohjaustaulukko, linkkibudjetin laskentataulukko (design control table)
EU:n NIS2, artikla 21riskienhallintatoimenpiteet, kartoitettu kohdenumeron mukaanToteutettu
EN 16803avaruuspohjainen PNT liikenteessä, kartoitettu kohdenumeron mukaanToteutettuPNT paikannus, navigointi ja ajanmääritys
Yhdysvaltain DHS:n kestävän PNT:n kehyskestävän PNT:n Conformance Framework, kartoitettu kohdenumeron mukaanToteutettuDHS Yhdysvaltain sisäisen turvallisuuden ministeriö (Department of Homeland Security) · PNT paikannus, navigointi ja ajanmääritys
Samat todisteet, paketoituna tai puolestasi tehtynä.
Moottori ja kaikki sen yläpuolella oleva pysyvät ilmaisina. Kaksi maksullista reittiä rakentuu niiden päälle sopimuksella.
Pro
Kshana Pro: tehtäväasiakirja ja todistepaketti
Kshana Pro paketoi toistettavasti ne todisteet, joita arviointi tai hankintalautakunta pyytää. Sen perustana ovat tämä kirjanpito, jossa jokainen ominaisuus nimeää oraakkelinsa ja testinsä, sekä leima, jonka jokainen tulos kantaa. Yhdellä komennolla tehtäväasiakirja tarkistaa jokaisen vaatimuksen todellisia ajoja vasten ja kirjoittaa varmennusmatriisin avoimine kohtineen sekä PDF:n (Portable Document Format).
Räätälöity tutkimus vastaa omaan kysymykseesi samoilla merkinnöillä: jokainen luku on validoitu tai mallinnettu, eikä se ole sertifiointi. Vientirajoitettu työ hoidetaan turvallisuusselvityksen ja NDA:n (salassapitosopimus) alaisena.
kshana-bench kiinnittää tehtävät, jaot ja mittarit GNSS-häiriön havaitsemiselle ja ajoituksen holdoverille, ja lähtötasoille asetetut kynnykset kirjoitettiin muistiin ennen ensimmäistä pisteytettyä ajoa. Pistemäärä kuvaa lokia tai korpusta, ei koskaan tuotetta.
6 artikkelia arXivissa, avoimessa esipainosarkistossa, rakennettu avoimen moottorin päälle. Jokainen avautuu moottorilla uudelleen ajettuun kuvaan, sen havaintoihin, komentoon ja sen DOI-tunnukseen (Digital Object Identifier).
Kuunavigointi · arXiv:2610,23871
Kuunläheinen navigointi on havaittavuusongelma: kaaren pituuden kynnykset, Gramin matriisin ehtoisuus ja Doppler-vipu
Kuunläheisessä avaruudessa tarkkuuden heikkenemiskerroin ei päde: pelkkään etäisyyteen perustuvat linkit jättävät nopeuden havaitsemattomaksi missä tahansa yksittäisessä hetkessä, joten vaatimukset kuuluvat kaaren pituuden, ehtoisuuden ja mittaustyyppien budjetteihin.
Moottorin ajossa pelkkään etäisyyteen perustuvalla geometrialla on yhdellä hetkellä rangi 2 luvusta 4, joten tarkkuuden heikkenemiskerrointa ei ole määritelty; koko tila tulee havaittavaksi kaaren pituuden 2,09 h jälkeen.
Etäisyysnopeuden lisääminen nostaa hetkellisen rangin luvusta 2 lukuun 4: Doppler-kykyinen linkki saa aikaan hetkellisen ratkaisun siellä, missä pelkkä etäisyyslinkki ei voi.
Kynnyksen jälkeen ehtoisuus paranee kaaren pituuden kasvaessa, joten vaatimukset luetaan parhaiten kaaren pituuden, ehtoisuuden ja mittaustyyppien budjetteina.
Miten Kshana toistaa sen
cislunar-observability-laji differentiaalikorjaa neljä tasomaista kaukaista vastakulkuista rataa, kokoaa etäisyyden ja etäisyysnopeuden Jakobit kolmen kappaleen tilasiirtymämatriisin kautta ja raportoi havaittavan rangin kasvavan seurantakaaren yli, havaittavuus-Gramin matriisin ehtoluvun sekä neliöjuuri-informaatiosuodattimen, joka laskee saman suureen uudelleen toista reittiä.
Kuva. Mukana toimitettu skenaario: neljä differentiaalikorjattua tasomaista kaukaista vastakulkuista rataa, joita seurataan satelliittien välisellä etäisyysmittauksella kaaren yli, jonka pituus on 6 h ja näyteväli 0,26 h.
Toista se
Ajaa skenaariolajin cislunar-observability (scenarios/cislunar-observability.toml) asennetulla moottorilla.
@misc{baweja2026cislunar,
title = "{Cislunar navigation is an observability problem: arc-length thresholds, Gramian conditioning, and the Doppler lever}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2610.23871},
archivePrefix = {arXiv},
primaryClass = {eess.SP},
doi = {10.48550/arXiv.2610.23871},
url = {https://arxiv.org/abs/2610.23871}
}
Kuunavigointi · arXiv:2607,06212
The Cost of Lunar South-Polar Geometry, and Surface Beacons as the Efficient Fix: A Dilution-of-Precision Analysis
Suunnitellut radat kasautuvat yläpuolelle kuun etelänavan käyttäjälle; muutama etäisyysmittausbaakkuna läheisellä korkealla maalla korjaa geometrian edullisemmin kuin lisäsatelliitit.
Mukana toimitetussa ajossa yksi horisontin ylittävä baakkuna pienentää geometrisen tarkkuuden heikkenemiskertoimen arvosta 11,66 arvoon 4,998; 24 satelliitin tähdistö sen sijaan yltää arvoon 2,893.
Satelliitit, jotka eteläisen napa-alueen käyttäjä näkee, kasautuvat pieneksi alueeksi yläpuolelle, joten geometriaa rajoittaa niiden hajonta, ei niiden lukumäärä.
Muutama korkealla maastolla oleva baakkuna yltää geometriaan, jonka pelkkään kiertoratoihin perustuva suunnitelma saavuttaa vasta paljon suuremmalla satelliittiparvella.
Miten Kshana toistaa sen
lunar-beacon-laji rakentaa kiertoratatähdistön etäisyysmittausgeometrian sekä mitatut pintabaakkunat, jotka ylittävät ilmattoman horisontin, riippumatonta kirjastoa vastaan tarkistetulla tarkkuuden heikkenemiskertoimen ytimellä, ja raportoi kunkin kokoonpanon tarkkuuden heikkenemiskertoimen ja sen tarkkuuden metreinä.
Kuva. Yksi mukana toimitetun skenaarion epookki sen oletusgeometrialla: pelkät satelliitit, satelliitit sekä horisontin ylittävät baakkunat ja sen sijaan 24 satelliitin tähdistö.
Toista se
Ajaa skenaariolajin lunar-beacon (scenarios/lunar-beacon.toml) asennetulla moottorilla.
@misc{baweja2026cost,
title = "{The Cost of Lunar South-Polar Geometry, and Surface Beacons as the Efficient Fix: A Dilution-of-Precision Analysis}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2607.06212},
archivePrefix = {arXiv},
primaryClass = {astro-ph.EP},
doi = {10.48550/arXiv.2607.06212},
url = {https://arxiv.org/abs/2607.06212}
}
Kuunavigointi · arXiv:2607,02566
Earth-baseline VLBI restores the observability of a lunar surface station in joint orbit-and-clock determination
Kuuverkon etäisyysmittaus kiinnittää vain suhteellisen geometrian; Maan kantaviivan pitkän kantaviivan interferometriaviive sitoo pinta-aseman Maan koordinaatistoon jopa harvalla satelliittimäärällä. VLBI pitkän kantaviivan interferometria
Tallennettu macOS:llä sellaisena kuin se julkaistiin. Tuore Linux x86-64 -ajo antaa 2184 m / 3,537 m (ratkaisijan iteraatin isäntäriippuvuus, issue #36 rivi 6).
Keskeiset havainnot
Kuuverkon sisäinen etäisyysmittaus jättää klusterin vapaaksi siirtymään ja kiertymään näkymättömästi; kellot pysyvät havaittavina, joten vika on puhtaasti paikkavika.
Moottorin ajossa (3 satelliittia) Fisher-informaatiolla ilman interferometrialinkkejä on rangi 15 luvusta 16; niiden kanssa sillä on täysi rangi ja Cramér–Rao-raja 20,1 m.
Rikkaalla tähdistöllä interferometriasidonta vain terävöittää rajaa; harvalla se palauttaa aseman absoluuttisen paikan.
Miten Kshana toistaa sen
lunar-joint-od-clock-laji yhdistää Maan kantaviivan interferometriaviiveet, kuun paikalliset etäisyydet ja satelliittien väliset etäisyydet yhdessä eräpienimmän neliösumman sovituksessa, ajaa sen interferometrialinkkien kanssa ja ilman niitä samalla siemenluvulla ja raportoi Fisher-informaation rangin, datumvian ja Cramér–Rao-rajan.
Kuva. Mukana toimitettu simuloitu verkko: 3 kuusatelliittia, 6 Maa-asemaa, yksi pinta-asema, sama siemenluku ja sama totuus molemmille sovituksille.
Toista se
Ajaa skenaariolajin lunar-joint-od-clock (scenarios/lunar-joint-od-clock.toml) asennetulla moottorilla.
@misc{baweja2026earth,
title = "{Earth-baseline VLBI restores the observability of a lunar surface station in joint orbit-and-clock determination}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2607.02566},
archivePrefix = {arXiv},
primaryClass = {eess.SP},
doi = {10.48550/arXiv.2607.02566},
url = {https://arxiv.org/abs/2607.02566}
}
Ajoituksen eheys · arXiv:2606,24210
A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing
Tallennettu harhautus osoittaa, että ajoitusvastaanotin tarjoaa aikaa, joka on paljon enemmän pielessä kuin se ilmoittaa; ehdotonta rajaa ei ole, joten artikkeli rajaa havaitsemattoman virheen ehdollisesti. GNSS maailmanlaajuinen satelliittinavigointijärjestelmä
LukuMallinnettuMoottori v0.40.0 · examples/tpl_jammertest.rs · deterministinen, ei siemenlukuaKeskeiset havainnot
Julkinen tallennettu harhautus veti vastaanottimen tarjoamaa aikaa noin 1,01 ms, vaikka se ilmoitti enintään 51 ns.
Riittävän hidasta ramppia vastaan ei ole äärellistä ehdotonta rajaa, joten raja on ehdollinen sille, että riippumaton satelliittien välinen ristiintarkistus havaitsee hyökkäyksen.
Moottorin ajoituksen suojaustaso on 114 ns, kun havaitsemisviive on 1 s, ja 458 ns, kun havaitsemisviive on 60 s.
Miten Kshana toistaa sen
Ajoituksen suojaustason moduuli lisää monitorin havaitsemislattian oskillaattorin rannikkoon havaitsemisviiveen ajalta. Esimerkki kalibroi sen julkisesta JammerTest 2024 -tallenteesta palautetuilla skalaareilla; raakatallennetta ei toimiteta.
Kuva. Esimerkin tuloste: ehdollinen ajoituksen suojaustaso viidellä havaitsemisviiveellä sekä ne kaksi skalaaria, jotka se palautti julkisesta JammerTest 2024 -tallenteesta.
Toista se
Tuottaa tutkimusartefaktin uudelleen tiedostosta examples/tpl_jammertest.rs repositorion kloonissa.
Viittaa siihen
BibTeX · baweja2026conditional
@misc{baweja2026conditional,
title = "{A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2606.24210},
archivePrefix = {arXiv},
primaryClass = {eess.SP},
doi = {10.48550/arXiv.2606.24210},
url = {https://arxiv.org/abs/2606.24210}
}
Kestävyyspisteytys · arXiv:2607,05415
How Stable Is a PNT Resilience Score? Decision-Instability of Single-Number Resilience Ratings under Framework-Aligned Weighting
Paikannuksen, navigoinnin ja ajanmäärityksen yhden luvun kestävyysluokitukset ovat vakaita vain siellä, missä yksi suunnitelma dominoi; painotus, uhka ja ilmoitetut tekniikat voivat kääntää ne. PNT paikannus, navigointi ja ajanmääritys
Pelkkä uudelleenpainotus muuttaa ylimmän arkkitehtuurin nimellisissä oloissa 22 % arvonnoista ja kunkin aktiivisen uhan alla enintään 1,25 % arvonnoista.
Heikoimman lenkin kypsyystaso riippuu oletetusta uhasta, ei vain arkkitehtuurista.
Koska yhdistelmä palkitsee ilmoitetuista tekniikoista, enemmän ilmoittava suunnitelma voi päihittää kestävämmän.
Miten Kshana toistaa sen
Kestävyysmoduuli pisteyttää seitsemän vertailuarkkitehtuuria seitsemässä viitekehyksen luokassa ja viidessä uhassa, arpoo luokkien painot satunnaisesti Dirichlet-jakaumasta ja laskee, kuinka usein ylin sija muuttuu. Esimerkki kirjoittaa koko tutkimuksen yhteen deterministiseen tiedostoon.
Kuva. 7 vertailuarkkitehtuuria, 2 000 satunnaista luokkapainotusta uhkaa kohden.
Toista se
Tuottaa tutkimusartefaktin uudelleen tiedostosta examples/resilience_report.rs repositorion kloonissa.
Viittaa siihen
BibTeX · baweja2026stable
@misc{baweja2026stable,
title = "{How Stable Is a PNT Resilience Score? Decision-Instability of Single-Number Resilience Ratings under Framework-Aligned Weighting}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2607.05415},
archivePrefix = {arXiv},
primaryClass = {cs.CR},
doi = {10.48550/arXiv.2607.05415},
url = {https://arxiv.org/abs/2607.05415}
}
Radiotaajuinen häiriö · arXiv:2606,22054 · versio 2
Anticipating the Optimism Gap: Predicting Distribution-Shift Degradation of RF-Impairment Detectors from In-Distribution Statistics
Se, kuinka paljon häiriöilmaisin menettää muuttuneissa olosuhteissa, voidaan ennustaa sen omista jakauman sisäisistä pisteistä; synteettisiä tuloksia, tarkistettu avoimilla kenttätallenteilla. RF radiotaajuus
Jakauman sisäisen ja muuttuneen käyrän alle jäävän alan välinen kuilu kasvaa muutoksen syventyessä ja riippuu siitä, kuinka monta havaittavaa suuretta ilmaisin käyttää, ei siitä, onko se opittu.
Moottorin ajossa jakauman sisäisiin pistetilastoihin perustuva ridge-malli ennustaa kuilun ilmaisimelle, jota se ei ole nähnyt (R² 0,46), ja häiriöluokalle, jota se ei ole nähnyt (R² 0,33).
Keskeiset havainnot ovat synteettisiä; artikkeli tarkistaa ne sitten avoimilla kenttätallenteilla.
Miten Kshana toistaa sen
Häiriötutkimus tuottaa synteettisen, parametreihin perustuvan korpuksen neljälle häiriöluokalle, pisteyttää kolmetoista ilmaisinta neljällä muutoksen vakavuudella viiden siemenluvun yli ja sovittaa kuilun ennustimen yhden pois jättävällä ristiinvalidoinnilla ja permutaatiotestillä.
Kuva. 260 ilmaisimen, luokan ja vakavuuden solua; jokainen ennuste tehdään sovituksesta pois jätetylle ilmaisimelle.
Toista se
Tuottaa tutkimusartefaktin uudelleen tiedostosta examples/optimism_study.rs repositorion kloonissa.
Viittaa siihen
BibTeX · baweja2026anticipating
@misc{baweja2026anticipating,
title = "{Anticipating the Optimism Gap: Predicting Distribution-Shift Degradation of RF-Impairment Detectors from In-Distribution Statistics}",
author = {Baweja, Chakshu},
year = {2026},
eprint = {2606.22054},
archivePrefix = {arXiv},
primaryClass = {eess.SP},
doi = {10.48550/arXiv.2606.22054},
url = {https://arxiv.org/abs/2606.22054}
}
Viittaa moottoriin
Jokainen julkaisu arkistoidaan Zenodoon viitattavalla DOI-tunnuksella, ja CITATION.cff toimitetaan repositoriossa. Viittaa moottorin versioon, skenaarioon ja siemenlukuun.
Baweja, C. (2026). Kshana — a PNT-resilience simulator with quantum-sensor performance models (Version 0.40.0). Ashforde OÜ. https://doi.org/10.5281/zenodo.20528627
BibTeX moottorille
BibTeX
@software{kshana,
title = {Kshana — a PNT-resilience simulator with quantum-sensor performance models},
author = {Baweja, Chakshu},
version = {0.40.0},
year = {2026},
doi = {10.5281/zenodo.20528627},
url = {https://github.com/ashfordeOU/kshana},
license = {AGPL-3.0-only}
}