mars-pnt (вид сценария)
Вид сценария движка v0.40.0, семейство Орбитальные группировки, покрытие и геометрия. Носит консультативный характер: результат анализа исследовательского и инженерного инструмента; это не навигационное оборудование с утверждённым типом и не служба обеспечения безопасности жизни. Каждая метка здесь принадлежит движку или матрице верификации; вид имеет уровень MODELLED, если матрица не указывает иное (как заслуживается метка: раздел README «Evidence»).
Что делает#
PNT на Марсе в дальнем космосе: симулированная ретрансляционная орбитальная группировка MARCONI (ареостационарные и наклонные ретрансляторы, ведущие одностороннее вещание и ретранслирующие двусторонний обмен со станцией дальнего космоса) осуществляет навигацию опорного пользователя (transfer | lmo | surface) через совместный оценщик слияния односторонних и двусторонних радиометрических данных. Сообщает геометрию и видимость по эпохам, достигнутое СКО относительно истины и формальную ковариацию (положение 1σ / 3σ) — честный симулированный показатель качества, а НЕ сертифицированный уровень защиты.
Один прогон scenarios/mars-pnt-lmo.toml сводится к следующему: mars-pnt 5aad87fcc94a | пользователь lmo, часы uso | 5 ретрансляторов (в среднем 3,1 в зоне видимости) | сошедшееся СКО положения 0,25 м, формальное 1σ 0,31 м (3σ 0,93 м — показатель качества по ковариации, а не сертифицированный PL) | σ частоты часов 3.71e-13 | cov-PD true
Входные параметры#
Из схемы (kshana kinds --json):
- Обязательные поля: нет
- Необязательные поля:
user,clock_class,step_s,duration_s,nmax,range_sigma_m,doppler_sigma_mps,dynamic_tightness,two_way_period_s,seed
Пример scenarios/mars-pnt-lmo.toml задаёт, среди прочего:
| Поле | Значение | Единица |
|---|---|---|
clock_class |
uso | текст |
doppler_sigma_mps |
1.0000e-4 | m/s |
duration_s |
7200 | s |
dynamic_tightness |
0.1 | не указано |
kind |
mars-pnt | текст |
nmax |
4 | не указано |
range_sigma_m |
1 | m |
seed |
331514052 | не указано |
step_s |
60 | s |
two_way_period_s |
1800 | s |
user |
lmo | текст |
Запустите#
kshana scenarios/mars-pnt-lmo.toml
3 входящих в поставку сценария используют этот вид; остальные находятся в scenarios/.
Что он даёт#
Скалярные результаты этого прогона с единицами, которые указывает движок:
| Результат | Значение | Единица |
|---|---|---|
areostationary_radius_m |
2.0428e7 | m |
clock_class |
uso | текст |
evidence.id_rule |
стабильный идентификатор строки матрицы (ID | текст |
evidence.matrix |
docs/VERIFICATION-MATRIX.md | текст |
evidence.tier |
MODELLED | текст |
fom.converged_pos_3sigma_m |
0.927387 | m |
fom.converged_pos_rms_m |
0.245604 | m |
fom.converged_pos_sigma_m |
0.309129 | m |
fom.covariance_pd_throughout |
true | флаг |
fom.epochs |
120 | число |
Доказательства#
MODELLED: строки матрицы верификации, называющие этот вид.
- MODELLED Вид
body-pnt: орбитальный аппарат или посадочный модуль на поверхности вокруг тела, выбираемого по названию, навигирует по односторонним псевдодальностям от навигационной группировки Уокера вокруг тела (двухтельные орбиты с вековым дрейфом J2 тела, неизвестные часы пользователя
Строки, которые задействовал сам прогон, с оракулом, который указывает им матрица (публичные источники названы там):
- VALIDATED Восстановление состояния эпохи [r,v] по дальностям от наземных станций пакетным дифференциальным корректором Гаусса–Ньютона и последовательным фильтром на модели сил «задача двух тел плюс J2». Оракул (ExternalDataset): Orekit 12,2 (CS GROUP, Apache-2.0) BatchLSEstimator (Левенберг–Марквардт) + KalmanEstimator (EKF) — независимая сторонняя библиотека оценивания на согласованной модели сил; восстановленное состояние эпохи и СКО послеподгоночных невязок согласуются до <1e-3 м без шума и до <3 м при уровне шума 5 м
- MODELLED Часы с 3 состояниями (фаза/частота/дрейф) и фильтром Калмана по Ван Лоану, стабилизированным по Джозефу. Oracle (ReferenceImpl): filterpy 1.4.5 KalmanFilter (R. Labbe, MIT), где F вычислена через scipy.linalg.expm, а Q — блочной матрицей Ван Лоана 1978 — независимая эталонная реализация, воспроизводящая всю траекторию полного фильтра kshana. Согласованность между реализациями: физика часов и калибровка по Аллану внешне не проверены, поэтому остаётся MODELLED. 0,30 внешнее сравнение, результат (остаётся MODELLED): по часам IGS final 30 s из 11 GPS Blo
- MODELLED Детерминированные, хешируемые по сценарию, SBOM и кроссплатформенные эталонные проверки (golden). Оракул (ExternalDataset): соответствие SBOM официальной схеме JSON CycloneDX 1,5 (плюс допустимые идентификаторы SPDX) — внешний опубликованный стандарт, ноль ошибок валидации на всём графе зависимостей; часть о детерминизме FoM и побайтной воспроизводимости остаётся закреплённой проверкой внутренней согласованности, поэтому строка остаётся MODELLED
Ограничения#
Что отчёт самого прогона называет не смоделированным или не проверенным:
- Оценивание состояния бортовых часов — MODELLED, а не validated: оно проверено по отдельной реализации в той же кодовой базе, независимой от проверяемого блока, но не являющейся внешним авторитетным источником. (матрица верификации (docs/MODELLED-RATIONALE.md))
- Воспроизводимость и гарантии качества ПО — MODELLED, а не validated: одно из частных утверждений проверено извне, но вся возможность составлена из смоделированных частей, поэтому возможность остаётся Modelled. (матрица верификации (docs/MODELLED-RATIONALE.md))
См. также#
- Страница семейства: Орбитальные группировки, покрытие и геометрия
- Все виды: KINDS.md
- Тематическая страница: SOLAR-SYSTEM.md