Maskinoversættelse, ikke gennemgået af en modersmålstalende. Engelsk er referencen.

Sider om scenarietyperRedigér på GitHubKilde: docs/kinds/by-kind/campaign.md

campaign (scenarietype)

Scenarietype i motoren v0.40.0, familie Kampagner. Vejledende: analyseoutput fra et forsknings- og ingeniørværktøj, ikke typegodkendt navigationsudstyr og ikke en sikkerhedskritisk tjeneste (safety-of-life). Hver mærkat her er motorens eller verifikationsmatrixens; en type er MODELLED, medmindre matrixen siger andet (hvordan en mærkat opnås: README'ens afsnit Evidence).

Hvad det gør#

Kampagne: eksisterende scenarietyper sammensat til én kørsel, hvor hvert tal er læst fra en rigtig kørsel af den navngivne type. Fire sektioner, i enhver kombination. PHASES: en kædet mission på én fælles tidslinje -- hver fase kører ét eller flere scenarier (for eksempel jamming, så spoofing, så et ur i holdover med et inertinavigationssystem, der glider ved siden af, så en integritetsalarm, så genopretning), deres output læses ind i navngivne kanaler (urets tidsfejl mod dets grænse, forholdet mellem bærebølge og støjtæthed mod sporingsgulvet, beskyttelsesniveau mod alarmgrænsen, positionsfejl, satellitter der spores, alarmflag) af en forudindstilling pr. type eller af eksplicitte resultatstier og gensamples på et fælles gitter med zero-order hold, med fasegrænser og hændelser; tilstand videregives ved carry (en kanal fortsætter fra forrige fases slutværdi), handoff (et tal fra en forrige fase skrevet ind i denne fases scenarie) og end_at (en fase slutter på et tidspunkt, som en kørsel har beregnet, for eksempel en spoofing-monitors detektionstidspunkt). SWEEP: et gitter over en til tre punktsepararede scenarienøgler af en vilkårlig type (et heltalssegment indekserer en array af tabeller, som i system.2.sisre_m), med målinger læst ved resultatsti og, med flere end én kørsel, et seedet Monte Carlo-ensemble i hver knude. MONTE_CARLO: realisation k kører ved base_seed + k; hver måling rapporterer middelværdi, standardafvigelse, nearest-rank 5.-/50.-/95.-percentiler og et bootstrap-konfidensinterval på 95 % for middelværdien med fast seed. COMPOSE: flere scenarier under fælles værdier (én jammers effekt og position skrevet ind i en maritim og en vejmodtager), med en samlet bedste/værste oversigt. Resultatet bærer en kampagne-hash, en digest over hvert medlemsresultat og en enhedsangivelse for hvert udsendt tal; interoperabilitetseksporterne skriver hvert medlemsscenarie, der har geometri, som sit eget filsæt. Sammensætningsidentiteter afprøves: en etfaset kampagne gengiver den selvstændige kørsel bit for bit, et ensemble med fast seed er bytestabilt, og på et ur med hvid frekvensstøj falder ensemblets middelværdi inden for det rapporterede interval, hvor spredningen stemmer med sqrt(q_wf * tau). MODELLED: den additive carry og zero-order hold er modelvalg, og hver fase bærer mærkaten for den type, der kørte den.

Én kørsel af scenarios/campaign-sweep-jammer-power.toml opsummeres som: campaign 46aa07cb58fb | Jammer power sweep: availability and J/S against transmit power | sweep af jamming: 13 knuder over [jammer_power] | 13 medlemskørsler (MODELLED)

Input#

Fra skemaet (kshana kinds --json):

  • Påkrævede felter: ingen
  • Valgfrie felter: title, seed, timeline, phases, sweep, monte_carlo, compose

Eksemplet scenarios/campaign-sweep-jammer-power.toml angiver blandt andet:

Felt Værdi Enhed
kind campaign tekst
seed 20260928 1
sweep.axes[0].key jammer.power_dbw tekst
sweep.axes[0].name jammer_power tekst
sweep.axes[0].start -50 ikke angivet
sweep.axes[0].steps 13 ikke angivet
sweep.axes[0].stop 10 ikke angivet
sweep.axes[0].unit dBW tekst
sweep.metrics[0].name tilgængelighed tekst
sweep.metrics[0].path fom.availability_under_jamming tekst
sweep.metrics[1].name mean_js tekst
sweep.metrics[1].path fom.mean_js_db tekst

Kør den#

kshana scenarios/campaign-sweep-jammer-power.toml

22 medfølgende scenarier bruger denne type; de øvrige findes i scenarios/.

Hvad den giver#

De skalare resultater af den kørsel, med de enheder, motoren angiver:

Resultat Værdi Enhed
evidence.id_rule det stabile id for matrixrækken (kolonnen ID tekst
evidence.matrix docs/VERIFICATION-MATRIX.md tekst
evidence.tier PARTNER tekst
reproducibility.campaign_hash 46aa07cb58fbfbd3784c2e1ef8d6070508ad5f5c tekst
reproducibility.run_digest a082a9466bcd5c8788a2a46373a47e418db1393c tekst
reproducibility.runs_total 13 antal
seed 20260928 1
sweep.axes.jammer_power.key jammer.power_dbw tekst
sweep.axes.jammer_power.scale lin tekst
sweep.axes.jammer_power.unit dBW tekst

Resultatmærkat (motorens egen): MODELLED sammensætning af eksisterende scenarietyper. Hvert tal er læst fra en rigtig kørsel af den navngivne type; kædningen (additiv carry af en kanal over en fasegrænse, zero-order hold på tidslinjens gitter, en fase afsluttet på et beregnet tidspunkt) er et modelvalg, og hver fase bærer mærkaten

Diagrammet, som motoren skriver for scenarios/campaign-sweep-jammer-power.toml, type campaign

Evidens#

MODELLED: rækkerne i verifikationsmatrixen, der nævner denne type.

  • MODELLED iq::campaign::detect og kampagnekøreren: en valgfri [monitors]-tabel kører IQ-monitorerne på hver celle i kørerens enkelte gennemløb. Tests: iq_campaign.rs.
  • MODELLED iq::campaign::detect (windows, roc) og iq::campaign::report::rocs: hver celle i en kampagne med monitorer beholder, pr. alarmtype og kanal, maksimum af monitorens egen teststørrelse over hvert angivet hændelsesvindue (positiv) og over t
  • MODELLED iq::labfit (campaign, cn0, iqfit, iqreport) og [input] campaign på kshana iq labfit, Python kshana.iq_labfit og MCP-værktøjet labfit (kun kampagnemapper inde i dets arbejdsmappe): læser en kshana iq campaign-outputmappe efter dens Tests: iq_labfit_followup.rs.
  • MODELLED Fasene i typen campaign: hver fase kører ét eller flere scenarier af eksisterende typer gennem run_toml, læser deres output ind i navngivne kanaler (urets tidsfejl og grænse, middel af effektivt forhold mellem bærebølge og støjtæthed og sporingsgulv, v Tests: campaign_composition_reference.rs.
  • og 4 flere i matrixen.

De rækker, som kørslen selv afprøvede, med den uafhængige reference, som matrixen giver hver (de offentlige kilder er nævnt dér):

  • MODELLED Geometrisk J/S-linkbudget, anti-jam-C/N₀, tab af lås pr. satellit. Uafhængig reference (InternalConsistency): Linkbudgetligningen for anti-jam-C/N₀ krydskontrolleret mod en uafhængig numpy-udledning påny (deler den samme lukkede form → InternalConsistency) plus en karakterisering af C/N₀-forringelse fra reelle JammerTest-2024-data. 0,30 runde 2, blokeret (forbliver MODELLED): det målte fald i C/N0 fra JammerTest 2024 mod en linkbudgetforudsigelse (præregistreret 6a66994b, inden for 3 dB) blev ikke kørt, fordi F8.1-antennens position og pegning ved
  • MODELLED Deterministisk, scenarie-hashet, SBOM + gates med golden-filer på tværs af platforme. Uafhængig reference (ExternalDataset): SBOM'ens validering mod det officielle CycloneDX 1,5 JSON-skema (+ gyldige SPDX-identifikatorer) — en ekstern publiceret standard, nul valideringsfejl over hele afhængighedsgrafen; den del, der gælder FoM-determinisme / byte-reproducerbarhed, er fortsat et fastlåst selvkonsistenstjek, så rækken forbliver MODELLED
  • PARTNER Ikke leveret — Kshana modellerer signalydelse, ikke nyttelast- eller antennehardware. Uafhængig reference (NoneKind): ingen: en disciplin, som partneren ejer, uden modul og uden test, af design
  • MODELLED Typen campaigns sweep (en til tre punktsepararede nøgler af en vilkårlig type, på det generiske sweeps akseværdier, eventuelt et ensemble i hver knude) og monte_carlo-sek. Uafhængig reference (InternalConsistency): Den lukkede form for fasens random walk under hvid frekvensstøj, varians q_wf tau (NIST Technical Note 1337), for statistikmaskineriet, og byte-lighed med de selvstændige kørsler for seedningen. Det kontrollerer ensemblets aritmetik på motorens egen urmodel, ikke et eksternt datasæt

Begrænsninger#

Hvad kørslens egen rapport siger ikke er modelleret eller ikke er valideret:

  • MODELLED sammensætning af eksisterende scenarietyper. Hvert tal er læst fra en rigtig kørsel af den navngivne type; kædningen (additiv carry af en kanal over en fasegrænse, zero-order hold på tidslinjens gitter, en fase afsluttet på et beregnet tidspunkt) er et modelvalg, og hver fase bærer mærkaten for den type, der frembragte den. (resultat label)
  • MODELLED: den additive carry og zero-order hold er modelvalg, og hver fase bærer mærkaten for den type, der kørte den. (typekatalog (kshana kinds --json))
  • MODELLED: som typen jamming er. (kommentar i scenariefilen, linje 14)
  • Modstandsdygtighed over for jamming i GNSS-nægtede miljøer er MODELLED, ikke valideret: kontrolleret mod sin egen lukkede/analytiske identitet — fanger transskriptions- og koefficientfejl, men er ikke en ekstern uafhængig reference. (verifikationsmatrix (docs/MODELLED-RATIONALE.md))
  • Reproducerbarhed og softwarekvalitetssikring er MODELLED, ikke valideret: en delpåstand kontrolleres eksternt, men hele funktionen sammensættes af modellerede dele, så funktionen forbliver modelleret. (verifikationsmatrix (docs/MODELLED-RATIONALE.md))
  • Parametersweeps og seedede Monte Carlo-ensembler over enhver scenarietype er MODELLED, ikke valideret: kontrolleret mod sin egen lukkede/analytiske identitet — fanger transskriptions- og koefficientfejl, men er ikke en ekstern uafhængig reference. (verifikationsmatrix (docs/MODELLED-RATIONALE.md))

Se også#