Справочник по сценариям
Каждый поставляемый файл сценария (193), сгруппированный по видам. Описание — собственный заголовочный комментарий файла; ключевые параметры — его настройки верхнего уровня. Статус берётся из матрицы верификации для модуля вида. Открыть в Kshana Studio открывает записанный прогон.
acm-link#
Один спутник над одной станцией: наклонная дальность, угол места и Es/N0 вдоль каждого прохода, MODCOD DVB-S2, выбранный на каждом шаге (пороги ETSI EN 302 307-1, таблица 13, плюс запас реализации), и объём данных, который ACM передаёт по сравнению с базовым вариантом постоянного кодирования, замыкающимся на маске. MODELLED.
acm-link.toml
Адаптивное кодирование и модуляция (ACM) DVB-S2 на пролётах одного спутника над одной станцией. На пролёте наклонная дальность и угол места меняются, поэтому меняется и Es/N0 нисходящей линии. На каждом шаге прогон выбирает наиболее эффективный MODCOD, порог которого по ETSI EN 302 307-1, таблица 13, плюс запас на реализацию линия обеспечивает. Он сообщает диапазон Es/N0 каждого пролёта и объём данных, передаваемый с ACM, в сравнении с базовым вариантом постоянного кодирования, который замыкается при угле места маски и наибольшей дальности.
kind = "acm-link"
epoch = [2024.0, 1.0, 1.0, 0.0, 0.0, 0.0]
duration_hours = 12.0
step_s = 30.0
refraction = true
light_time = true
frequency_ghz = 8.2
eirp_dbw = 7.0aocs#
Управление ориентацией космического аппарата: разворот жёсткого корпуса с инерциальным наведением, имеющего три или более сбалансированных маховика, при обратной связи MRP (L = -K sigma - P omega), с минимально-нормовыми моментами маховиков, ограниченными пределом каждого двигателя, методом RK4 с экстраполятором нулевого порядка; по выбору замкнутый на мультипликативный EKF по имитированному гироскопу (случайное блуждание угла и скорости) и звёздному датчику. Сообщает время успокоения, конечную и пиковую ошибку наведения, пиковые скорость и момент маховика, долю насыщения, дрейф момента импульса и, при наличии оценивателя, его ошибку ориентации и NEES. Контур истинного состояния — VALIDATED по Basilisk 2.9.1; оцениватель — MODELLED.
aocs-slew.toml
Разворот по ориентации маховиками при обратной связи MRP, замкнутой по истинному состоянию.
kind = "aocs"
duration_s = 600.0
dt_s = 0.1
sample_s = 1.0
k_nm = 3.5
p_nms = 30.0
pointing_threshold_deg = 0.1
axis = [0.5773502, 0.5773502, 0.5773504]aocs-slew-mekf.toml
Разворот по ориентации маховиками при обратной связи MRP, замкнутой по оценке MEKF.
kind = "aocs"
duration_s = 600.0
dt_s = 0.1
sample_s = 1.0
k_nm = 3.5
p_nms = 30.0
pointing_threshold_deg = 0.1
axis = [0.5773502, 0.5773502, 0.5773504]aperture-duty-cycle#
Коэффициент занятости апертур: разделение времени между навигацией и связью, которое подразумевает план контактов для пула управляемых апертур. Принимает план контактов (список окон [[contacts]] aos_s/los_s, каждое из которых запрашивает навигацию или связь — тот же словарь aos_s/los_s, который выдаёт предиктор passes), число апертур и ПОЛИТИКУ АРБИТРАЖА (по умолчанию приоритет навигации, либо приоритет связи, либо невытесняющее обслуживание в порядке поступления) и сообщает занятость навигацией, занятость связью, долю простоя и простой по сеансам — время контакта, которое сеанс запросил и которое ни одна апертура не обслужила. Точный интервальный проход по границам окон, поэтому соприкасающиеся окна никогда не конкурируют и ни одна секунда апертуры не учитывается дважды; секунды апертур для навигации, связи и простоя накапливаются независимо и сходятся с apertures*horizon_s. Отчёт указывает применённую политику, её полное определение и определения занятости и простоя, потому что значение занятости, приведённое без политики арбитража, невоспроизводимо. MODELLED арифметика планирования: время на перенаведение / перестройку / смену не учитывается, когда апертура меняет службу или сеанс, в решении не участвуют ни объём данных, ни состояние буфера, ни энергобюджет, ни замыкание линии, а окна контактов — входные данные, и их геометрия такова, какой её получил источник. Это не продукт для планирования наземного сегмента.
aperture-duty-cycle.toml
Демонстратор скважности раскрыва (наземный сегмент и эксплуатация).
kind = "aperture-duty-cycle"
apertures = 2
arbitration = "navigation-priority"
name = "nav-1"
service = "navigation"
aos_s = 0.0
los_s = 600.0
name = "comms-1"araim-reference-check#
Опубликованные опорные векторы для ARAIM: уровни защиты ARAIM по горизонтали и вертикали движка прогоняются по СОБСТВЕННЫМ разобранным числовым примерам Технической подгруппы ARAIM рабочей группы WG-C с допуском (TOL_PL = 5e-2 м), который указывают сами эти документы. Два вектора зафиксированы как фикстуры, и у каждого есть URL получения, дата получения, SHA-256 исходного файла и страница: Reference Airborne Algorithm Description Document v3.1 (2019), приложение D — внутренне согласованный и приёмочный вектор — и Milestone 3 Report (2016), приложение A, раздел A.IX, утверждение, на которое ссылаются исследовательские библиографии. Каждый опубликованный входной параметр (матрица геометрии из 10 спутников в 2 орбитальных группировках, диагонали дисперсий C_int и C_acc, b_nom, P_sat, P_const и набор констант LPV-200) и каждый опубликованный выходной (VPL, HPL, EMT, sigma_v_acc, K_fa_3 и sigma_3, sigma_ss_3 и b_3 двух режимов отказа орбитальной группировки) приводится рядом с собственным числом движка и их абсолютной разностью. Уравнение уровня защиты здесь НЕ решается заново: список режимов эталона передаётся существующим raim::araim_protection_level / araim_integrity_risk движка, так что проверяемые бисекция и алгебра гауссова хвоста принадлежат самому движку; для него строятся только геометрия, подрешения, пороги обнаружения и опубликованное разбиение бюджета. ВНЕШНЯЯ ПРОВЕРКА по вектору 2019: VPL 18,2926 м против опубликованных 18,3 м, HPL 13,4063 м против 13,45 м, EMT 7,2997 м против 7,2998 м, sigma_v_acc 1,3694 м против 1,3694 м, и все шесть опубликованных промежуточных величин с точностью до половины единицы в последнем напечатанном десятичном знаке. Вектор 2016 содержит два внутренних дефекта, которые отчёт называет, а не скрывает, — опечатку в знаке в строке 3 матрицы G и K_fa_3, вычисленное для 57 режимов отказа, тогда как документ указывает N_fault_max = 1 (12 режимов), — поэтому его промежуточные величины геометрии воспроизводятся точно, а его уровни защиты приводятся как измеренные расхождения и исключаются из приёмочного показателя; допуск никогда не расширяется, чтобы их поглотить. Каждое выдаваемое числовое поле несёт единицу и класс происхождения, а переписанная из источника величина помечается published, чтобы её нельзя было принять за вычисленную. ОБЛАСТЬ: реализован только N_fault_max = 1 (режимы отказа одного спутника и одной орбитальной группировки), а случай, чьи априорные вероятности требуют одновременных многособытийных подмножеств отказов, REFUSED, а не молча усекается; обнаружение и исключение отказов, проверка согласованности по хи-квадрат и шаг перераспределения двойного учёта эталонного алгоритма выходят за область применения. Это воспроизводит разобранный пример опубликованного эталонного алгоритма — это не сертификация, не документ лётной годности и не одобрение.
araim-reference-check.toml
Уровни защиты ARAIM движка в сравнении с СОБСТВЕННЫМИ разобранными примерами подгруппы WG-C.
kind = "araim-reference-check"ascent-losses#
Плоский гравитационный разворот при выведении многоступенчатого аппарата над невращающейся сферической Землёй сквозь Стандартную атмосферу США 1976 (вертикальный подъём, импульс по тангажу, тяга вдоль скорости), с интегрированием потерь на гравитацию, сопротивление, управление и противодавление и проверкой идеального dv за вычетом потерь по скорости выгорания; max-Q, пиковое ускорение и состояние выгорания. MODELLED.
ascent-losses.toml
Потери на участке выведения с гравитационным разворотом ILLUSTRATIVE двухступенчатой ракеты на керосине и кислороде (реального носителя нет): вертикальный подъём до 1 км, импульс тангажа 3 град в течение 10 с, затем тяга вдоль вектора скорости. Прогон интегрирует потери на гравитацию, сопротивление, управление и противодавление и проверяет, что идеальная dv за вычетом потерь равна скорости в конце работы двигателя. MODELLED: плоская невращающаяся Земля, постоянный C_D, без пассивного участка, без наведения помимо импульса.
kind = "ascent-losses"
payload_kg = 10000.0
drag_coefficient = 0.3
kick_altitude_m = 1000.0
kick_angle_deg = 3.0
kick_duration_s = 10.0
step_s = 0.1
dry_mass_kg = 25000.0attitude-budget#
Бюджет ошибки ориентации и наведения с 3 степенями свободы: наихудший гравитационно-градиентный возмущающий момент ((3/2)(μ/R³)ΔI) и бюджет ошибки наведения как корень из суммы квадратов по названным вкладам 1σ (шум датчика, дрожание маховика, тепловые эффекты, юстировка) с доминирующим членом, для высоты орбиты и разброса моментов инерции тела. MODELLED скалярный бюджет AOCS — дозаводской комплемент к Basilisk/42, а не симуляция контура управления / 6 степеней свободы / гибких мод.
attitude-budget.toml
Демонстратор бюджета ошибок ориентации и наведения в 3 степенях свободы (AOCS/GNC до появления аппаратуры).
kind = "attitude-budget"
altitude_km = 600.0
name = "star_tracker_noise"
sigma_arcsec = 5.0
name = "reaction_wheel_jitter"
sigma_arcsec = 8.0
name = "thermal_distortion"
sigma_arcsec = 4.0body-pnt#
Позиционирование вокруг любого тела Солнечной системы: орбитальный аппарат или посадочный модуль на поверхности вокруг центрального тела, выбираемого по названию (Марс, Луна, Европа, Ганимед, Титан и остальной каталог тел Солнечной системы), с навигацией по односторонним псевдодальностям от небольшой навигационной группировки Уокера вокруг тела (двухтельные орбиты с вековым дрейфом J2 самого тела, неизвестные часы пользователя) и, по выбору, по не зависящей от часов двусторонней дальности в дальнем космосе от Земли, направление и расстояние до которой на каждую эпоху берутся из аналитических эфемерид Солнечной системы. Линии визирования перекрываются средней сферой тела, а пользователю на поверхности нужна ещё и маска возвышения. На каждую эпоху: ретрансляторы в зоне видимости, находится ли Земля над лимбом, GDOP и PDOP только по группировке (геометрический фактор и фактор положения), формальная неопределённость положения (одна сигма) с учётом строки Земли и без неё, а также ошибка решения методом наименьших квадратов Гаусса–Ньютона с заданным начальным значением в каждом из двух вариантов; за прогон: доступность, видимость Земли, медианный PDOP, СКО ошибки и медианная формальная сигма, а также время распространения света от Земли до тела, двойной пробег, задержка Шапиро и угловое расстояние до Солнца на эпоху. MODELLED: орбиты ретрансляторов, уровни шума и мгновенная модель измерений — это выбор моделирования, а не результат проверки по навигационным данным какой-либо миссии; константы тел — опубликованные значения, процитированные в body.rs, а геометрия Земли наследует метки эфемерид Солнечной системы.
europa-surface-pnt.toml
Позиционирование посадочного аппарата на Европе: случай спутника Юпитера.
kind = "body-pnt"
body = "Europa"
epoch = "2027-02-19T00:00:00"
duration_s = 306822.0
step_s = 1800.0
seed = 11
kind = "surface"
lat_deg = 20.0mars-orbit-pnt.toml
Позиционирование орбитального аппарата на низкой орбите Марса с марсианской навигационной группировкой и каналом дальней космической связи.
kind = "body-pnt"
body = "Mars"
epoch = "2027-02-19T00:00:00"
duration_s = 88775.0
step_s = 300.0
seed = 7
kind = "orbiter"
altitude_km = 300.0campaign#
Кампания: существующие виды сценариев, составленные в один прогон, где каждое число считывается из реального прогона названного вида. Четыре раздела в любом сочетании. PHASES: цепочечная миссия на одной общей временной шкале — каждая фаза запускает один или несколько сценариев (например, подавление, затем спуфинг, затем часы в режиме holdover с инерциальной навигационной системой, идущей рядом на выбеге, затем тревога по целостности, затем восстановление); их выходные данные считываются в именованные каналы (ошибка времени часов относительно их предела, отношение несущей к плотности шума относительно порога слежения, уровень защиты относительно предела тревоги, ошибка положения, отслеживаемые спутники, флаги тревоги) по заготовке для вида или по явно заданным путям результата и передискретизируются на общую сетку удержанием нулевого порядка, с границами фаз и событиями; состояние передаётся дальше через carry (канал продолжается со значения в конце предыдущей фазы), handoff (число предыдущей фазы записывается в сценарий этой фазы) и end_at (фаза заканчивается в момент, вычисленный прогоном, например во время обнаружения монитором спуфинга). SWEEP: сетка по одному–трём ключам сценария любого вида в точечной записи (целочисленный сегмент индексирует массив таблиц, как в system.2.sisre_m), с метриками, считываемыми по пути результата, и, при числе прогонов больше одного, ансамблем Монте-Карло с заданным seed в каждом узле. MONTE_CARLO: реализация k запускается с base_seed + k; для каждой метрики сообщаются среднее, стандартное отклонение, 5-й/50-й/95-й процентили по ближайшему рангу и бутстреп-доверительный интервал 95% для среднего с фиксированным seed. COMPOSE: несколько сценариев с общими значениями (мощность и положение одного источника подавления записываются в морской и дорожный приёмники) со сводным лучшим/худшим итогом. Результат содержит хеш кампании, сводный хеш по результатам всех участников и запись единиц для каждого выданного числа; экспорты для интероперабельности записывают каждый сценарий-участник, у которого есть геометрия, в виде отдельного набора файлов. Тождества композиции проверяются: однофазная кампания воспроизводит автономный прогон бит в бит, ансамбль с фиксированным seed побайтно стабилен, а для часов с белым частотным шумом среднее по ансамблю попадает в заявленный интервал, причём разброс соответствует sqrt(q_wf * tau). MODELLED: аддитивный перенос carry и удержание нулевого порядка — это выбор моделирования, и каждая фаза несёт метку вида, который её выполнил.
campaign-jam-spoof-holdover-integrity.toml
Связанная миссия: штатный режим, подавление, спуфинг, потеря GNSS с holdover часов и инерциальным выбегом, тревога целостности и восстановление на одной общей временной шкале.
kind = "campaign"
title = "Jamming, spoofing, holdover and integrity: a chained mission"
seed = 20260928
step_s = 10.0
name = "nominal"
duration_s = 600.0
seed = 42
threshold_ns = 50.0campaign-monte-carlo-clock-holdover.toml
Ансамбль Монте-Карло с начальным значением (seed) по кампании, на случае с замкнутой формой решения.
kind = "campaign"
title = "Monte Carlo: free-running clock error against its closed form"
seed = 20260928
runs = 200
seed_key = "seed"
metrics = [
seed = 42
threshold_ns = 20.0campaign-optimize-link-budget.toml
Оптимизация через кампанию: линия X-диапазона из примера link-budget (55 дБВт ЭИИМ, 53 дБ/К G/T, 3 дБ прочих потерь, 4,5 дБ требуемого Eb/N0), поиск по дальности и скорости передачи данных рабочей точки, при которой остаётся ровно 3 дБ запаса. Каждое вычисление — обычный прогон link-budget. Симплекс Нелдера — Мида работает в логарифмически нормированных координатах внутри заданных границ, и каждое вычисление перечислено в trace результата.
kind = "campaign"
title = "Link budget: range and rate for a 3 dB margin"
seed = 20261013
method = "nelder-mead"
max_evals = 300
name = "margin"
path = "margin_db"
goal = "target"campaign-spectrum-holdover-integrity.toml
Связанная миссия, управляемая спектром L-диапазона: источник подавления с линейной частотной модуляцией подавляет GPS L1 C/A и Galileo E1, часы переходят в holdover, а непрерывный тон (CW), оставленный на несущей L1, удерживает C/A подавленным, пока E1 восстанавливается, так что приёмник переходит на Galileo, и его монитор целостности работает на небе только с Galileo.
kind = "campaign"
title = "L-band jamming from the spectrum, clock holdover and a Galileo-only fallback"
seed = 20260928
step_s = 1.0
name = "onset"
duration_s = 60.0
end_at = "timeline.bands[0].first_loss_t_s"
end_at_run = 1campaign-sweep-jammer-power.toml
Перебор параметра через кампанию: приёмник из примера jamming (52 с. ш., 4 в. д., оболочка Уокера из 24 спутников типа GPS) под широкополосным источником подавления на расстоянии 1 км, с мощностью передатчика источника подавления от -50 дБВт (10 нВт) до +10 дБВт (10 Вт) с шагом 5 дБ. Каждый узел — обычный прогон jamming; кампания записывает для каждого узла долю эпох, в которых по-прежнему сопровождаются не менее четырёх спутников, среднее отношение сигнал/подавление (J/S) и наименьшее число сопровождаемых спутников.
kind = "campaign"
title = "Jammer power sweep: availability and J/S against transmit power"
seed = 20260928
metrics = [
name = "jammer_power"
key = "jammer.power_dbw"
unit = "dBW"
start = -50.0leo-focus-data-services.toml
Направление LEO-PNT: дополнительные информационные услуги PNT в навигационном сообщении.
kind = "campaign"
title = "Navigation-message service data against frame length"
seed = 20260929
name = "fit_interval"
unit = "s"
value = 300.0
label = "ephemeris-clock"
bind = { fit_interval = "message.fit_interval_s" }leo-focus-fused-pnt-sisre.toml
Направление LEO-PNT: объединённые PNT на MEO + LEO.
kind = "campaign"
title = "Fused MEO + LEO positioning against the LEO SISRE"
seed = 20260929
metrics = [
name = "leo_sisre"
key = "system.2.sisre_m"
unit = "m"
start = 0.05leo-focus-indoor-uhf.toml
Направление LEO-PNT: навигация в помещении по УВЧ.
kind = "campaign"
title = "Indoor LEO-PNT by band and building class"
seed = 20260929
label = "traditional-building"
metrics = [
kind = "leo-pass"
epoch = "2026-09-28T12:00:00"
duration_s = 900.0leo-focus-iot-eirp.toml
Направление LEO-PNT: малоэнергетическое позиционирование для Интернета вещей (IoT) и мобильных устройств.
kind = "campaign"
title = "IoT energy per fix against LEO UHF transmit power"
seed = 20260929
metrics = [
name = "uhf_eirp"
key = "satellite.0.band.0.eirp_dbw"
unit = "dBW"
start = -35.0leo-focus-ntn-bandwidth.toml
Направление LEO-PNT: совместимость с нетеррестриальными сетями (NTN) 5G/6G.
kind = "campaign"
title = "NTN positioning against reference-signal bandwidth"
seed = 20260929
metrics = [
name = "bandwidth"
key = "signal.0.bandwidth_hz"
unit = "Hz"
start = 180000.0leo-focus-ppp-altitude.toml
Направление LEO-PNT: высокоточное позиционирование (прецизионное абсолютное позиционирование, PPP).
kind = "campaign"
title = "PPP convergence against the altitude of a 192-satellite LEO layer"
seed = 20260929
metrics = [
name = "leo_altitude"
key = "case.0.system.0.shell.0.altitude_km"
unit = "km"
start = 500.0leo-resilience-gnss-jammed-leo-carries.toml
Миссия устойчивости LEO-PNT: GNSS подавлена, пользователя ведёт LEO-PNT, целостность сохраняется.
kind = "campaign"
title = "GNSS jammed, LEO-PNT carries the user, integrity maintained"
seed = 20260929
step_s = 30.0
name = "nominal"
duration_s = 600.0
series = [
kind = "spectrum"leo-resilience-multiband-diversity.toml
Устойчивость LEO-PNT за счёт разнесения по диапазонам: один генератор помех, четырёхдиапазонный приёмник.
kind = "campaign"
title = "LEO-PNT band diversity against an L-band barrage jammer"
seed = 20260929
metrics = [
name = "jammer_power"
key = "jammers.0.received_power_dbw"
unit = "dBW"
start = -140.0leo-resilience-spoof-monitors.toml
Устойчивость LEO-PNT к спуфингу: какой монитор видит какой спуфер.
kind = "campaign"
title = "Spoofing monitors against four spoofers"
seed = 20260929
name = "jump"
unit = "m"
value = 30.0
label = "l-band-only"
bind = { jump = "spoofer.offset_m" }leo-vertical-5g-network-timing.toml
Вертикаль LEO-PNT: беспроводные сети, синхронизация базовых станций 5G/6G.
kind = "campaign"
title = "5G base-station timing: holdover and LEO time"
seed = 20260929
step_s = 300.0
name = "gnss-lost"
duration_s = 86400.0
events = [
kind = "telecom-timing"leo-vertical-asset-tracking-iot.toml
Вертикаль LEO-PNT: отслеживание объектов и Интернет вещей (IoT), энергия на одно определение.
kind = "campaign"
title = "Container tracking with LEO UHF: energy per fix along a journey"
seed = 20260929
step_s = 10.0
name = "port-hamburg"
duration_s = 480.0
series = [
kind = "leo-pass"leo-vertical-autonomous-vehicle.toml
Вертикаль LEO-PNT: беспилотные транспортные средства, городской каньон со слоем LEO.
kind = "campaign"
title = "Autonomous vehicle in an urban canyon with a LEO layer"
seed = 20260929
step_s = 10.0
name = "open-road"
duration_s = 600.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 1.5 }]leo-vertical-autonomous-vehicle-skyline.toml
Вертикаль LEO-PNT: городской каньон для беспилотных транспортных средств — как плоская маска и как улица.
kind = "campaign"
title = "Autonomous vehicle in an urban canyon: a flat cut-off and a city-street skyline"
seed = 20260929
step_s = 10.0
name = "urban-canyon"
duration_s = 900.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 1.5 }]leo-vertical-critical-infrastructure-timing.toml
Вертикаль LEO-PNT: синхронизация критической инфраструктуры, holdover со временем LEO.
kind = "campaign"
title = "Critical infrastructure timing: holdover with LEO time"
seed = 20260929
step_s = 300.0
name = "gnss-locked"
duration_s = 600.0
alarms = []
seed = 42leo-vertical-polar-arctic.toml
Вертикаль LEO-PNT: пользователи в полярных районах и Арктике.
kind = "campaign"
title = "Polar and Arctic users with a polar LEO layer"
seed = 20260929
step_s = 60.0
name = "tromso"
duration_s = 3600.0
series = [
alarms = [{ channel = "position_error_m", compare = "above", threshold = 3.0 }]leo-vertical-rail-maritime.toml
Вертикаль LEO-PNT: железная дорога и море, встроенные морские и железнодорожные сценарии плюс LEO.
kind = "campaign"
title = "Railway and maritime with a LEO layer"
seed = 20260929
step_s = 10.0
name = "strait-jammed"
duration_s = 1800.0
kind = "jamming"
seed = 1cislunar-arc-recovery#
MODELLED проверка независимым оценивателем порога наблюдаемости по длине дуги в цислунном пространстве. Этот порог — РАНГ матрицы наблюдаемости, собранной из АНАЛИТИЧЕСКИХ строк якобиана дальности и АНАЛИТИЧЕСКОЙ вариационной матрицы перехода состояния, а его перекрёстная проверка квадратно-корневым информационным фильтром сворачивает те же самые строки: это проверка согласованности двух численных механизмов, а не подтверждение. Этот вид даёт недостающий арбитр: пакетный оцениватель по методу наименьших квадратов, который действительно ВОССТАНАВЛИВАЕТ начальное состояние ведущего аппарата по смоделированным измерениям, причём частные производные измерений берутся как ЦЕНТРАЛЬНЫЕ КОНЕЧНЫЕ РАЗНОСТИ составной прямой модели. Он не вызывает ни одной аналитической строки якобиана, ни вариационной матрицы перехода, ни сингулярного или собственного разложения, ни допуска по рангу, ни квадратно-корневого информационного фильтра — защита по исходному тексту в tests/cislunar_arc_recovery_reference.rs делает это проверяемым, — тогда как динамика (тот же поток RK4 CR3BP), начальные условия (та же дифференциально скорректированная группировка), скалярная наблюдаемая и сетка эпох сделаны общими намеренно и названы в выдаваемом блоке independence, потому что два анализа одной физической задачи должны согласоваться в физике, чтобы быть сопоставимыми. Два критерия, каждый перебирается в пяти декадах собственной границы: БЕЗШУМОВОЕ ВОССТАНОВЛЕНИЕ (конечная ошибка состояния каждого испытания с заданным seed не более recovery_factor, умноженного на его априорное смещение, — аналог ранга, без допуска по сингулярным числам) и ОЦЕНИВАЕМОСТЬ ПО МОНТЕ-КАРЛО (измеренная СКО ошибки положения по ансамблю шума с заданным seed ниже заданной границы — аналог оцениваемости, измеренный, а не предсказанный). Поддерживаются плоское четырёхмерное и пространственное шестимерное состояния, семейства DRO / гало L2 / NRHO L2, наблюдаемые дальность и скорость изменения дальности, а также полярная параметризация с центром в Луне, при которой преобразование применяется к СОСТОЯНИЮ, а прямая модель дифференцируется заново там. MEASURED на опубликованной плоской сетке DRO: оцениватель восстанавливает четырёхмерное состояние начиная с 0,782609 ч против 2,086957 ч по критерию ранга при rel_tol 1e-6 (отношение 0,375) — порог по рангу НЕ подтверждается как граница восстановимости, — тогда как измеренная граница оцениваемости попадает в ту же ячейку сетки, что и формальная, 5,739130 ч, а измеренная кривая ошибки воспроизводит формальную 1-сигму на 21 длинах дуги со средним геометрическим отношением 0,98. MODELLED: проект группировки, сетка эпох, единственная отслеживаемая линия, величина смещения, сигма измерения и две заданные границы. Не является сертифицированным продуктом для оценки навигационных характеристик.
cislunar-arc-recovery.toml
Проверка независимым оценивателем порога наблюдаемости длины дуги в цислунном пространстве (R6, статья B).
kind = "cislunar-arc-recovery"cislunar-observability#
MODELLED наблюдаемость плоской цислунной группировки (P6): отслеживает четырёхаппаратную дифференциально скорректированную группировку на плоских DRO с межспутниковыми измерениями дальности и сообщает, какая часть четырёхмерного состояния аппарата [x,y,ẋ,ẏ] становится наблюдаемой на дуге. Выдаёт (1) таблицу «ранг по длине дуги» для одной линии только по дальности — мгновенно ранг 1, растущий к полному четырёхмерному состоянию по мере удлинения дуги (P6, таблица 1); (2) собственный спектр грамиана наблюдаемости и число обусловленности по дуге; (3) сравнение мгновенного ранга «только дальность» и «дальность + скорость изменения дальности» (рычаг проектирования через эффект Доплера), а также выдачу GDOP: для «только дальность» — сингулярный, для «дальность + скорость» — определён; и (4) независимую перекрёстную проверку по SRIF, апостериорная ковариация которой становится конечной и хорошо обусловленной ровно на той дуге, где ранг наблюдаемости достигает четырёх. VALIDATED ядро: ранг наблюдаемости — это порог по сингулярным числам, выявляющий ранг, сверенный с собственным рангом грамиана; собственный спектр подчиняется спектральным инвариантам (след=Σλ, det=Πλ, Frobenius²=Σλ²); вариационная STM — это STM CR3BP, проверенная конечными разностями; строки якобиана дальности и скорости изменения дальности — это аналитические частные производные, проверенные конечными разностями (сверены с 3-D наблюдаемой скорости изменения дальности в крейте); четыре начальных условия — это дифференциально скорректированные плоские DRO, замыкающиеся с малой невязкой периодичности и ретроградные; переход ранга перекрёстно проверен квадратно-корневым информационным фильтром крейта (апостериорная ковариация конечна ровно при полном ранге, cond(P)=cond(OᵀO)); моментальный снимок с дефицитом ранга помечается как «GDOP не определён» (fim condition=inf), но никогда не выдаётся фиктивным конечным значением — та же защита от сингулярной геометрии, которую применяет pvt::solve_spp. MODELLED: проект группировки (амплитуды и фазы перилуны DRO) и конкретная последовательность рангов, которую он даёт. Не является сертифицированным продуктом для оценки навигационных характеристик.
cislunar-observability.toml
Наблюдаемость плоской цислунной группировки на дуге слежения (P6).
kind = "cislunar-observability"clock#
Holdover часов относительно спецификации; необязательный ансамбль Монте-Карло (runs > 1).
clock-ensemble.toml
Ансамбль Монте-Карло для сценария holdover часов.
seed = 42
threshold_ns = 20.0
runs = 200
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker floor modeled at sigma_y=1e-16"clock-fitted-log.toml
Сценарий часов, где классические часы берут шум из измеренного журнала ([clock_fit]).
seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30Пока нет на GitHub
clock-holdover.toml
Эталонный сценарий Kshana: прогон 2 ч, 10 мин синхронизации по GNSS, затем ~1,8 ч без неё. Белый частотный шум часов калиброван по опубликованному sigma_y(1 с): q_wf = sigma_y(1s)^2. Проверено по смоделированной девиации Аллана в tests/calibration.rs (~2%).
seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30clock-holdover-labsr.toml
Вариант: лабораторные оптические часы на стронции против CSAC. Лабораторные часы на Sr достигают sigma_y(1 с) = 4.8e-17 (Oelker et al. 2019, Nature Photonics).
seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-lab-sr"
provenance = "Laboratory Sr optical lattice clock, sigma_y(1s)=4.8e-17 (Oelker et al. 2019, Nature Photonics); q_wf=sigma_y(1s)^2; laboratory maturity, not flown; flicker/aging not modeled"
q_wf = 2.304e-33clock-measured-log.toml
Сценарий часов с измеренным журналом рядом с моделируемым holdover ([clock_log]).
seed = 42
threshold_ns = 20.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (Origlia/Schiller/Bongs et al., arXiv:1503.08457); q_wf=sigma_y(1s)^2; ground-demonstrator maturity, not flown; flicker/aging not modeled"
q_wf = 1.0e-30Пока нет на GitHub
combined-altpnt#
Комбинированный навигатор по гравитации, магнитному полю и рельефу при отсутствии GPS: три скалярных канала поля объединяются в каждой путевой точке, чтобы получить более точную (с меньшей границей Крамера — Рао) поправку на дрейф, чем по любому одному полю.
combined-altpnt.toml
Комбинированный навигатор без GPS по гравитации, магнитному полю и рельефу — объединённые альтернативные PNT.
kind = "combined-altpnt"
start_lat_deg = 12.05
start_lon_deg = 20.05
step_lat_deg = 0.004
step_lon_deg = 0.003
waypoints = 60
drift_lat_deg = 0.5
drift_lon_deg = -0.4conflict-resilience#
MODELLED устойчивость многоуровневых PNT к конфликту (P7): пользователь в оспариваемой среде располагает несколькими уровнями PNT (GNSS открытого сервиса, широкополосный GNSS, орбитальная группировка с аутентификацией, ретранслятор системы дополнения), у каждого из которых есть базовая доступность, точность 1σ и уязвимость к отказу по каждому вектору относительно общей угрозы подавления и спуфинга. СЛУЧАЙНЫЙ с начальным значением (seed) метод Монте-Карло с перебором интенсивности лишает каждый уровень сигнала с вероятностью clamp(vulnerability·intensity·vector_weight,0 1), объединяет уцелевшие по замкнутому правилу обратных дисперсий σ_fused=(Σ 1/σ_i²)^(−1/2) и сообщает вероятность полной потери (все уровни лишены сигнала), медианную объединённую ошибку и статистику пригодности и отказов по уровням в зависимости от интенсивности. Основной показатель устойчивости (отношение вероятности полной потери при одном уровне и при нескольких) достигает ~7x при допущении НЕЗАВИСИМОСТИ; затем однофакторный перебор коррелированных отказов по гауссовой копуле показывает, как это ~7x падает к 1 с ростом корреляции отказов (корреляция сводит на нет пользу многоуровневости). Блок чувствительности к априорным значениям варьирует основной показатель по ИМЕЮЩИМ ИСТОЧНИК априорным значениям уязвимости с помощью торнадо-диаграммы mcda + перераспределения усилий угрозы по Дирихле + процентильных доверительных интервалов. Ядро VALIDATED: полная потеря в Монте-Карло сходится к замкнутому произведению независимых вероятностей Π_i p_deny_i (в пределах стандартной ошибки МК при фиксированном seed и большом N); объединение по обратным дисперсиям — замкнутое тождество; при ρ=0 копула сводится к независимой модели, и каждое ρ сохраняет маргинальную долю отказов каждого уровня. MODELLED: величины уязвимости, доступности и точности по уровням — это имеющие источник, но Modelled входные данные (JammerTest 2024, TEXBAT, EASA SIB, RTCA DO-229, LunaNet/IOAG — см. conflict_threat_params), а конкретная величина ~7x и форма кривой «отношение — корреляция» следуют из этой параметризации. Затем разбивка выживаемости по векторам в § 4,2 раскладывает общую радиочастотную угрозу на четыре именованных вектора (подавление, спуфинг, кинетическое воздействие, кибервоздействие) и сообщает для каждого вектора кривую плавной деградации пригодного PNT S_v(x)=1-Prod_i(1-a_i(1-clamp(susceptibility_i,v·x,0 1))) — VALIDATED: посчитанная методом Монте-Карло с seed выживаемость по уровням сходится к этой замкнутой форме; подавление — самый острый вектор для коррелированного радиочастотного базового случая, а не зависящий от радиочастот инерциальный уровень — решающий уцелевший. Это не сертифицированный продукт по доступности навигации.
conflict-resilience.toml
Устойчивость многоуровневых PNT к конфликту (статья P7).
kind = "conflict-resilience"
trials = 4000
seed = 20260709
primary_layer = 0
min = 0.0
max = 1.0
steps = 11
values = [0.0, 0.2, 0.4, 0.6, 0.8, 0.95]constellation-design#
Проектирование орбитальных группировок в масштабе: схемы Walker DELTA и Walker STAR в обозначении i: T/P/F (узлы распределены на 360 или 180 град, расстояние в плоскости 360*P/T, сдвиг фаз между плоскостями 360*F/T), явные списки элементов и многооболочечные проекты, несколько орбитальных группировок в одном прогоне вокруг Земли, Луны, Марса или любой другой планеты, Плутона или крупного спутника с использованием констант из модуля body (тех же, что используют виды solar-system и body-pnt). ПРЕДУСТАНОВКИ по опубликованным номинальным элементам: gps-baseline и gps-expandable (24 слота и шесть расширяемых пар передних и задних слотов из GPS Standard Positioning Service Performance Standard, 5-е издание 2020 года, таблицы 3.2-1 — 3.2-3), galileo (Walker 24/3/1 на 29 599,801 км и 56 град, Galileo Open Service Service Definition Document, выпуск 1,1, таблицы 1 и 23), beidou и beidou-meo (Walker 24/3/1 на 21 528 км и 55 град плюс три геостационарных спутника на 80, 110,5 и 140 град в. д. и три наклонных геосинхронных спутника на 55 град, BeiDou Open Service Performance Standard 3,0, раздел 4,1; фаза MEO и пересечение наклонной геосинхронной орбитой 118 град в. д. смоделированы, потому что стандарт их не указывает) и glonass (24/3/1 на 19 100 км и 64,8 град по формуле слотов из GLONASS Interface Control Document, редакция 5,1, раздел 5,2). ПОКРЫТИЕ И ГЕОМЕТРИЧЕСКИЙ ФАКТОР: по сетке широт и долгот и выборочному окну с маской по углу места — число спутников в зоне видимости, GDOP, PDOP, HDOP и VDOP для каждой ячейки, доступность (решение с PDOP не выше порога, по умолчанию 6) для каждой ячейки, в глобальном масштабе (с весами по площади) и в наихудшем пункте, с одними часами приёмника на каждую орбитальную группировку, если не задано clock = "common". Метод масштабируется до тысяч спутников: видимость — это скалярное произведение с половинным углом покрытия каждого спутника, а спутники на каждой эпохе разбиваются на полосы по широте подспутниковой точки, поэтому строка сетки проверяет только те, которые могут быть в зоне видимости; отчёт подсчитывает сэкономленные проверки пар. JSON содержит карты сетки и прореженные трассы каждого спутника на поверхности. VALIDATED: генератор Walker — по таблице 23 Galileo OS SDD и формуле слотов GLONASS ICD, предустановка GPS — по опубликованному столбцу экваториального пересечения таблицы 3.2-1 SPS PS, а глобальное распределение HDOP базового варианта GPS — по приложению B SPS PS (медиана 0,94, 95% 1,25, среднее 0,96, допуск 0,03). MODELLED: двухтельные орбиты с необязательным секулярным J2, сферическое тело, только геометрическая видимость (без мощности сигнала, исправности и рельефа) и относительная фаза между разными системами, которая не является снимком какой-либо реальной даты.
constellation-multi-gnss-coverage.toml
Покрытие несколькими орбитальными группировками: четыре глобальные навигационные спутниковые системы (GNSS) вместе, в виде карты числа спутников в зоне видимости, геометрического фактора (DOP) и доступности по всей Земле за одни сутки.
kind = "constellation-design"
body = "earth"
duration_s = 86164.0
step_s = 900.0
mask_deg = 10.0
pdop_threshold = 6.0
grid_step_deg = 10.0
clock = "per-constellation"leo-pnt-mega-shell.toml
Мегагруппировка позиционирования, навигации и времени (PNT) на низких околоземных орбитах: 5 000 спутников в четырёх оболочках Уокера, оценённая как карта покрытия и геометрического фактора (DOP).
kind = "constellation-design"
body = "earth"
duration_s = 7200.0
step_s = 600.0
mask_deg = 20.0
pdop_threshold = 3.0
grid_step_deg = 10.0
clock = "common"lunar-relay-constellation.toml
Лунная ретрансляционная и навигационная группировка: спутники на эллиптических лунных замороженных орбитах (ELFO) плюс круговая оболочка на низкой окололунной орбите, оценённая как карта покрытия и геометрического фактора (DOP) по всей Луне за одни сутки.
kind = "constellation-design"
body = "moon"
duration_s = 86400.0
step_s = 1800.0
mask_deg = 10.0
pdop_threshold = 6.0
grid_step_deg = 10.0
clock = "common"contact-schedule#
Планирование наземных сеансов связи для нескольких спутников и нескольких станций: видимые окна доступа (SGP4, земная система координат IAU 2006/2000A, рефракция по ITU-R P.834, время распространения света), объём данных DVB-S2 ACM за каждый пролёт (пороги из ETSI EN 302 307-1, таблица 13) и расписание без конфликтов (один спутник на антенну с временем перенацеливания, одна станция на спутник, доставка с весами приоритета, ограниченная накопленным объёмом) жадным алгоритмом по предельной ценности, базовым вариантом «первым пришёл — первым обслужен» и точным методом ветвей и границ на малых наборах, с указанием разрыва оптимальности жадного алгоритма. MODELLED.
contact-schedule.toml
Планирование наземных сеансов связи: три иллюстративных спутника над тремя иллюстративными станциями в течение 12 часов. Прогон задаёт для каждого пролёта спутник — станция окно доступа и объём данных, который в нём может передать адаптивное кодирование и модуляция (ACM) DVB-S2 (пороги ETSI EN 302 307-1, таблица 13, плюс запас на реализацию). Затем он строит бесконфликтный план сеансов, в котором каждая антенна обслуживает один спутник за раз, с временем перенацеливания между сеансами, а каждый спутник передаёт данные на одну станцию за раз. Доставка взвешивается по приоритету и ограничивается накопившимся у каждого спутника объёмом. Три плана выводятся рядом: жадный по предельной ценности, базовый «первым пришёл — первым обслужен» и, если набор кандидатов мал, точный оптимум с разрывом оптимальности жадного плана.
kind = "contact-schedule"
epoch = [2024.0, 1.0, 1.0, 0.0, 0.0, 0.0]
duration_hours = 12.0
step_s = 30.0
refraction = true
light_time = true
frequency_ghz = 8.2
eirp_dbw = 7.0earth-gnss-lunar#
Приём сигналов Earth-GNSS на лунном расстоянии — слой слабого сигнала, который называет статья об устойчивости к конфликту и для которого у движка не было модели. Спутник GNSS направляет антенну на Землю; приёмник вблизи Луны находится примерно в пятнадцати орбитальных радиусах от него, поэтому одновременно действуют три фактора. Земля ЗАКРЫВАЕТ ГЛАВНУЮ ОСЬ: с 26 560 km она видна под половинным углом 13,9 deg, поэтому любой луч в сторону Луны должен покидать передатчик не менее чем на этот угол от надира, что убирает пик диаграммы ещё до расчёта мощности. Остаются КРАЙ ГЛАВНОГО ЛЕПЕСТКА И БОКОВЫЕ ЛЕПЕСТКИ, режим, в котором полезная нагрузка LuGRE фактически работала в 2025. А потери в свободном пространстве на L1 составляют около 208 dB, примерно на 25 dB больше, чем у наземного пользователя. Отчёт выдаёт по одной строке на спутник (угол от оси, затмение Землёй, дальность, потери на трассе, коэффициент усиления передатчика под этим углом, принятая мощность, отношение несущей к плотности шума) и агрегирует только линии, превышающие порог слежения. ОН ТАКЖЕ СООБЩАЕТ ОБУСЛОВЛЕННОСТЬ, потому что именно она определяет этот слой: все видимые спутники лежат внутри конуса шириной в пару градусов, если смотреть с Луны, поэтому линии визирования почти параллельны, геометрический фактор DOP огромен, и решение Earth-GNSS на лунном расстоянии — это наблюдение класса СИНХРОНИЗАЦИИ ВРЕМЕНИ, а не класса определения положения. MODELLED, причём причина в диаграмме передачи: усиление под углом задаётся равномерной круглой апертурой (диск Эйри), тогда как настоящая антенна GPS L1 — двенадцатиэлементная спиральная решётка с профилированным главным лепестком и неэйриевыми боковыми лепестками. Измеренные диаграммы существуют, но здесь не включены, поэтому порядки величин и упорядочение осмысленны, а дБ для отдельного спутника — нет. Намеренно ОТСУТСТВУЮТ, и каждый из этих факторов делает бюджет оптимистичным: нет ионосферных и тропосферных потерь на лучах, скользящих по лимбу, нет потерь на поляризацию, наведение и реализацию, а Земля сферическая, без рефракционного расширения. Положение Луны — ВХОДНОЕ значение (дальность и инерциальное направление), а не выборка из эфемерид, потому что проверяется линия связи и геометрия луча. Чтобы перевести эту строку в Validated, нужны измеренная диаграмма передачи и нормальные точки LuGRE; ни того, ни другого нет в репозитории, и здесь они не выдуманы.
earth-gnss-lunar.toml
Приём GNSS Земли на лунном расстоянии.
kind = "earth-gnss-lunar"
altitude_km = 20180.0
inclination_deg = 55.0
planes = 6
sats_per_plane = 4
phasing_f = 2.0
epoch_s = 0.0
receiver_range_m = 384400000.0entry-heating#
3-DoF вход в атмосферу материальной точки над вращающейся сферической Землёй или Марсом (баллистический или с подъёмной силой при постоянном крене), RK4, через US76, экспоненциальную атмосферу или атмосферу Марса, с конвективным нагревом в точке торможения по Саттону–Грейвсу (NASA TR R-376): пиковое замедление, тепловой поток и скоростной напор, тепловая нагрузка, дальность по поверхности, проверка энергии во вращающейся системе и рядом с ними замкнутая форма Аллена–Эггерса. Пиковое замедление проверено по опубликованному номиналу Stardust; нагрев — MODELLED.
entry-heating-stardust.toml
Вход возвращаемой капсулы Stardust: опубликованный случай, по которому проверяется вид entry-heating (xval/entry-stardust/PREREGISTRATION.md; tests/entry_stardust_published.rs).
kind = "entry-heating"
body = "earth"
atmosphere = "us76"
entry_interface_altitude_m = 125003.0
velocity_frame = "inertial"
entry_speed_m_s = 12900.0
flight_path_angle_deg = 8.2
latitude_deg = 41.0eo-coverage#
Геометрия охвата и полосы захвата полезной нагрузки наблюдения Земли (космический треугольник SMAD): угловой радиус Земли, ширина полосы захвата, расстояние между выборками на местности в надире, максимальный доступ вне надира, период круговой орбиты, узловой период с учётом J2 и расстояние между экваториальными трассами с признаком сплошного покрытия — для заданных высоты орбиты, наклонения (по умолчанию солнечно-синхронное) и поля зрения датчика FOV/IFOV. MODELLED геометрия сферической Земли (без радиометрии, MTF, атмосферы, дрожания и бликов); расстояние между узлами R_e·(ω − Ω̇)·T_nodal с вековыми скоростями J2 первого порядка.
eo-coverage.toml
Демонстратор полосы захвата и покрытия полезной нагрузки наблюдения Земли (космический треугольник SMAD).
kind = "eo-coverage"
altitude_km = 700.0
half_fov_deg = 7.5
ifov_microrad = 14.0
max_off_nadir_deg = 45.0eo-radiometry#
Радиометрия и качество изображения надирного формирователя изображений: яркость сцены по Ламберту на апертуре, уравнение камеры, сигнал и дробовой, темновой, считывания и квантования шум и SNR; системная MTF на частоте Найквиста (дифракция x детектор x смаз x дрожание), относительный отклик на край из неё, Q = lambda F/p и NIIRS по GIQE версии 4 без компенсации MTF. MODELLED.
eo-radiometry.toml
Радиометрия и качество изображения надирного формирователя изображений для ILLUSTRATIVE малой камеры наблюдения Земли (проекта какого-либо оператора нет): апертура 0,40 м, фокусное расстояние 3,6 м (F/9), пиксели 5,5 мкм, с высоты 500 км. Прогон выдаёт бюджет отношения сигнал/шум для сцены с отражательной способностью 15 %, системную MTF на частоте Найквиста, относительный отклик на границе и NIIRS по GIQE версии 4. MODELLED: NIIRS — эмпирическая регрессия, вычисленная по смоделированным входным данным, а не оценка реального изображения.
kind = "eo-radiometry"
altitude_m = 500000.0
focal_length_m = 3.6
aperture_m = 0.40
pixel_pitch_um = 5.5
wavelength_um = 0.65
bandwidth_um = 0.2
fill_factor = 1.0ephemeris#
Эфемериды и трасса на поверхности: распространение орбиты одного спутника (TLE→SGP4 или аналитическая орбита) с выдачей его состояния TEME/GCRS (положение + скорость), положения в ITRF/ECEF, подспутниковых широты, долготы и высоты WGS-84 и азимута, угла места, дальности и скорости изменения дальности (Доплер) станции на каждом шаге. Спутник берётся из tle или из аналитической orbit с её epoch (tle имеет приоритет, если заданы обе); при наличии tle параметр epoch переопределяет собственную эпоху TLE как t = 0.
ephemeris.toml
Эфемериды и трасса на поверхности — «где спутник прямо сейчас».
kind = "ephemeris"
tle = """
step_s = 30.0
duration_s = 16740.0
xp_arcsec = 0.0
yp_arcsec = 0.0
lat_deg = 49.8707
lon_deg = 8.6217fusion#
Совместное комплексирование PNT фильтром Калмана по тем же гибридным входным данным.
fusion-pnt.toml
Совместное слияние датчиков для PNT: единый фильтр Калмана служит навигатором, объединяя состояния часов и инерциальные состояния и опираясь на оптическую передачу времени по межспутниковой линии, вместо композиции независимых предикторов. GNSS недоступна 1,8 ч.
kind = "fusion"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = truefusion-pnt-coupled.toml
Связанное совместное слияние датчиков для PNT: те же наборы и тот же отказ GNSS, что в fusion-pnt.toml, но навигатором служит ОДИН составной фильтр Калмана по положению, скорости, фазе часов, частоте часов и смещению акселерометра (таблица [coupled]). Пока GNSS в норме, он принимает псевдодальности, каждая rho = g * position + c * clock phase + noise вдоль множителя линии визирования g, так что одно измерение ограничивает положение и часы совместно, а фильтр хранит их взаимную ковариацию; повторные синхронизации оптической передачи времени во время отказа — это псевдодальности только по часам. Акселерометры здесь имеют постоянное смещение, которое состояние смещения изучает до отказа (fusion-pnt.toml обнуляет смещения, потому что у его фильтров нет состояния смещения). Не привязано к производителю; параметры часов и шума — как в fusion-pnt.toml, смещения иллюстративные. MODELLED.
kind = "fusion"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = truegnss-ins#
EKF по вектору ошибок для слабо и тесно связанной системы GNSS/INS.
automotive-urban-canyon.toml
Дорожное транспортное средство в городском каньоне: счисление пути GNSS/INS через подземный переезд и придорожный источник подавления, относительно бюджета на уровне полосы движения.
kind = "gnss-ins"
seed = 7
threshold_m = 1.5
fix_interval_s = 1.0
sigma_pos_m = 1.0
sigma_vel_mps = 0.05
lat_deg = 48.137
lon_deg = 11.575gnss-ins.toml
Слабосвязанная GNSS/INS: трёхосный бесплатформенный навигатор, корректируемый EKF по ошибкам с 15 состояниями, затем выбег в течение отказа GNSS длительностью 60 с. В отличие от пакета inertial (скалярный счислитель 1-DOF с обнулением по истине при каждом решении) здесь работает настоящий замкнутый фильтр: он обучается по зашумлённым решениям, пока GNSS доступна, и выбегает по скорректированному состоянию во время перерыва. Приведённая ошибка — это реальный горизонтальный остаток относительно истины; каждый датчик также несёт свою СКЗ свободной INS без обратной связи, чтобы ценность фильтра была наглядной.
kind = "gnss-ins"
seed = 7
threshold_m = 50.0
fix_interval_s = 1.0
sigma_pos_m = 1.0
sigma_vel_mps = 0.05
lat_deg = 45.0
lon_deg = -57.3gnss-ins-aviation.toml
Авиационная GNSS/INS с тесной связью: лёгкий самолёт взлетает, набирает высоту под углом 6 град, выходит в горизонтальный полёт и выполняет координированный разворот с креном 25 град (профиль траектории aircraft); GNSS недоступна две минуты, охватывающие разворот, самую трудную часть выбега, поскольку ошибки курса и ориентации тогда проецируются на горизонталь. Тесная связь ([tight]) на GPS-подобной группировке Walker по SGP4.
kind = "gnss-ins"
seed = 13
threshold_m = 100.0
fix_interval_s = 1.0
sigma_pos_m = 3.0
sigma_vel_mps = 0.1
lat_deg = 52.0
lon_deg = 5.0gnss-ins-maritime.toml
Морская GNSS/INS: судно со скоростью 8 м/с (около 15,5 уз), выписывающее полные круги с угловой скоростью 1 град/с, затем пятиминутный отказ GNSS на том же замкнутом 15-состоянийном фильтре GNSS/INS, что и gnss-ins.toml. Движение берётся из библиотеки траекторий ([trajectory], профиль figure8): медленный равномерный разворот, режим судна, а не автомобиля.
kind = "gnss-ins"
seed = 11
threshold_m = 50.0
fix_interval_s = 1.0
sigma_pos_m = 2.0
sigma_vel_mps = 0.1
lat_deg = 54.0
lon_deg = 10.0gnss-ins-rail.toml
Железнодорожная GNSS/INS с тесной связью: поезд идёт между остановками со скоростью 30 м/с по мягким кривым 20 град (профиль траектории stop_go), проходит глубокую выемку, где в зоне видимости остаются только два спутника, затем двухминутный тоннель. Приёмник тесно связан ([tight]): он продолжает использовать псевдодальности двух спутников, которые ещё сопровождает в выемке, где слабосвязанный приёмник не имеет решения вовсе. Спутники берутся из GPS-подобной группировки Walker по SGP4.
kind = "gnss-ins"
seed = 12
threshold_m = 30.0
fix_interval_s = 1.0
sigma_pos_m = 2.0
sigma_vel_mps = 0.1
lat_deg = 48.0
lon_deg = 11.0gnss-sim#
Имитация псевдодальностей в области измерений (Klobuchar, ионосфера; Saastamoinen/Niell, тропосфера) + RAIM.
gnss-sim-container-terminal-skyline.toml
Псевдодальности и RAIM для портального перегружателя на контейнерном причале, с судо-береговыми кранами со стороны моря и штабелями контейнеров со стороны суши: сценарий gnss-sim под предустановкой горизонта container-terminal.
kind = "gnss-sim"
seed = 7
mask_deg = 5.0
noise_sigma_m = 1.5
multipath_m = 0.5
sat_clock_rms_m = 30.0
uere_m = 3.0
p_fa = 1.0e-5gnss-sim-raim.toml
Моделирование GNSS в области измерений: псевдодальности с ионосферной и тропосферной задержками, поданные на моментальный RAIM для уровней защиты.
kind = "gnss-sim"
seed = 7
mask_deg = 5.0
noise_sigma_m = 1.5
multipath_m = 0.5
sat_clock_rms_m = 30.0
uere_m = 3.0
p_fa = 1.0e-5gnss-ssv#
MODELLED доступность GNSS и уровень сигнала в космической зоне обслуживания (Space Service Volume) и за её пределами: для пользователя на сфере (глобальная оболочка из буклета ICG) или на кеплеровой траектории (от низкой околоземной орбиты до лунного перелёта) подсчитываются по каждой орбитальной группировке (GPS, GLONASS, Galileo, BDS, QZSS, NavIC) и по всем вместе сигналы, пригодные при C/N0 выше порога, — доступность не менее одного и не менее четырёх сигналов, максимальная длительность перерыва, принимаемое C/N0, геометрический фактор DOP, линии связи по главному и боковым лепесткам — с диаграммой передачи из буклета, параметрической или заданной пользователем, необязательными эффектами ионосферы вдоль касательного луча, плазмосферы и атмосферы и необязательной конструкцией приёмника для слабых сигналов; а также бортовой расширенный фильтр Калмана GNSS для аппаратов на HEO и на лунном перелёте (орбитальная динамика, давление солнечного излучения, третьи тела, часы) и относительная навигация группы из нескольких аппаратов по однократно разностным псевдодальностям. Проверено по таблицам буклета ICG SSV в рамках предварительной регистрации (xval/gnss-ssv)
gnss-ssv-formation-heo.toml
Относительная навигация построения из трёх аппаратов на сильно эллиптической орбите из буклета.
kind = "gnss-ssv"
name = "HEO formation relative navigation (reduced length)"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
preset = "heo"
duration_min = 400.0
step_s = 60.0
antennas = ["booklet-high-gain-nadir", "booklet-patch-zenith"]gnss-ssv-heo.toml
Сильно эллиптическая орбита сквозь орбиты GNSS: что видит пользователь от перигея до апогея.
kind = "gnss-ssv"
name = "HEO, high-gain nadir and patch zenith antennas, parametric sidelobes, limb medium"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
pattern = "parametric"
preset = "heo"
duration_periods = 1.0
step_min = 10.0gnss-ssv-lunar-weak.toml
GNSS на лунной траектории перелёта с приёмником слабых сигналов, оправдывающим свою чувствительность.
kind = "gnss-ssv"
name = "Lunar transfer, weak-signal receiver, parametric sidelobes"
include = ["gps", "galileo", "glonass", "bds"]
bands = ["l1", "l5"]
pattern = "parametric"
apply = "acquisition"
t_coh_s = 0.1
n_noncoherent = 100.0gnss-ssv-shell.toml
Доступность сигналов GNSS на верхней оболочке SSV: глобальная метрика из буклета в размере, который считается за секунду.
kind = "gnss-ssv"
name = "Upper SSV shell, 20 dB-Hz (reduced size)"
include = ["gps", "glonass", "galileo", "bds"]
bands = ["l1", "l5"]
altitude_km = 36000.0
antenna = "hemisphere"
grid_levels = 2
duration_min = 4320.0gravity-map#
Навигация по гравитационной карте без GPS: гравиметр на холодных атомах восстанавливает постоянный дрейф INS по последовательности гравитационных аномалий, через которые проходит траектория.
gravity-map-error-mc.toml
Монте-Карло по ошибке карты для 60-минутного бенчмарка навигации по гравитационной карте без GPS (WP-10, RM-15).
kind = "gravity-map"
nmax = 3
start_lat_deg = 10.0
start_lon_deg = 20.0
step_lat_deg = 0.06
step_lon_deg = 0.045
waypoints = 90
drift_lat_deg = 0.5holdover-test#
MODELLED испытание holdover системы синхронизации времени, оцениваемое по записи ошибки времени, которую предоставляет ОПЕРАТОР (журнал linuxptp ptp4l, phc2sys или ts2phc, журнал отслеживания или статистики chrony, журнал часов TICC, TimeLab или RINEX либо пары time_s,time_error_ns). Испытание состоит из четырёх шагов, и Kshana не выполняет ни один из них: захваченный БАЗОВЫЙ режим, ОТКЛЮЧЕНИЕ GNSS оператором (антенный кабель или выход имитатора; Kshana ничего не передаёт и ничем не управляет) в заданный момент, HOLDOVER на собственном генераторе системы и ВОССТАНОВЛЕНИЕ после того, как оператор вернёт GNSS во второй заданный момент. Запись разделяется по этим двум моментам. Базовый режим: статистика ошибки времени и маски ITU-T, написанные для захваченных часов. Holdover: статистика, доля частотного смещения, которое система удерживала (прямая по методу наименьших квадратов), маски, написанные для holdover или автономных часов, огибающая holdover ePRTC-A по заданной длительности захвата и время до превышения каждого бюджета ошибки времени. Восстановление: вошла ли |TE| в заданную полосу и когда, и оставалась ли в ней, пик и наибольший скачок. Каждый предел переписан из общедоступной таблицы ITU-T (маски синхронизации в телекоммуникациях); формулировка — «измерено относительно маски», а оба момента — заявление оператора, они не проверяются. Запись, слишком короткая для маски, получает статус INCOMPLETE и никогда не экстраполируется. См. docs/TIMING-HIL.md.
holdover-test-example.toml
Испытание holdover, пример загрузки данных: запись ошибки времени, оцениваемая видом holdover-test («отключить антенну, оценить holdover»). Запись делится в два момента, которые указывает ОПЕРАТОР, здесь GNSS отключена на 600 с и восстановлена на 2 400 с, и каждый шаг измеряется по маскам ITU-T, написанным для него.
kind = "holdover-test"
masks = ["prtc-a", "eprtc-a-holdover"]
gnss_removed_s = 600.0
gnss_restored_s = 2400.0
locked_duration_days = 5.0
recovery_band_ns = 100.0
recovery_dwell_s = 60.0
samples = [holdover-test-ptp4l.toml
Испытание holdover по журналу linuxptp: те же четыре шага, что в holdover-test-example.toml, с записью, считываемой из журнала сервопривода ptp4l через [series.clock_log] (формат "ptp4l", смещения в нс, собственные метки времени демона, здесь с интервалом 5 с).
kind = "holdover-test"
masks = ["prtc-a", "eprtc-a-holdover"]
gnss_removed_s = 600.0
gnss_restored_s = 2400.0
locked_duration_days = 5.0
recovery_band_ns = 100.0
recovery_dwell_s = 60.0
format = "ptp4l"hybrid#
Гибридный итоговый PNT: часы + IMU + поддержка передачей времени.
hybrid-pnt.toml
Гибридный итоговый сценарий PNT: полностью квантовый набор (оптические часы + холодноатомный IMU + поддержка оптической передачей времени по межспутниковой линии) против полностью классического набора (CSAC + IMU навигационного класса + РЧ). GNSS недоступна 1,8 ч.
kind = "hybrid"
seed = 42
timing_spec_ns = 20.0
position_spec_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
enabled = truehybrid-optical-rf#
MODELLED гетерогенный совместный показатель качества оптического и радиочастотного PNT (P5): объединяет двусторонний бюджет оптической линии связи на 1550 нм (фотонно-ограниченная нижняя граница Крамера–Рао CRLB для двусторонней дальнометрии σ_τ/√N и дифракционный след λ/D·дальность), уровень защиты RAIM с разделением решений между модальностями (по положению И по времени), объединяющий слабосвязанное радиочастотное и тесносвязанное оптическое решения с различными ковариациями, оптическую доступность ясного неба для N станций (независимое объединение 1−Π(1−a_i) и вариант с пространственной корреляцией), передачу состояния и ковариации между оптикой и РЧ с ДОКАЗАННЫМ побитно непрерывным (без скачка) средним и проверкой согласованности NEES χ², а также совместную оценку P(доступно И прецизионный класс И целостность обеспечена) с учётом корреляций. VALIDATED замкнутая форма: нижняя граница CRLB дальнометрии, дифракционный след, квантиль уровня защиты χ², комбинаторика объединения, непрерывность среднего при передаче + проверка NEES и совместное независимое произведение. MODELLED: распределение оптических потерь, величины σ для РЧ и оптики, входные данные климатологии облачности, корреляции и бюджет P_HMI. Не является сертифицированным продуктом по доступности и целостности.
hybrid-optical-rf.toml
Совместные доступность / прецизионность / целостность гетерогенных оптических и РЧ PNT (P5).
kind = "hybrid-optical-rf"
wavelength_nm = 1550.0
tx_power_w = 1.0e-3
tx_aperture_m = 0.85
rx_aperture_m = 0.85
range_km = 384000.0
pulse_rms_ps = 50.0
integration_s = 1.0hybrid-ukf#
17-state гибридный квантово-классический тесно связанный UKF GNSS/INS (MODELLED): 15 состояний ошибок INS + поправка смещения акселерометра на основе CAI + 2-state (фаза + частота) модель часов из движка q-параметров часов, управляемая ограниченной моделью ошибок CAI. Показатель качества — самосогласованность фильтра (NEES + белизна инноваций относительно границ χ²): это утверждение о самосогласованности, а НЕ гарантия точности в реальных условиях. Только моделирование; без TRL>3, без лётного опыта, без внешней валидации.
hybrid-ukf.toml
17-мерный гибридный квантово-классический UKF для тесно связанной GNSS/INS (MODELLED).
kind = "hybrid-ukf"
seed = 1771
speed_m_s = 100.0
sigma_pr_m = 1.0
sigma_rr_mps = 0.05
consistency_seeds = 24
q_factor = 1.0
r_factor = 1.0impairment-eval#
Испытательный стенд оценки машинного обнаружения RF-нарушений (13494): генерирует размеченный, обоснованный параметрами СИНТЕТИЧЕСКИЙ корпус (nominal/jamming/spoof-time/spoof-position/multipath), оценивает детектор (energy|agc|sqm|parity|fused) универсальной по отношению к детектору обвязкой и сообщает AUC/ROC/матрицу ошибок + Pd по классам при целевом Pfa, а также разрыв оптимизма между данными внутри и вне распределения. Только рабочие характеристики MODELLED — никогда не полевые данные/IQ, без вердикта «хорошо/плохо».
impairment-eval.toml
Испытательный стенд для оценки обнаружения радиочастотных искажений на основе машинного обучения (демонстратор ESA AO/1-13494).
kind = "impairment-eval"
seed = 42
n_per_class = 200
meas_noise = 0.6
detector = "fused"
target_pfa = 0.05
shift_severity_scale = 0.5
optimism_tol = 0.05inertial#
Инерциальное счисление пути (1-DOF) во время пропадания GNSS.
imu-deadreckoning.toml
Счисление пути при отказе GNSS: холодноатомный квантовый акселерометр против акселерометра навигационного класса. Смещение = остаток после калибровки по GNSS = опубликованная стабильность смещения; q_va = (корень из спектральной плотности шума)^2.
kind = "inertial"
seed = 42
threshold_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "cold-atom-quat"
provenance = "Exail hybrid quantum accelerometer triad: bias stability 6e-8 g = 5.88e-7 m/s^2 after 24 h (Templier et al., Science Advances 2022, arXiv:2209.13209); noise 22 ug/sqrtHz = 2.16e-4 (m/s^2)/sqrtHz; laboratory maturity, not deployed"quantum-cai-coast.toml
Квантовая предустановка: акселерометр на холодноатомном интерферометре (CAI), построенный по физике интерферометра, против кварцевого акселерометра навигационного класса при отказе GNSS. Одномерный выбег со счислением пути: 10 минут GNSS, затем 110 минут без неё.
kind = "inertial"
seed = 20261013
threshold_m = 100.0
step_s = 10.0
duration_s = 7200.0
windows = [
id = "cold-atom-interferometer"
provenance = "Cold-atom (Rb-87 D2) interferometric accelerometer: q_va derived from the [accel_quantum.cai] parameters, a bracket in the GAIN/MAIUS literature range (Freier et al. arXiv:1512.05660; Becker et al. Nature 2018); residual bias 5.88e-7 m/s^2 = the 6e-8 g bias stability of a laboratory hybrid quantum accelerometer (Templier et al., Science Advances 2022, arXiv:2209.13209). Laboratory maturity, not deployed."ins-trn-coast#
Модель ошибок выбега INS/TRN: ошибка позиции в зависимости от длительности выбега, построенная по коэффициентам IMU, а не перебором предполагаемой скорости дрейфа. Пять составляющих роста — смещение акселерометра, наклон от смещения гироскопа через силу тяжести, случайное блуждание скорости, случайное блуждание угла и масштабный коэффициент относительно пройденного расстояния — каждая распространяется через девятисостоянийную инерциальную модель ошибок в местной горизонтной системе с обратной связью Шулера на заданных широте и высоте (рядом приводятся законы главного порядка для короткого выбега t², t³, t^1,5, t^2,5 и t¹/t²) и объединяются по ЗАДАННОМУ правилу (по умолчанию корень из суммы квадратов, либо линейная сумма, либо детерминированная сумма со стохастическим rss; все три вычисляются при каждом прогоне, чтобы выбор был виден, а не скрыт). Длительности выбега, при которых достигаются заданные вызывающей стороной пороги позиции (по умолчанию 10 m и 50 m), находятся уже имеющимся в движке методом бисекции, каждая с разбивкой по составляющим, называющей доминирующий источник, а пересечение каждой отдельной составляющей дополнительно обращается алгебраически, чтобы обе оценки совпадали. Режим навигации по рельефу местности (TRN) ограничивает выбег периодическими фиксациями позиции и сообщает наибольший интервал между фиксациями, при котором выдерживается каждый порог; фиксация только по позиции оставляет ошибку скорости и наклон после фиксации живыми, поэтому она не всегда ограничивает выбег при любой частоте фиксаций, и отчёт говорит об этом, а не возвращает ноль. MODELLED: коэффициенты класса IMU — репрезентативные значения диапазона, а не паспортные данные, а остаток фиксации по рельефу является входными данными. Недостигнутый порог сообщается как null со статусом, а никогда не как ноль. Это не сертифицированный продукт оценки характеристик инерциальной навигации.
ins-trn-coast.toml
Модель ошибки выбега INS/TRN — ошибка положения в зависимости от длительности выбега и длительности выбега, при которой она пересекает 10 м и 50 м.
kind = "ins-trn-coast"
imu_grade = "navigation"
speed_m_s = 250.0
combination = "rss"
crossing_thresholds_m = [10.0, 50.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "position-only"maritime-port-approach-coast.toml
Заход в порт на море при подавленной GNSS: как долго инерциальная навигационная система (INS) удерживает судно в пределах бюджета точности захода в гавань после потери глобальной навигационной спутниковой системы (GNSS).
kind = "ins-trn-coast"
imu_grade = "navigation"
speed_m_s = 6.17
combination = "rss"
crossing_thresholds_m = [10.0, 100.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "none"rail-tunnel-coast.toml
Выбег в железнодорожном тоннеле: как долго инерциальная навигационная система (INS) поезда удерживает его в пределах бюджета различения путей без глобальной навигационной спутниковой системы (GNSS) в тоннеле.
kind = "ins-trn-coast"
imu_grade = "tactical"
speed_m_s = 44.4
combination = "rss"
crossing_thresholds_m = [2.0, 20.0]
drift_band_lo_m_per_s = 0.001
drift_band_hi_m_per_s = 0.050
trn_fix_mode = "none"integrity#
Снимковый / с разделением решений / ARAIM RAIM с HPL/VPL и диаграммой Стэнфорда.
araim-gps-galileo.toml
Доступность ARAIM для двух орбитальных группировок: GPS + Galileo, оценённые усовершенствованным механизмом ARAIM, включая гипотезу об отказе всей орбитальной группировки (araim_dual).
kind = "integrity"
mask_deg = 5.0
sigma_uere_m = 0.75
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0
araim_dual = trueintegrity-harbour-approach.toml
Доступность ARAIM для судна, входящего в гавань: вид integrity с пользователем в наземном пункте (user_site) под предустановкой горизонта harbour-approach.
kind = "integrity"
seed = 7
mask_deg = 5.0
sigma_uere_m = 1.0
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0integrity-raim.toml
Доступность целостности GNSS (RAIM) на орбитальной группировке типа GPS.
kind = "integrity"
seed = 7
mask_deg = 5.0
sigma_uere_m = 1.0
p_fa = 1.0e-5
p_md = 1.0e-3
al_h_m = 40.0
al_v_m = 50.0jamming#
Подавление по бюджету линии: J/S → эффективное C/N₀ → потеря захвата.
jamming-demo.toml
Радиочастотное подавление (jamming): наземный широкополосный генератор помех лишает GNSS находящийся рядом приёмник.
kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 30.0
duration_s = 1800.0
lat_deg = 52.0
lon_deg = 4.0jamming-harbour-approach-skyline.toml
Судно, входящее в гавань под берегным источником подавления, причём здания на причале впереди закрывают низкие спутники в этом направлении: сценарий jamming под предустановкой горизонта harbour-approach.
kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 60.0
duration_s = 21600.0
lat_deg = 59.80
lon_deg = 24.90maritime-strait-jamming.toml
Морское подавление GNSS: береговой или судовой широкополосный источник подавления, лишающий глобальную навигационную спутниковую систему (GNSS) судно, идущее по открытой воде.
kind = "jamming"
seed = 1
mask_deg = 5.0
tracking_threshold_dbhz = 25.0
step_s = 30.0
duration_s = 1800.0
lat_deg = 59.80
lon_deg = 24.90launch-window#
Геометрия запуска и выведения в двухтельной постановке: азимут(ы) запуска (sin Az = cos i / cos lat), минимальное достижимое наклонение, круговая скорость, восточная прибавка от вращения Земли, изменение скорости Δv на доворот плоскости (dogleg), когда наклонение цели меньше широты площадки, и число ежесуточных возможностей запуска. Геометрия сферической Земли уровня MODELLED (без поправки на скоростной треугольник вращающейся Земли, без модели потерь на выведение/сопротивление).
launch-window.toml
Демонстратор окна запуска и геометрии выведения (анализ миссии, уровень сравнительного исследования).
kind = "launch-window"
site_lat_deg = 28.5
target_inclination_deg = 51.6
altitude_km = 400.0leo-navmsg#
Навигационное сообщение LEO: передаваемые эфемериды и поправка часов спутника позиционирования, навигации и времени на низкой околоземной орбите (LEO) для любой орбиты, несущей и модели, с необязательными именованными пресетами (Xona Pulsar, Iridium, Starlink, CentiSpace, репрезентативная система C-диапазона, модель ATOMIC с нулевыми часами, Celeste IOD). СОДЕРЖИМОЕ: вспомогательные данные (SVID, выпуск данных, диапазон, признак исправности сигнала), синхронизация (неделя, время недели, полином часов второго порядка af0-af2 относительно toc), эфемериды в одной из четырёх моделей -- 16-параметрический кеплеровский набор из Galileo OS SIS ICD; этот набор плюс полиномы поправок вдоль трека, поперёк трека и радиальных; 22-параметрическая модель Liu et al. 2025; полином в ECEF без членов часов (ATOMIC с нулевыми часами) -- и прочие службы (вещательный набор Klobuchar, NeQuick-G ai0-ai2 с эффективным уровнем ионизации и параметры перехода от системного времени к UTC с логикой високосной секунды по ICD). ПОДГОНКА: истинная орбита, проинтегрированная с зональной гравитацией J2-J6 или EGM2008 до выбранной степени и с сопротивлением, и заданные начальным значением (seed) свободные или управляемые часы; подгонка кеплеровского набора методом Левенберга — Марквардта по неособенным элементам, затем линейные поправочные полиномы по методу наименьших квадратов; часы подгоняются за вычетом релятивистского члена, который добавляет пользователь. АНАЛИЗЫ: fit-interval-trade (ошибка дальности в сигнале в пространстве, SISRE, с глобально усреднёнными весами для высоты орбиты, в зависимости от интервала подгонки и периода обновления, только по орбите и с часами), model-comparison (четыре модели, число параметров, кодированные биты и подгонка Kshana на высотах Liu et al. рядом с опубликованными значениями), midpass-update (самый высокий пролёт над пользователем, скачок позиции, часов и дальности пользователя при каждой смене сообщения, скачок при наихудшей геометрии, PASS/FAIL относительно порога непрерывности), encode-decode (собственный документированный двоичный кадр Kshana с CRC-24Q, бюджет квантования с полушагом по каждому полю, проверка повреждённого кадра, экспорт и импорт записи в стиле RINEX-4, помеченный как расширение Kshana, и таблица CSV). VALIDATED: веса SISRE по опубликованной таблице MEO/GEO (Montenbruck et al. 2018); пользовательский алгоритм Galileo по RTKLIB на реальных вещательных эфемеридах Galileo; CRC-24Q по контрольному значению каталога и примеру кадра RTCM 1005. MODELLED: каждое значение подгонки и SISRE — это ошибка представления относительно истины, проинтегрированной Kshana (без ошибки определения или прогноза орбиты); сравнение с Liu et al. использует другие орбиты; форматы кодирования и текстовые форматы — собственные для Kshana.
leo-pass#
Пролёт LEO и бюджет линии по диапазонам для LEO-PNT (позиционирование, навигация и время с низкой околоземной орбиты), независимо от системы: пользователь (наземный, морской, воздушный или в помещении, неподвижный или движущийся) и один или несколько спутников LEO из DESIGNED PASS (расчётного пролёта: круговая орбита, расположенная так, что пользователь видит один пролёт с выбранным максимальным возвышением в выбранное время, солнечно-синхронная по запросу), явных ЭЛЕМЕНТОВ, TLE (двухстрочный набор элементов) через SGP4 движка или орбитальной группировки WALKER, построенной кодом проектирования группировок (сообщаются самые высокие пролёты). Диапазоны берутся из именованного пресета (универсальный многодиапазонный UHF/L/S/C, универсальный C-диапазон, Xona Pulsar X1/X5, Iridium STL, Starlink как сигнал возможности только по Доплеру, CentiSpace и необязательный пресет Celeste IOD с пометкой «WORKSHOP») или записываются в сценарий; каждый пресет указывает, являются ли его числа PUBLIC (с URL), REPRESENTATIVE или WORKSHOP. По каждому спутнику, диапазону и эпохе: возвышение, азимут, дальность, скорость изменения дальности и ускорение дальности; потери в свободном пространстве; EIRP и усиление диаграммы спутника (изопоток, гауссов луч или плоская); усиление антенны пользователя по возвышению (патч, полусферическая или изотропная); газовое затухание (ITU-R P.676-10 Annex 2), затухание в дожде (коэффициенты ITU-R P.838-3 и процедура P.618-14 по интенсивности и высоте дождя), тропосферная сцинтилляция (ITU-R P.618-14 section 2.4.1), потери проникновения в здание для пользователя в помещении (ITU-R P.2109-2), поляризационное рассогласование, шумовая температура системы и C/N0 (отношение несущей к плотности шума); Доплер и скорость изменения Доплера в замкнутой форме по скорости изменения дальности и ускорению дальности, каждые проверены центральными разностями; ионосферная задержка первого порядка 40,3 STEC/f^2 из наклонного TEC по Klobuchar или вертикальному TEC, приведённого к части ионосферы ниже спутника. Парам диапазонов даются безионосферные коэффициенты, усиление шума и шум кода на пике пролёта. Спутники MEO GNSS (пресеты Galileo или GPS) оцениваются той же моделью антенны и шума по принимаемым мощностям из интерфейсных документов, поэтому колоколообразный пролёт LEO и плоские несущие GNSS делят один график. Необязательный раздел [iot] даёт время до первого определения, энергию на определение и срок службы батареи в зависимости от скважности для заданного энергобюджета приёмника (MODELLED). Каждая пара диапазонов также даёт наклонный TEC, который восстанавливает её геометрически-независимая комбинация на пике, и сигму шума кода этой оценки (зондирование ионосферы). Необязательный раздел [spoofer] подделывает сигналы заявленной позиции, которая после начала скачком смещается или сдвигается от истинной, и запускает два монитора с заданными вероятностями ложной тревоги и пропуска обнаружения: согласованность Доплера и геометрии пролёта (измеренные скорости изменения дальности относительно предсказанных по орбитам и независимой априорной позиции и скорости, обобщённый критерий хи-квадрат по методу наименьших квадратов по окну, по каналам GNSS, LEO и всем каналам) и междиапазонная согласованность (шаг от эпохи к эпохе геометрически-независимой комбинации каждой пары диапазонов LEO, скорректированной по модели), сообщающие статистики по эпохам и момент обнаружения каждым монитором (MODELLED). Компоненты VALIDATED: потери в свободном пространстве, коэффициенты P.838-3 по его Table 5, процедуры дождя и сцинтилляции P.618-14 и потери проникновения в здание P.2109 по проверочным примерам ITU-R Study Group 3, отношение групповых задержек L1/L2 по IS-GPS-200 и максимальный Доплер неподвижного пользователя на круговой орбите по arXiv 2509,19551 Table 1. MODELLED: EIRP, диаграммы, доля Чепмена TEC ниже спутника и весь пролёт в целом.
leo-focus-science-iono-sounding.toml
Направление LEO-PNT: наука LEO-PNT, зондирование ионосферы по двухдиапазонной задержке.
kind = "leo-pass"
name = "LEO ionosphere sounding from multi-band delays"
epoch = "2026-09-28T11:00:00"
duration_s = 900.0
step_s = 5.0
environment = "ground"
lat_deg = 69.66
lon_deg = 18.94leo-indoor-uhf.toml
LEO-PNT в помещении: почему несущая УВЧ проникает в здание, когда диапазоны L, S и C не справляются.
kind = "leo-pass"
name = "Indoor UHF LEO-PNT"
epoch = "2026-09-28T12:00:00"
duration_s = 900.0
step_s = 5.0
environment = "indoor"
lat_deg = 41.9
lon_deg = 12.49leo-iot-energy.toml
Малоэнергетический LEO-PNT для трекера Интернета вещей (IoT): энергия на одно определение в зависимости от скважности.
kind = "leo-pass"
name = "IoT energy per fix"
epoch = "2026-09-28T06:00:00"
duration_s = 900.0
step_s = 5.0
environment = "ground"
lat_deg = 53.55
lon_deg = 9.99leo-pass-celeste-iod-multiband.toml
ESA Celeste IOD, конфигурация сигнала №1, все диапазоны за один проход. WORKSHOP PRESET.
kind = "leo-pass"
name = "Celeste IOD multi-band pass"
epoch = "2026-09-28T08:00:00"
duration_s = 600.0
step_s = 2.0
iono_free_pairs = [["E5", "C"], ["UHF", "C"], ["E5", "SR"]]
environment = "ground"
lat_deg = 52.218leo-pass-iridium.toml
Пакеты Iridium STL (время и местоположение со спутника), принимаемые с самолёта.
kind = "leo-pass"
name = "Iridium STL from an aircraft"
epoch = "2026-09-28T14:00:00"
duration_s = 900.0
step_s = 5.0
environment = "air"
lat_deg = 50.0
lon_deg = -30.0leo-pass-vs-gnss-cn0.toml
Проход LEO-PNT на фоне спутников Galileo в зоне видимости: C/N0 за один проход.
kind = "leo-pass"
name = "LEO pass versus MEO GNSS C/N0"
epoch = "2026-09-28T08:00:00"
duration_s = 900.0
step_s = 2.0
environment = "ground"
lat_deg = 48.137
lon_deg = 11.575leo-pass-xona-pulsar.toml
Xona Pulsar X1 и X5 за один проход, с самыми высокими проходами группировки Pulsar.
kind = "leo-pass"
name = "Xona Pulsar pass"
epoch = "2026-09-28T10:00:00"
duration_s = 1200.0
step_s = 5.0
environment = "maritime"
lat_deg = 45.5
lon_deg = -5.0leo-resilience-spoof-doppler.toml
Устойчивость LEO-PNT к спуфингу: согласованность доплеровского сдвига и геометрии прохода.
kind = "leo-pass"
name = "Spoofing detection by LEO Doppler consistency"
epoch = "2026-09-28T08:00:00"
duration_s = 1800.0
step_s = 5.0
environment = "ground"
lat_deg = 50.11
lon_deg = 8.68leo-pnt-chain#
Одна система LEO-PNT (позиционирование, навигация и время с низкой околоземной орбиты) от начала до конца, для любой орбитальной группировки и сигнала: проект leo-signal, названный в signal_design (общедоступный пресет или встроенный проект [signal]), задаёт центр, полосу, скорость чипов и распределение EIRP диапазона [pass], бюджет линии leo-pass даёт отслеживаемое C/N0 и ограниченный полосой джиттер кода за пролёт, линия C/N0 по sin(elevation) и передаваемое SISRE сообщения [navmsg] (подогнанное на высоте спутника пролёта) питают каждую систему LEO совместного определения [fusion] leo-pvt и, при необходимости, случаи [ppp] leo-ppp; каждая передача перечислена со своим значением и единицей. MODELLED.
celeste-iod-end-to-end.toml
Celeste IOD от начала до конца (необязательная предустановка): сигнал конфигурации E5 №1 → пролёт Celeste IOD → навигационное сообщение в стиле Celeste → объединённое решение GPS + Galileo + Celeste IOD.
kind = "leo-pnt-chain"
name = "Celeste IOD end to end"
seed = 4
signal_design = "celeste-iod-e5-1-pfa"
od_sisre_m = 0.25
name = "celeste-iod-e5-1-pfa"
system = "Celeste IOD"
source = "WORKSHOP"leo-pnt-end-to-end.toml
LEO-PNT от начала до конца на обобщённой орбитальной группировке: проектирование сигнала → бюджет линии на пролёте → навигационное сообщение → объединённое решение MEO + LEO и сходимость точного абсолютного позиционирования.
kind = "leo-pnt-chain"
name = "LEO-PNT end to end, generic 1080 km constellation"
seed = 5
signal_design = "generic-l"
od_sisre_m = 0.25
presets = ["generic-bands"]
epoch = "2026-09-28T08:00:00"
duration_s = 1200.0xona-pulsar-end-to-end.toml
Xona Pulsar от начала до конца: публичный сигнал X5 → пролёт Pulsar → навигационное сообщение LEO → объединённое решение GPS + Galileo + Pulsar и сходимость точного абсолютного позиционирования.
kind = "leo-pnt-chain"
name = "Xona Pulsar end to end"
seed = 9
signal_design = "xona-x5"
od_sisre_m = 0.25
presets = ["xona-pulsar"]
epoch = "2026-09-28T10:00:00"
duration_s = 1200.0leo-ppp#
Сходимость прецизионного абсолютного позиционирования (PPP) только по GNSS и с дополнением LEO: нефиксированный (float) расширенный фильтр Калмана по безионосферным коду и фазе несущей со статическими координатами станции, белыми часами приёмника, одним межсистемным смещением на каждую дополнительную систему, случайно блуждающей зенитной влажной задержкой, проецируемой через 1/sin(elevation), и нефиксированной неоднозначностью на дугу каждого спутника; прецизионная ошибка орбиты и часов белая и общая для кода и фазы спутника, поэтому каждый спутник — это одно коррелированное двухстрочное обновление в стабилизированной форме Джозефа. Измерения моделируются по той же модели с шумом, заданным начальным значением (seed), на нескольких площадках и начальных значениях, и каждый случай (сначала только GNSS, затем каждый [[case]] систем LEO, любая орбитальная группировка или пресет) сообщает медианное время сходимости (первая эпоха, после которой горизонтальная и вертикальная ошибки остаются ниже порогов, по умолчанию 10 cm), долю сошедшихся, медианные кривые ошибок и согласованность фильтра (усреднённый по прогонам NEES позиции относительно двусторонней 95%-ной полосы хи-квадрат). Дополнительно рядом приводятся опубликованные значения Li et al. (2019, J. Geod. 93:749, doi 10.1007/s00190-018-1195-2) для средних широт: 9,6 min для мульти-GNSS сокращаются до 7,0, 3,2, 2,1 и 1,3 min при 60, 96, 192 и 288 спутниках LEO. MODELLED: сравнение согласованности тренда, а не воспроизведение орбитальных группировок, шума или станций того исследования; без разрешения неоднозначностей, срывов цикла, набега фазы (phase wind-up), приливов и коррелированных во времени ошибок продуктов.
leo-ppp-convergence.toml
Сходимость прецизионного абсолютного позиционирования (PPP) с дополнением LEO.
kind = "leo-ppp"
seed = 20
duration_s = 1800.0
step_s = 10.0
runs = 4
lat_deg = 30.5
lon_deg = 114.4
lat_deg = 48.1leo-pvt#
Объединённое позиционирование, навигация и время (PNT) на средних околоземных орбитах (MEO) и низких околоземных орбитах (LEO) для ЛЮБЫХ орбитальных группировок: каждая [[system]] — это пресет GNSS вида constellation-design, пресет LEO (xona-pulsar, iridium-stl, starlink-sop, centispace, generic-c-band, модель эфемерид atomic-zero-clock или другой файл пресета, каждый в собственном файле, с источниками, помеченными как «PUBLIC», «WORKSHOP» или «ПРОИЗВОДНЫЙ»), оболочки Walker или явные наборы элементов, с несущей, скоростью чипов, огибающей отношения несущей к плотности шума (C/N0) от маски возвышения до зенита, ошибкой дальности в сигнале в пространстве (SISRE), сигмой Доплера и моделью часов (собственные часы приёмника, поэтому межсистемное смещение оценивается, либо известное вещательное смещение). Четыре режима. DOPPLER: пакетное позиционирование по методу Гаусса — Ньютона по скорости изменения дальности с аналитическими частными производными, состояниями дрейфа часов и необязательной скорости и необязательным ограничением по высоте, по одному или нескольким спутникам, ошибка в зависимости от длины окна, огибающая Доплера, скорости изменения Доплера и рывка для каждой системы LEO, а также точность вдоль и поперёк трека для одного пролёта в зависимости от смещения поперёк трека (ошибка поперёк трека неограниченно растёт, когда пролёт проходит над головой; у одного пролёта есть также зеркальное решение по другую сторону трассы). Здесь выполняется сигнал возможности только по Доплеру (starlink-sop). JOINT: поэпохные фиксации по псевдодальности методом взвешенных наименьших квадратов только по GNSS, только по LEO и по обоим, сигмы по каждому измерению из модели теплового шума контура слежения за задержкой при C/N0 плюс SISRE (или фиксированная сигма, чтобы её могла подавать модель сигнала), оцененные межсистемные смещения и PDOP/HDOP/VDOP в зависимости от числа добавленных спутников LEO. POLAR: спутники в видимости и DOP в зависимости от широты для GNSS, LEO и обоих. TIMING: передача времени на Всемирное координированное время (UTC) со спутников LEO в известной позиции двухсостоянийным фильтром часов, шум процесса которого берётся из классов генераторов движка, в зависимости от C/N0 и генератора, а также выражение перехода от системного времени к UTC по IS-GPS-200; при [timing] trace = true каждая строка сообщает также свою ошибку времени и прогнозную сигму на каждой эпохе. VALIDATED: наибольший Доплер пролёта от зенита до горизонта относительно опубликованных значений Iridium (до 36 kHz) и Xona Pulsar X1 (от 32 до 34 kHz). MODELLED: всё остальное; DOP проверен на случае, выведенном вручную, фиксации — по их ковариации, а модель Доплера — по тождеству ускорения дальности.
celeste-iod-fused-pvt.toml
Позиционирование по GNSS с добавлением двух орбитальных демонстрационных спутников ESA Celeste.
kind = "leo-pvt"
mode = "joint"
seed = 4
duration_s = 5700.0
step_s = 30.0
lat_deg = 52.22
lon_deg = 4.42
height_m = 5.0leo-doppler-positioning.toml
Позиционирование только по доплеровскому сдвигу LEO на обобщённой навигационной группировке LEO.
kind = "leo-pvt"
mode = "doppler"
seed = 7
duration_s = 600.0
step_s = 10.0
lat_deg = 48.14
lon_deg = 11.58
height_m = 520.0leo-pvt-fjord-skyline.toml
Объединённое позиционирование MEO и LEO для судна глубоко в фьорде, где стены долины скрывают всё низкое по ту сторону пролива: совместный режим leo-pvt под предустановкой горизонта fjord.
kind = "leo-pvt"
mode = "joint"
seed = 3
duration_s = 1800.0
step_s = 30.0
lat_deg = 61.1
lon_deg = 6.6
height_m = 20.0leo-timing-utc.toml
Передача времени до UTC со спутников LEO в зависимости от C/N0 и генератора приёмника.
kind = "leo-pvt"
mode = "timing"
seed = 9
duration_s = 21600.0
step_s = 10.0
lat_deg = 39.99
lon_deg = -105.26
height_m = 1655.0meo-leo-fused-pvt.toml
Объединённое позиционирование по псевдодальностям MEO и LEO: GPS и Galileo с навигационным слоем LEO.
kind = "leo-pvt"
mode = "joint"
seed = 3
duration_s = 1800.0
step_s = 30.0
lat_deg = 40.42
lon_deg = -3.70
height_m = 650.0polar-arctic-leo-coverage.toml
Спутники в зоне видимости и геометрический фактор от экватора до полюса: только MEO GNSS, только околополярная группировка LEO и обе вместе.
kind = "leo-pvt"
mode = "polar"
duration_s = 7200.0
step_s = 600.0
lat_step_deg = 10.0
lon_step_deg = 45.0
pdop_threshold = 6.0
name = "GPS"starlink-sop-doppler-positioning.toml
Позиционирование только по Доплеру от широкополосной группировки, используемой как сигнал оказии.
kind = "leo-pvt"
mode = "doppler"
seed = 11
duration_s = 60.0
step_s = 0.1
lat_deg = 40.0
lon_deg = -83.0
height_m = 220.0leo-signal#
Проекты сигналов LEO-PNT: параметризованные сигналы позиционирования, навигации и времени (PNT) на низких околоземных орбитах (LEO) для любой системы, диапазона и структуры. СИГНАЛ — это диапазон (центральная частота, ширина полосы передачи, распределение ITU RNSS/RDSS/MSS/EESS/non-RNSS/other) и компоненты (захват, данные, пилот; любое подмножество), у каждой из которых есть модуляция (BPSK(n) с дробным n, BOC(m,n), MBOC(6 1,p) или плоская OFDM-подобная полоса), доля мощности, необязательные смещения поднесущих FDMA, длина кода и скорость данных. Сигналы берутся из встроенных общедоступных файлов пресетов (xona-pulsar, iridium-stl, starlink-soo, centispace, generic-c-band, generic-bands; каждый с URL источника, а каждое неопубликованное значение помечено как «REPRESENTATIVE») или записываются во встроенном виде. ПО КАЖДОМУ СИГНАЛУ: ограниченная полосой спектральная плотность мощности и доля мощности каждой компоненты, которую пропускает полоса передачи (замкнутая форма BPSK рядом с численным значением), среднеквадратичная (Gabor) ширина полосы, тепловой шумовой джиттер кодового слежения контура слежения за задержкой в зависимости от C/N0 и разноса раннего и позднего по ограниченной полосой когерентной (или некогерентной) формуле раннего-позднего Betz & Kolodziejski 2009 с её учебниковой формой для неограниченной полосы и её границей Gabor при исчезающем разносе, точность определения дальности в метрах, пространство поиска при захвате (бины Доплера из максимального Доплера орбиты плюс члены генератора и пользователя, умноженные на кодовые бины), вероятность обнаружения квадратичным детектором и среднее время захвата последовательного и кодово-параллельного, коэффициент спектрального разделения сигнала с GPS L1 C/A, Galileo E1, GPS L5, Galileo E5a, E5b и E5 AltBOC и каждого из них с сигналом при деградации C/N0, а также CW, широкополосный и согласованный J/S, который выдерживает отслеживаемая компонента, по собственному аппарату SSC вида spectrum. СРАВНЕНИЕ ДИАПАЗОНОВ: ионосферная задержка первого порядка (40,3 TEC/f^2), потери в свободном пространстве, точность определения дальности при равном C/N0 и при равной EIRP и устойчивость к помехе-подавителю. Необязательные ПРОВЕРКИ ФОРМЫ сопоставляют спектр проекта с описанным измерением (согласованность MODELLED). VALIDATED: замкнутые формы мощности BPSK в полосе (90,3 % в главном лепестке) и ширины полосы Gabor, ограниченный полосой джиттер, сводящийся к учебниковой когерентной форме раннего-позднего и к своей границе Gabor, коэффициент спектрального разделения BPSK со смещением относительно его замкнутой формы по Парсевалю, единичная площадь спектра AltBOC и максимальный Доплер LEO относительно опубликованных значений Xona Pulsar (32-34 kHz) и Iridium (36 kHz). MODELLED: каждый проект, распределение мощности, уровни C/N0 и подавителя; спектры EFQPSK, CSK и OFDM приближены.
celeste-iod-classical-pilot-signals.toml
Проекты сигналов Celeste IOD: диапазоны частот и конфигурация сигнала «Classical Pilot» №1 миссии ESA Celeste In-Orbit Demonstration (IOD) по позиционированию, навигации и времени (PNT) на низких околоземных орбитах (LEO), в виде параметризованных проектов сигналов.
kind = "leo-signal"
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5
tracking_threshold_dbhz = 25.0leo-band-trade.toml
Сопоставление диапазонов LEO-PNT, от УКВ до широкого C-диапазона: что выигрывает и теряет сигнал позиционирования, навигации и времени (PNT) на низкой околоземной орбите (LEO) в каждом диапазоне независимо от конкретной системы.
kind = "leo-signal"
presets = ["generic-bands"]
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5xona-pulsar-signals.toml
Сигналы Xona Pulsar: сигналы X1 (диапазон L1) и X5 (диапазон L5) коммерческой группировки позиционирования, навигации и времени (PNT) на низких околоземных орбитах (LEO), по их опубликованной таблице сигналов (Leclère, Marathe and Reid, ION GNSS+ 2025, https://arxiv.org/abs/2509.19551), в виде встроенной предустановки xona-pulsar.
kind = "leo-signal"
presets = ["xona-pulsar"]
noise_figure_db = 2.0
antenna_temp_k = 290.0
loop_bandwidth_hz = 1.0
integration_time_s = 0.02
correlator_spacings_chips = [1.0, 0.5, 0.2, 0.1]
reference_spacing_chips = 0.5link-budget#
Односторонний бюджет линии по уравнению линии CCSDS 401 / DSN 810-005: потери в свободном пространстве, C/N₀, Eb/N₀, запас и замыкание линии для передающей EIRP, приёмной G/T, дальности, скорости передачи данных и диапазона (s|x|ka) относительно требуемого Eb/N₀. Детерминированный инженерный расчёт по заданным входным данным (не паспорт откалиброванного терминала).
link-budget.toml
Демонстратор бюджета односторонней линии связи (связь и бюджеты линий, уровень сравнительного исследования).
kind = "link-budget"
band = "x"
eirp_dbw = 55.0
g_over_t_db = 53.0
range_km = 2000.0
data_rate_bps = 1.0e6
other_losses_db = 3.0lunar-ascent#
MODELLED активный подъём с южно-полярной точки поверхности на орбиту сближения и ковариация положения и скорости, которую он возвращает на орбиту (класс Artemis). Пятисостоянная инерциальная модель ошибок по осям из lunar-descent (положение, скорость, смещение акселерометра, наклон ориентации, смещение гироскопа, возбуждаемые удельной силой) выполняется по всем трём осям площадки от состояния поверхности, с которым фаза начинается; определение положения AFS по видимым ретрансляторам созвездия класса LCNS ILLUSTRATIVE (автономное или дифференциальное, с использованием остатка линии коррекции из lunar-differential-pnt, с поддержкой часов, когда видимы только три ретранслятора) берётся через заданный интервал, при этом лунное время поступает через часы аппарата, а ошибка временной метки — вдоль траектории. Сообщает инерциальные источники в замкнутом виде, вклад средства, абляцию, навигационные 1-сигмы на подъёме, разброс при отсечке двигателя рядом с навигационным знанием и полную ковариацию 6x6 MCI при выводе с сохранённой корреляцией положения и скорости. MODELLED: класс IMU, удельная сила, набор ретрансляторов и разброс при отсечке иллюстративны; ошибки заданы в осях места запуска; номинальное состояние выхода — заместитель. Не одобрено агентством; программное обеспечение консультативного характера, не навигационное оборудование с утверждённым типом.
lunar-ascent.toml
Лунный взлёт: взлёт с работающим двигателем с южнополярной площадки на поверхности (класса Artemis) на орбиту сближения высотой 100 км и ковариация положения и скорости, которую он передаёт на орбиту.
kind = "lunar-ascent"
site_lat_deg = -89.5
site_lon_deg = 0.0
ascent_s = 450.0
insertion_altitude_km = 100.0
accel_bias_ug = 100.0
align_arcmin = 3.0
gyro_bias_deg_per_hr = 0.01Пока нет на GitHub
lunar-attack-surface#
Поверхность атаки на безопасность сигналов лунной поверхностной навигации (P1): объединяет открытые анализы безопасности сигналов в один достижимый из бинарного файла прогон. Сообщает (1) принимаемую мощность AFS и её ПРЕВЫШЕНИЕ над наземным опорным уровнем GPS, а также полосу чувствительности 12-18 dB как настоящий многоосевой перебор по входным данным линии (опорный уровень x EIRP x наклонная дальность) со сверкой линейных коэффициентов 25x при округлении / 28x без округления. ПЕРЕСМОТРЕНО (правило R4): здесь сообщался ДЕФИЦИТ мощности 15,6 dB и коэффициент 32x/36x, пока опорный уровень GPS не был исправлен с -125 / -128.5 (это значения в dBm) на -155 / -158.5 dBW — значения ICD-GPS-200, которые модуль подавления всегда нёс. Знак меняется на обратный: смоделированный сигнал лунной AFS на 14,4 dB СИЛЬНЕЕ наземного GPS L1 C/A, а не слабее. Сама принимаемая мощность не изменилась ни на бит, а линейный коэффициент — прежний, делённый ровно на 1000, что в точности соответствует сдвигу dBm-в-dBW на 30 dB; (2) требуемая мощность передачи нарушителя для спуфинга (J/S = 3 dB) и для отказа в обслуживании (J/S = 30 dB) на каждой дистанции, обратная задача к линии J/S; (3) орбитальная зона захвата при реальной диаграмме направленности антенны с равномерной апертурой (Эйри [2 J1(x)/x]^2), ограниченная высотой субполусферическая шапка, лимб которой НЕ захватывается; (4) вычисленный исход втягивания контура слежения при спуфинговом захвате (действительно ли спуфер с согласованным кодом при заданном превышении мощности и смещении кода тянет за собой DLL/PLL), а не заявленный порог 3 dB; (5) геометрическая дальность горизонта безатмосферного тела для поднятого поверхностного передатчика; и (6) бюджет аутентификации OSNMA/TESLA (20 bit/s накладных расходов = ~40 % навигационного сообщения AFS в 50 bit/s, задержка раскрытия ключа, подделка 2^-40). Пустое тело воспроизводит базовый уровень P1; все входные данные имеют значения по умолчанию и могут быть переопределены. Подрезультаты VALIDATED несут оракул своего исходного модуля (замкнутая радиометрия в dB; круговой обход обратной J/S; диаграмма Эйри против бесселевых функций из A&S и геометрии сферической шапки; втягивание DLL/PLL по Kaplan & Hegarty; тождество сферического касательного горизонта против eo_payload; размеры полей OSNMA SIS-ICD). MODELLED: репрезентативные величины геометрии и мощности и конкретные значения ячеек карты захвата. Не является сертифицированным продуктом безопасности.
lunar-attack-surface.toml
Поверхность атак на безопасность сигналов лунной поверхностной навигации (статья P1).
kind = "lunar-attack-surface"
afs_eirp_dbw = 26.0
user_gain_dbi = 3.0
slant_range_m = 3.0e6
carrier_hz = 2.4e9
gps_reference_dbw = -155.0
gps_reference_min_dbw = -158.5
transmitter_altitude_m = 100_000.0lunar-beacon#
Дополнение лунной орбитальной навигационной службы поверхностными маяками в виде исполняемой таблицы «до/после». Пользователь у южного полюса видит разреженный орбитальный набор в узком участке неба, поэтому геометрия дальнометрии плохо обусловлена; несколько ПОДТВЕРЖДЁННЫХ СЪЁМКОЙ ПОВЕРХНОСТНЫХ МАЯКОВ дают строки линии визирования с малым возвышением и широким азимутом, которых недостаёт набору, целиком находящемуся над головой, и горизонтальный геометрический фактор DOP резко падает. Сценарий сообщает три конфигурации на одной эпохе — только спутники, спутники плюс видимые маяки и более крупная орбитальная группировка как альтернативный путь к той же геометрии — с числом видимых источников, полным DOP и реализованной точностью 1-sigma в МЕТРАХ, получаемой умножением на эквивалентную пользовательской ошибку дальности по каждому маяку, составленную как корень из суммы квадратов членов синхронизации часов, многолучевости и съёмки. Видимость маяков — это геометрический горизонт безатмосферной Луны по двум высотам (атмосферы нет, поэтому граница точна), а сборка DOP — то же ядро, перекрёстно проверенное по gnss_lib_py в tests/dop_reference.rs. ПОЧЕМУ ЭТОТ ВИД СУЩЕСТВУЕТ: модуль за ним находился в движке и проверялся независимым путём DOP начиная с L08/L09, но не был достижим из прогона — ни вида, ни ветки диспетчеризации, ни встроенного файла. README рекламировал возможность, а матрица верификации вообще не содержала для неё строки, поэтому она одновременно заявлялась в тексте и не заявлялась в реестре, оставаясь недостижимой в движке. Значения по умолчанию — это геометрия, для которой уже есть зафиксированный эталон (пользователь на -80 deg с антенной 2 m, три маяка на -80/0, -79/+60 и -79/-60 на высоте 2 km, шестиспутниковый иллюстративный снимок LCNS при t=0, маска 5 deg), так что «голый» прогон воспроизводит таблицу, уже охваченную оракулом, а не выдумывает новые числа. MODELLED: проект группировки, размещение маяков и каждая величина бюджета ошибок — иллюстративные входные данные, а не реальная съёмка или измеренная линия; внешне привязаны лишь арифметика DOP, замкнутая форма горизонта и соотношение sigma = DOP x sigma_URE. Не является обязательством по характеристикам службы.
lunar-beacon.toml
Дополнение лунной орбитальной навигационной службы поверхностными маяками.
kind = "lunar-beacon"
n_satellites = 6
comparison_n_satellites = 24
epoch_s = 0.0
elevation_mask_deg = 5.0
clock_sync_m = 1.0
multipath_m = 0.5
survey_m = 0.3lunar-descent#
MODELLED бюджет разброса посадки при управляемом спуске на южнополярную площадку (класс Artemis). По каждой горизонтальной оси пятисостоянийная модель инерциальной ошибки (положение, скорость, смещение акселерометра, наклон ориентации, смещение гироскопа) приводится в действие удельной силой спуска; последовательный фильтр принимает фиксации положения от включённых средств: фиксацию AFS по видимым ретрансляторам ILLUSTRATIVE орбитальной группировки класса LCNS (автономную или дифференциальную, с использованием остатка линии поправок из lunar-differential-pnt, причём часы поддерживаются, когда видны только три ретранслятора) и рельефную фиксацию (сопоставитель TERCOM/SITAN крейта на синтетическом рельефе либо граница Крамера — Рао для сопоставления окна высот реальной южнополярной цифровой модели рельефа LOLA). Лунное время входит через часы аппарата в моменты фиксаций (смещение LTC-TT из lunar-time-offset или неопределённость его опубликованного диапазона) и как ошибка временной метки вдоль трека. Сообщает эллипс посадки 3-сигма, R95, инерциальные источники в замкнутой форме, вклад каждого средства, абляцию каждой комбинации средств, калибровку эллипса методом Монте-Карло и передаваемую дальше ковариацию. MODELLED: иллюстративный класс ИНС, набор ретрансляторов, профиль спуска и член наведения; рельефная навигация использует синтетический рельеф в земном масштабе метров; доступность AFS — одна эпоха при плоской маске. Не одобрено агентством; программное обеспечение консультативного характера, не сертифицированное навигационное оборудование.
lunar-descent.toml
Рассеяние при посадке на Луну: бюджет посадки с работающим двигателем на южнополярную площадку (класса Artemis), от инерциального дрейфа спускаемого комплекса и от того, сколько из него вычитают навигация по рельефу, сигналы LunaNet и лунное время.
kind = "lunar-descent"
site_lat_deg = -89.5
site_lon_deg = 0.0
more_site_lats_deg = [-89.9, -88.5, -85.0]
descent_s = 600.0
horizontal_speed_m_s = 150.0
accel_bias_ug = 100.0
align_arcmin = 3.0Пока нет на GitHub
lunar-descent-lola.toml
Рассеяние при посадке на Луну с реальной ЦМР LOLA южного полюса: бюджет посадки с работающим двигателем на южнополярную площадку (класса Artemis), от инерциального дрейфа спускаемого комплекса и от того, сколько из него вычитают навигация по рельефу, сигналы LunaNet и лунное время.
kind = "lunar-descent"
site_lat_deg = -89.5
site_lon_deg = 0.0
more_site_lats_deg = [-89.9, -88.5, -85.0]
descent_s = 600.0
horizontal_speed_m_s = 150.0
accel_bias_ug = 100.0
align_arcmin = 3.0Пока нет на GitHub
lunar-differential-pnt#
Смоделированный лунный ДИФФЕРЕНЦИАЛЬНЫЙ PNT (аналог лунного DGNSS/SBAS): опорная станция класса NovaMoon в ИЗВЕСТНОМ селенографическом месте вычисляет дифференциальные поправки по каждому спутнику для ILLUSTRATIVE орбитальной группировки класса Moonlight/LCNS из общедоступных источников (NovaMoon упоминается только как КЛАСС системы, не связан с ESA), а пользователь, смещённый на baseline_km, применяет их, так что ОБЩИЕ ошибки орбиты + часов сокращаются. Член часов сокращается ТОЧНО (алгебраическое тождество); у члена орбиты остаётся лишь проекция разности линий визирования, которая → 0 при базе → 0 (нижний предел пространственной декорреляции) и растёт ≈ линейно с базой. Сообщает 3-D ошибку позиции пользователя С поправками и БЕЗ них, коэффициент снижения, кривую «ошибка — база» и уровень защиты пользователя, который ПОВТОРНО ИСПОЛЬЗУЕТ аппарат SBAS DO-229E (crate::sbas) с дифференциальным остатком σ. MODELLED — тождество точного сокращения + модель декорреляции первого порядка; не валидировано на реальных данных; без TRL/лётного опыта/одобрения агентств. Детерминировано при заданном начальном значении (seed).
lunar-differential-pnt.toml
Лунные ДИФФЕРЕНЦИАЛЬНЫЕ PNT — аналог лунных DGNSS / SBAS.
kind = "lunar-differential-pnt"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
ref_lat_deg = -89.0
ref_lon_deg = 0.0lunar-frame-campaign#
Семипараметрический датум системы отсчёта по Гельмерту (подобия), определяемый СМОДЕЛИРОВАННОЙ НАБЛЮДАТЕЛЬНОЙ КАМПАНИЕЙ, а не внесённым преобразованием. Сеть земных станций наблюдает каталог лунных поверхностных маяков по явному расписанию; частные производные задержки лунной VLBI накапливаются по этому расписанию в информационную матрицу Фишера координат маяков в точности как в lunar-vlbi-fim; и эта информация распространяется через план Гельмерта A = [I3 | [p]_x | p] в точках каталога в ковариацию датума H = A^T M_b A, диагностируемую crate::fim::crlb. НИКАКОЕ преобразование не вносится и ничто не восстанавливается из заложенного ответа, поэтому сообщаемая точность датума происходит от программы наблюдений: уменьшение сигмы задержки вдвое уменьшает её ровно вдвое, а удлинение дуги улучшает её, потому что либрация, которую отчёт ИЗМЕРЯЕТ (sub_earth_direction_sweep_deg), — это то, что отделяет координату маяка вдоль линии визирования от координат в плоскости неба. Ранг, дефект датума, число обусловленности, полный спектр, ненаблюдаемые направления В СЕМИПАРАМЕТРИЧЕСКОМ БАЗИСЕ, слабейшее направление даже при полном ранге и доля каждого параметра в нём выдаются при каждом прогоне; параметр, который кампания не ограничивает, публикуется как NULL со статусом и никогда не считывается из почти вырожденной обратной матрицы. Корреляция ошибок маяков измеряется, а не предполагается: при зафиксированных станциях ни одно наблюдение не затрагивает два маяка, так что информационная матрица в точности блочно-диагональна (offblock_fraction 0), а при оцениваемых станциях маргинализированный по Шуру блок связан, с выведенной индуцированной корреляцией, и всё распространение перезапускается с её отбрасыванием, так что цена предположения о независимости — число. То же распространение при изотропной сигме по координате и ошибка восстановления, которую сообщает сценарий lunar-frame-realisation, выполняются здесь и выводятся рядом со значением кампании с их отношениями. MODELLED: каталог маяков имеет источник, но КАМПАНИЯ смоделирована — сеть станций и сигма задержки являются иллюстративными входными данными, отдельные наблюдения задержки считаются независимыми, а эфемерида центра Луны, часы станций, тропосфера и параметры ориентации Земли ФИКСИРОВАНЫ, поэтому ковариация датума — это граница Крамера — Рао для сокращённого набора параметров. Не является геодезическим продуктом.
lunar-frame-campaign.toml
Семипараметрический лунный датум по Гельмерту, построенный по СМОДЕЛИРОВАННОЙ НАБЛЮДАТЕЛЬНОЙ КАМПАНИИ (G9).
kind = "lunar-frame-campaign"lunar-frame-realisation#
Modelled-реализация лунной системы отсчёта: подгонка 7-параметрического датума Гельмерта (преобразования подобия) — 3 сдвига, 3 малых угла поворота, 1 масштаб — привязывающая методом взвешенных наименьших квадратов (crate::batch_ls::gauss_newton) оценённый набор координат точек MCMF, выведенных из селенографических, к датуму, плюс простая привязка ориентации, выражающая реализованный малый поворот вокруг осей ICRF относительно ориентации тела по IAU 2015 WGCCRE. Сценарий вводит известное малое преобразование (сдвиг порядка десятков м, поворот порядка мкрад, масштаб порядка 1e-7) в хорошо распределённую синтетическую сеть точек, добавляет гауссов шум с заданным начальным значением, восстанавливает датум и сообщает восстановленное преобразование, ошибку восстановления по каждому параметру относительно введённой истины и остаточную СКО после подгонки. MODELLED, самосогласованность — восстанавливает введённое преобразование подобия (без шума с точностью до машинной), НЕ является реализацией по реальным данным слежения или VLBI; детерминирован (с заданным начальным значением); никакого TRL, лётного наследия или одобрения агентств.
lunar-frame-realisation.toml
Реализация лунной системы отсчёта — подгонка 7-параметрического датума Гельмерта (подобия).
kind = "lunar-frame-realisation"
n_points = 8
tx_m = 25.0
ty_m = -40.0
tz_m = 15.0
rot_x_urad = 3.0
rot_y_urad = -2.0
rot_z_urad = 5.0lunar-infrastructure#
MODELLED-исследования орбиты и поверхности Луны как навигационной и геодезической инфраструктуры: пять исследований в одном виде, выбираемых полем study: od-consistency (бортовое определение орбиты по Earth-GNSS на NRHO или ELFO в сравнении с независимым наземным радиометрическим определением орбиты, оценка по их собственным ковариациям на Монте-Карло с заданным начальным значением), carrier-phase (совместная двойная разность фазы несущей «поверхность — орбитальный аппарат» и разрешение целочисленных неоднозначностей методом LAMBDA), frame-coestimation (поверхностная станция и орбитальные аппараты, добавленные к дальнометрии земных станций для семипараметрического датума лунной системы отсчёта), space-tie (GNSS, VLBI и лазерная локация на одном космическом аппарате, точность привязки систем отсчёта в сравнении с ошибкой локальной привязки) и geodesy-sensitivity (информация Фишера о числах Лява Луны h2, k2, l2 и физической либрации по лазерной локации, слежению за орбитальными аппаратами, поверхностному гравиметру и поверхностным часам). Ограниченная модель трёх тел с заявленными упрощениями; численные методы проверены независимыми программами, и ничто не сравнивается с измерением лунной величины.
lunar-infrastructure-carrier-phase.toml
Сценарий lunar-infrastructure Kshana: carrier-phase, БЫСТРЫЙ пример (две короткие дуги, 10 розыгрышей, секунды; оцениваемая конфигурация — три дуги и 400 розыгрышей — это xval/lunar-infra/scenarios/carrier-phase-scored.toml). MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "carrier-phase"
seed = 20261019
family = "nrho"
sample_s = 600.0
arcs_days = [0.25, 0.5]
lat_deg = 0.0
lon_deg = 0.0lunar-infrastructure-frame-coestimation.toml
Сценарий lunar-infrastructure Kshana: frame-coestimation. MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "frame-coestimation"
seed = 20261019
family = "nrho"
arc_days = 6.56
sample_s = 900.0
sigma_m = 0.05
epochs = 200lunar-infrastructure-geodesy-sensitivity.toml
Сценарий lunar-infrastructure Kshana: geodesy-sensitivity. MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "geodesy-sensitivity"
seed = 20261019
sigma_m = 0.05
epochs = 400
sigma_mm_s = 0.05
arc_days = 27.3
sample_s = 3600.0lunar-infrastructure-od-consistency.toml
Сценарий lunar-infrastructure Kshana: od-consistency. MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "od-consistency"
seed = 20261019
family = "nrho"
arc_days = 3.0
sample_s = 600.0
altitude_km = 20180.0
inclination_deg = 55.0lunar-infrastructure-od-consistency-model-error.toml
Сценарий lunar-infrastructure Kshana: od-consistency с немоделируемым ускорением. MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "od-consistency"
seed = 20261019
family = "nrho"
arc_days = 3.0
sample_s = 600.0
altitude_km = 20180.0
inclination_deg = 55.0lunar-infrastructure-space-tie.toml
Сценарий lunar-infrastructure Kshana: space-tie. MODELLED; план, входные данные и пороги зафиксированы в xval/lunar-infra/PREREGISTRATION.md (внесено до любого прогона). ILLUSTRATIVE входные данные помечены там публичными источниками.
kind = "lunar-infrastructure"
study = "space-tie"
seed = 20261019
family = "nrho"
arc_days = 6.56
sample_s = 900.0
gnss_sigma_m = 10.0
vlbi_sigma_m = 1.0lunar-integrity#
Проверка уровня защиты ARAIM на южном полюсе Луны для репрезентативного набора ретрансляторов LunaNet. sigma_ure_m задаёт точность дальности сигнала в пространстве (уровни защиты масштабируются с ней линейно, поэтому перебор этого параметра отвечает на вопрос, какая точность дальности нужна для предела тревоги). По умолчанию — исторический случай южного полюса класса LNIS.
lunanet-araim.toml
Целостность на южном полюсе Луны: приёмник на поверхности в районе Artemis относительно репрезентативного набора ретрансляторов LunaNet, уровни защиты ARAIM на пролёте длительностью 24 ч.
kind = "lunar-integrity"
step_s = 3600.0
duration_s = 86400.0
alert_limit_m = 50.0
p_hmi = 1.0e-4lunar-interop-export#
Modelled-экспорт для лунной совместимости: выдаёт лунную систему отсчёта, лунную шкалу времени и лунные эфемериды в обменных формах на основе CCSDS, согласованных с LunaNet/IOAG, с проверкой круговой передачи и соответствия полей. ПОВТОРНО ИСПОЛЬЗУЕТ генератор и разборщик CCSDS OEM 2,0 пакета (crate::oem), перемаркированные для лунного контекста: REF_FRAME несёт лунную систему координат тела по IAU 2015 WGCCRE (MOON_ME / MOON_PA), TIME_SYSTEM — лунную шкалу времени (LTC / TCL / UTC), CENTER_NAME = MOON — по образцу иллюстративных эфемерид класса LCNS (положения из crate::lunar_service, скорость конечной разностью). Также выдаёт дескриптор лунного времени, согласованный с LunaNet/IOAG (идентификатор шкалы, вековой ход в мкс/сут из crate::lunar_time, опубликованная полоса, опорная поверхность), который проходит круговую передачу через serde_json, и оборачивает артефакты в существующий конверт KIF (crate::interchange) с честной меткой MODELLED. Сообщает число выданных артефактов, число строк OEM, прохождение проверки соответствия полей и список присутствующих и отсутствующих полей, успех круговой передачи OEM, успех круговой передачи метаданных времени и размер KIF в байтах. MODELLED — оракулом служат детерминированная круговая передача и соответствие имён полей опубликованным CCSDS OEM и семантике полей LunaNet/IOAG; это НЕ сертифицированный тест соответствия совместимости; иллюстративные эфемериды из публичных источников, не связаны с ESA; никакого TRL, лётного наследия или одобрения агентств.
lunar-interop-export.toml
Экспорт для лунной совместимости — обмен на основе CCSDS, согласованный с LunaNet / IOAG.
kind = "lunar-interop-export"
frame = "MOON_ME"
time_system = "LTC"
n_states = 9
step_min = 30.0
epoch = "2030-01-01T00:00:00"
object = "LCNS-ILLUSTRATIVE-1"lunar-jamming#
Лунное подавление радиосигнала (jamming): отношение помеха/сигнал для каждого спутника, эффективное C/N₀ и потеря захвата для селенографического наземного пользователя под лунным наземным (или поднятым) постановщиком помех, по иллюстративной орбитальной группировке класса Moonlight/LCNS из публичных источников. Использует существующую открытую физику подавления (jamming::j_over_s_db, effective_cn0_dbhz, rx_antenna_gain_db, lock_status, q_factor) с существующей геометрией лунного неба (lunar_service::LunarConstellation + topocentric, lunar::selenographic_to_mcmf); ни геометрия, ни радиометрия заново не выводятся. В отличие от земного вида jamming, сигнальное звено НЕ является фиксированной принимаемой мощностью: изотропная принимаемая мощность каждого спутника определяется его собственным бюджетом линии EIRP − FSPL(наклонная дальность), поэтому J/S меняется от спутника к спутнику с лунной дальностью и возвышением. Выдаёт ОДНУ СТРОКУ НА КАЖДУЮ ВИДИМУЮ ЛИНИЮ (эпоха, спутник) — азимут, возвышение, наклонная дальность, обе принимаемые мощности, разностью которых является J/S, сам J/S, номинальное и эффективное C/N₀ и состояние захвата — плюс сводные показатели качества рядом с этой таблицей (но не вместо неё) и ту же таблицу в виде артефакта CSV. Каждое выдаваемое числовое поле несёт единицу измерения и класс происхождения. Подрезультаты VALIDATED несут оракул своего исходного модуля (уравнение противодействия помехам и линия J/S по Kaplan & Hegarty §9,4, внешне подкреплённые в tests/gnss_denied_jamming_resilience_reference.rs; лунная геометрия lunar_service). Сама композиция перекрёстно проверена независимым путём с двумя бюджетами линии (linkbudget::received_signal_power_dbw, иное выражение потерь в свободном пространстве) с точностью до 1e-9 дБ. MODELLED: иллюстративная орбитальная группировка, репрезентативные EIRP, мощность постановщика помех, коэффициенты усиления антенн и шумовая температура, а также отсутствие затенения рельефом, многолучевости, динамики АРУ и адаптивного обнуления. Не является сертифицированным продуктом для отказа в обслуживании. При настроенном постановщике помех отчёт также содержит КОНТУР ОТКАЗА С ПОЛОСОЙ НЕОПРЕДЕЛЁННОСТИ, а не контур, считанный по одному скаляру: полное измеренное распределение C/N₀ полезного сигнала по таблице для каждого спутника (n, min, p05, p25, медиана, p75, p95, max, среднее, выборочное стандартное отклонение и собственная асимметрия выборки), и контур, вычисленный при каждой из этих порядковых статистик по ОБОИМ критериям отказа, признаваемым движком, — по действующему критерию отношения мощностей (J/S = 30 дБ, как в attack-surface и tracking-loop) и по критерию потери захвата (эффективное C/N₀ падает до tracking_threshold_dbhz, критерий, по которому оценивается и столбец состояния этого отчёта), — по обеим осям плоскости отказа (требуемая EIRP постановщика помех при стандартной дальности сценария, дальность отказа при EIRP сценария). Границы полосы — это ровно contour(p05) и contour(p95), то есть то же отображение в замкнутой форме, применённое к собственным квантилям выборки: не сигма, подогнанная к выборке, и не медиана ± k·стандартное отклонение, при этом стандартное отклонение выдаётся для преемственности и ничем не используется. Квантиль, уже находящийся на уровне порога слежения или ниже него, не имеет конечного подавляющего J/S, и его столбцы потери захвата равны null с учтённой причиной, а не усечённому радиусу.
lunar-jamming.toml
Радиочастотное подавление (jamming) на Луне: J/S для каждого спутника для пользователя на лунной поверхности.
kind = "lunar-jamming"
n_sats = 4
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
site_lat_deg = -89.67
site_lon_deg = 129.78lunar-joint-od-clock#
Modelled-оценщик совместного пакетного определения лунной орбиты и часов по нескольким технологиям на СИМУЛИРОВАННОЙ сети: одномоментная подгонка методом Гаусса–Ньютона, объединяющая задержки геодезического VLBI на земных базах, локальные лунные дальности «станция ↔ спутник» и межспутниковые дальности, чтобы совместно восстановить по введённой истине положение (3-D) лунной поверхностной станции, положения небольшой орбитальной группировки и смещение часов каждого объекта. Главный честный результат — VLBI делает полное положение станции (3-D) наблюдаемым там, где одна лунная локальная дальнометрия оставляет слабо наблюдаемое направление, — приводится как сравнение ошибки станции с VLBI и без него. MODELLED, симулированное восстановление в замкнутом контуре (истина использует ту же модель наблюдений), детерминированное (с заданным начальным значением), НЕ проверено на реальных данных; без распространения по модели сил внутри решателя; никакого TRL, лётного наследия или одобрения агентств.
lunar-joint-od-clock.toml
Совместное многометодное определение орбиты (OD) и часов на Луне (СМОДЕЛИРОВАННАЯ сеть).
kind = "lunar-joint-od-clock"
n_sat = 3
n_earth = 6
seed = 42
sigma_vlbi_s = 1.0e-11
sigma_range_m = 0.1
sigma_isl_m = 0.1
station_lat_deg = -88.0lunar-llr-datum#
Семипараметрический датум лунной системы отсчёта Гельмерта, определяемый РЕАЛЬНОЙ АРХИВНОЙ наблюдательной кампанией, а не симулированной. Если lunar-frame-campaign убрал введённое преобразование, но всё ещё задавал сеть станций, расписание и сигму каждого наблюдения как ILLUSTRATIVE входные данные, то этот вид берёт все три из измерений: эпохи — это моменты передачи с земли архивных нормальных точек ILRS Consolidated Laser Ranging Data, наблюдения — лазерные дальности, реально выпущенные по пяти ретрорефлекторным массивам на Луне, а вес каждого наблюдения — собственная архивная точность этой нормальной точки bin_rms/sqrt(n_raw), считанная из файла. Координаты станций берутся из решения IERS ITRF2020 по SLR (приведённого к эпохе по опубликованным скоростям), а координаты рефлекторов — из таблицы 7 JPL DE430 в системе «средняя Земля / среднее вращение», которую реализует модель IAU 2015 WGCCRE. Частные производные дальностей накапливаются в совместную информационную матрицу Фишера по координатам рефлекторов и распространяются через ту же конструкцию Гельмерта в ковариацию датума, диагностируемую через crate::fim::crlb. При каждом прогоне выдаются ранг, дефект, число обусловленности, спектр, ненаблюдаемые направления в семипараметрическом базисе, самое слабое направление при полном ранге и доля каждого параметра в нём, а неограниченный параметр публикуется как NULL со статусом. Межмассивная корреляция MEASURED как строго нулевая, а не предполагается, потому что лазерная дальность затрагивает один массив. Запись, которую каталоги не могут разместить — станция без опубликованного положения ITRF, — ПРОПУСКАЕТСЯ И УЧИТЫВАЕТСЯ, ей никогда не подставляется замещающая координата. КАКИЕ ЛИНИИ MEASURED, А КАКИЕ ИМЕЮТ УРОВЕНЬ MODELLED — ЭТО СОДЕРЖАНИЕ ОТЧЁТА, А НЕ СНОСКА: эфемериды центра Луны и ориентация тела по IAU остаются смоделированными, а их совокупная величина выдаётся как невязка «наблюдаемое минус вычисленное» односторонней дальности по всем использованным точкам; тропосфера, приливы твёрдого тела, эксцентриситет станции, движение полюса, UT1-UTC, релятивистская задержка и часы станций отсутствуют и входят в эту невязку. Поскольку ошибка эфемерид попадает в ковариацию только через направление каждой линии визирования, при каждом прогоне весь датум также решается заново со всеми частными производными, наклонёнными на sensitivity_tilt_deg (со сменой знака), и выдаётся отношение, так что нечувствительность ковариации к смоделированным эфемеридам — это число, а не довод. Собственные показатели симулированной кампании ВЫЧИСЛЯЮТСЯ и печатаются рядом с измеренными, а не переписываются. MODELLED: семипараметрические показатели — это граница Крамера–Рао для сокращённого набора параметров на реальном расписании — не решённый датум, не анализ LLR и не геодезический продукт. Зафиксированный срез реальных данных поставляется с репозиторием, но не с опубликованным пакетом crate; укажите в data_dir копию этого среза.
lunar-llr-datum.toml
Семипараметрический лунный датум по Гельмерту по РЕАЛЬНОЙ архивной наблюдательной кампании (V3).
kind = "lunar-llr-datum"lunar-station-geodesy-baseline.toml
Геодезия лунной опорной станции, БАЗОВЫЙ вариант: только сегодняшние пять ретрорефлекторных матриц.
kind = "lunar-llr-datum"
epoch_year = 2024
epoch_month = 1
epoch_day = 1
arc_hours = 672.0
step_min = 60.0
delay_sigma_s = 1.0e-11
elevation_mask_deg = 10.0lunar-station-geodesy-with-station.toml
Геодезия лунной опорной станции, С СТАНЦИЕЙ: пять решёток ретрорефлекторов плюс один ретрорефлектор и один маяк VLBI в месте расположения лунной опорной станции на южном полюсе.
kind = "lunar-llr-datum"
extra_earth_elevation_mask_deg = 0.0
name = "lunar-reference-station-reflector"
lat_deg = -89.0
lon_deg = 0.0
alt_m = 0.0
name = "lunar-reference-station-beacon"
lat_deg = -89.0lunar-orbit-rendezvous#
MODELLED относительная навигация при стыковке в стиле «Orion — посадочный модуль» на низкой лунной орбите или эллиптической полярной орбите (класс Artemis). Преследователь и цель летят по одной орбите в лунной модели сил крейта; совместная 21-параметрическая пакетная оценка Гаусса — Ньютона по дуге (два вектора состояния аппаратов и устойчивые смещения сигнала в пространстве) объединяет абсолютную фиксацию положения каждого аппарата по ILLUSTRATIVE набору ретрансляторов класса LCNS (ретрансляторы за Луной отбрасываются, нужны четыре, синфазная ошибка сигнала в пространстве взаимно сокращается между аппаратами) и дальность по межспутниковой линии, причём точность дальнометрии берётся из границы слежения за кодом для пилот-сигнала LunaNet AFS. Сообщает формальную и монте-карловскую ошибку относительного положения и скорости в осях LVLH цели, доступность фиксаций, среднюю нормированную квадратичную ошибку оценивания в сравнении с ожидаемым значением, любое испытание, итерация которого не сошлась, дрейф при игнорировании гармоник гравитации и полную ковариацию 6x6, передаваемую дальше. Для круговой орбиты применима проверка в замкнутой форме по Хиллу и Клохесси — Уилтширу. MODELLED: иллюстративный набор ретрансляторов, бюджет ошибок и априорные значения; истинное движение и оценщик используют одну модель сил, поэтому NEES проверяет внутреннюю согласованность, а не ошибку модели. Не одобрено агентством; программное обеспечение консультативного характера, не сертифицированное навигационное оборудование.
lunar-orbit-rendezvous.toml
Лунное сближение: относительная навигация при стыковке типа «Orion — посадочный аппарат» на круговой полярной низкой окололунной орбите высотой 100 км (класса Artemis) с гравитационным полем Луны и сигналами в стиле LunaNet.
kind = "lunar-orbit-rendezvous"
orbit = "llo"
separation_m = 2000.0
arc_s = 7200.0
step_s = 20.0
n_relays = 8
sis_ure_m = 30.0
common_mode_fraction = 0.9Пока нет на GitHub
lunar-orbit-rendezvous-elfo.toml
Лунное сближение на эллиптической полярной орбите: относительная навигация при стыковке типа «Orion — посадочный аппарат» на полярной орбите 100 км на 3000 км с периселением над южным полюсом (класса Artemis), с гравитационным полем Луны и сигналами в стиле LunaNet.
kind = "lunar-orbit-rendezvous"
orbit = "elfo"
separation_m = 2000.0
arc_s = 7200.0
step_s = 20.0
n_relays = 8
sis_ure_m = 30.0
common_mode_fraction = 0.9Пока нет на GitHub
lunar-station-coverage#
Modelled-охват лунных опорных станций: перебор по методу Монте-Карло лунной модели дифференциального PNT по южно-полярной сетке пользователей и суткам эпох. Дифференциальная опорная станция в известной южно-полярной точке исправляет заданную орбитальную группировку (иллюстративную кеплерову или по табличным эфемеридам) с заданной ошибкой сигнала в пространстве, ошибкой привязки, задержкой поправок и квантованием линии; по каждой точке и по региону сообщаются процентили исправленной и неисправленной ошибки положения (3-D, горизонтальной, вертикальной), доступность, охват относительно заданного порога, уровни защиты DO-229E, радиус охвата по каждому азимуту и бюджет линии поправок на станции и в худшей точке. Не является утверждением о характеристиках какой-либо реальной системы; не связано с каким-либо агентством и не одобрено им. MODELLED.
lunar-station-coverage.toml
Покрытие лунной опорной станции: какую точность позиционирования и какой уровень защиты получает пользователь от лунной дифференциальной опорной станции в известной точке южного полюса над южной полярной областью в течение суток.
kind = "lunar-station-coverage"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.0lunar-station-coverage-public-sources.toml
Покрытие лунной опорной станции при ОФИЦИАЛЬНО ЗАЯВЛЕННЫХ допущениях: тот же вид, что в lunar-station-coverage.toml, где каждый входной параметр, который указывает публичный источник, задан по нему и сопровождён идентификатором источника; каждый входной параметр, которого ни один источник не указывает, сохранён из значения по умолчанию в дереве исходного кода и помечен как «ILLUSTRATIVE». Источники (получены 2026-10-12; названия, идентификаторы и лицензии в docs/LUNAR-REFERENCE-STATION.md): S1 arXiv:2602.08432v3 S2 IOAG Cislunar PNT Workshop 2025, "Lunar local Differential PNT and Selenodetic Reference Station" (слайды) S3 UNOOSA ICG WG-B, Lunar PNT, июнь 2024 (LunarPNT_Jun24_01_04.pdf) S4 IOAG Cislunar 2026, "Moonlight Programme Development Status"
kind = "lunar-station-coverage"
n_sats = 4
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.4765lunar-station-coverage-terrain.toml
Покрытие лунной опорной станции с рельефом: встроенный сценарий lunar-station-coverage с горизонтом для каждого пункта, рассчитанным трассировкой лучей по реальной цифровой модели высот Луны на станции и в каждой точке пользователя, вместо одной лишь плоской маски по углу места.
kind = "lunar-station-coverage"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
mask_deg = 5.0
station_lat_deg = -89.0lunar-surface#
MODELLED доступность позиционирования и времени на поверхности по площадкам и сезонам для южнополярных площадок класса Artemis. Для каждой площадки и сезона (эпоха и окно после неё) сообщает позиционирование по ретрансляторам (четыре и более ретранслятора ILLUSTRATIVE орбитальной группировки класса LCNS в зоне видимости и PDOP ниже порога; по тем же функциям, что и в moonlight-service-volume, а при наличии раздела о рельефе — с трассированным по лучам горизонтом рельефа из lunar-station-coverage), находятся ли Земля и Солнце над горизонтом площадки (аналитические Солнце, Луна и ориентация Луны с учётом либрации, которая и меняется с сезоном) и доступность времени (ретранслятор или Земля в зоне видимости) с самым длинным промежутком, когда нет ни того, ни другого, — это holdover, который должны пережить часы на поверхности. Результат для одной площадки совпадает с результатом moonlight-service-volume с точностью до бита. MODELLED: иллюстративный кеплеровский набор ретрансляторов на Луне со средним вращением; показатель по ретрансляторам не меняется с сезоном; рельеф — фрагмент LOLA 1200 m. Не одобрено агентством; программное обеспечение консультативного характера, не сертифицированное навигационное оборудование.
lunar-surface.toml
Доступность PNT и синхронизации времени на поверхности Луны по точке и сезону (южно-полярные точки класса Artemis).
kind = "lunar-surface"
season_dates = ["2028-01-01", "2028-04-01", "2028-07-01", "2028-09-30"]
window_days = 27.3217
step_min = 30.0
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7Пока нет на GitHub
lunar-surface-terrain.toml
Доступность PNT и времени на поверхности Луны по площадкам и сезонам с реальным горизонтом рельефа южного полюса по LOLA (южнополярные площадки класса Artemis).
kind = "lunar-surface"
season_dates = ["2028-01-01", "2028-04-01", "2028-07-01", "2028-09-30"]
window_days = 27.3217
step_min = 30.0
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7Пока нет на GitHub
lunar-time-budget#
MODELLED, сквозной бюджет ошибки времени по Координированному лунному времени (LTC): семь членов ошибки LTC, собранные как кривые ошибки времени x_i(τ) по всей сетке времён усреднения, суммируются по правилу квадратного корня в x_Σ(τ), и ТОЧКА ПЕРЕСЕЧЕНИЯ τ «часы против системы отсчёта», в которой растущий член часов обгоняет постоянный член реализации системы отсчёта в реальном времени (ниже неё бюджет ограничен системой отсчёта, выше — часами) — честный ответ на артефакт одного значения τ. Наклоны по τ заданы в замкнутой форме и аналитически проверяемы (часы τ^{+1/2}/τ^{+1}, пороговые уровни τ^0, измерение τ^{-1/2}), а строки часов воспроизводят опубликованные суточные спецификации часов (crate::clock_specs); ВЕЛИЧИНЫ пороговых уровней радио- и оптической линии, реализации системы отсчёта, релятивистской невязки и эфемерид — это Modelled-распределения бюджета (документированные значения по умолчанию, переопределяемые вызывающей стороной), а не измерения. Вклад работы — воспроизводимая точка пересечения τ, а не сертифицированное число по каждому члену; не сертифицировано для эксплуатационного хранения времени.
lunar-station-time-lab.toml
Лунная опорная станция времени: миниатюрные рубидиевые часы (miniRAFS), подстроенные под координированное лунное время (LTC), а затем оставленные в свободном ходе.
kind = "lunar-time-budget"
clock = "passive-h-maser"
clock = "mini-rafs"
steer_residual_ns = 0.5
ltc_realisation_ns = 0.05
station_height_sigma_m = 0.0
thresholds_ns = [1.0, 10.0, 100.0]
horizons_s = [3600.0, 86400.0, 604800.0, 2592000.0]lunar-time-budget.toml
Сквозной бюджет ошибки времени координированного лунного времени (LTC) на сетке tau.
kind = "lunar-time-budget"
clock = "passive-h-maser"lunar-time-offset#
Modelled-релятивистский ход часов Земля–Луна (лунное координатное время, LTC/TCL): вековой ход LTC−TT, получаемый из разности собственных потенциалов и кинетического члена Луны, с опубликованной полосой 56–59 мкс/сут, плюс накопленное смещение на горизонте.
lunar-time-offset.toml
Лунное координатное время (LTC/TCL): релятивистский ход часов Земля–Луна.
kind = "lunar-time-offset"
epoch_year = 2000
epoch_month = 1
epoch_day = 1
horizon_days = 1.0lunar-vlbi#
Modelled-наблюдаемая задержки геодезического лунного VLBI: земная база (две наземные станции, GCRS) наблюдает односторонний сигнал от лунного поверхностного маяка класса NovaMoon. Выдаёт ближнепольную задержку как разность двух дальностей, её скорость и поправку на кривизну волнового фронта в ближнем поле за пролёт — с перекрёстной проверкой по наблюдаемой Δ-DOR на плоской волне из той же кодовой базы в пределе дальнего поля, с частными производными, проверенными конечными разностями. Аналитический путь по умолчанию имеет уровень MODELLED и сопровождается оговорками о согласованности систем отсчёта, о движении полюса xp=yp=0 и о различии плоской волны и ближнего поля. Установка planetary_kernel_path, earth_orientation_kernel_path и moon_orientation_kernel_path запускает вместо него путь через ядра (DE440, MOON_PA_DE440, ITRF93; сошедшиеся барицентрические времена распространения света; добавляет частные производные маяка и станций для эпохи), чьи ньютоновская задержка и частные производные согласуются со сошедшимися временами распространения света NAIF SPICE до 0,06 пс и 7.4e-9. Не проверено по реальным данным VLBI.
lunar-vlbi.toml
Лунная геодезическая РСДБ: земная база наблюдает маяк на лунной поверхности.
kind = "lunar-vlbi"
beacon_lat_deg = 0.0
beacon_lon_deg = 0.0
beacon_alt_m = 0.0
epoch_year = 2024
epoch_month = 1
epoch_day = 1
horizon_hours = 6.0lunar-vlbi-fim#
Ковариация координат станций Lunar-VLBI: частные производные задержки наблюдаемой lunar-vlbi, накопленные по явному РАСПИСАНИЮ (базовые линии × эпохи) в информационную матрицу Фишера, обращённую и выданную как ковариация координат станций и сигма станции по каждой координате — вычисленный выходной результат движка, а не скалярная точность задержки, пропущенная через допущенный изотропный множитель равного распределения g = 3. Состояние несёт координаты станций, ФИКСИРОВАННЫЕ относительно Земли (ITRS), поэтому якобиан — это инерциальная частная производная, повёрнутая матрицей GCRS→ITRS каждой эпохи: именно вращение Земли делает эти координаты наблюдаемыми, и отчёт ИЗМЕРЯЕТ, а не допускает, разворот линии визирования относительно Земли и склонение маяка. Одно наблюдение — это одна пара (базовая линия, эпоха), в которой ОБЕ станции выше маски по углу места, с весом 1/delay_sigma_s^2. В каждом прогоне выдаются ранг, дефект датума, число обусловленности, полный информационный спектр, ковариационная матрица, сигмы по каждой станции и каждой оси и 3-D, а также нулевое пространство свободной сети; при дефиците ранга главная сигма публикуется как NULL со статусом и никогда не считывается из почти вырожденного обратного. Значение равного распределения c*delay_sigma_s*sqrt(g/N) для ТОГО ЖЕ расписания выдаётся рядом с вычисленным значением вместе с отношением, а также с изотропной границей по следу sqrt(p/trace(M)), которую AM-HM делает жёстким нижним пределом, — поэтому отношение показывает анизотропию, отброшенную допущением. Замыкание задержек tau_ik = tau_ij + tau_jk делает геометрически независимыми только n-1 из n(n-1)/2 базовых линий; отчёт указывает оба числа. MODELLED: эфемерида центра Луны, часы станций, тропосфера и параметры ориентации Земли ЗАФИКСИРОВАНЫ, а наблюдения считаются независимыми, поэтому ковариация — это граница Крамера — Рао для сокращённого набора параметров, а не предсказанный результат сеанса; сигма задержки, координаты станций и расписание — входные данные. Частная производная, которую якобиан геометрической задержки опускает (разностный член Шапиро), измеряется конечной разностью и выдаётся. Это не геодезический продукт.
lunar-vlbi-fim.toml
Ковариация координат станций лунной РСДБ по явному расписанию наблюдений (G8, статья D3).
kind = "lunar-vlbi-fim"mars-pnt#
PNT на Марсе в дальнем космосе: симулированная ретрансляционная орбитальная группировка MARCONI (ареостационарные и наклонные ретрансляторы, ведущие одностороннее вещание и ретранслирующие двусторонний обмен со станцией дальнего космоса) осуществляет навигацию опорного пользователя (transfer | lmo | surface) через совместный оценщик слияния односторонних и двусторонних радиометрических данных. Сообщает геометрию и видимость по эпохам, достигнутое СКО относительно истины и формальную ковариацию (положение 1σ / 3σ) — честный симулированный показатель качества, а НЕ сертифицированный уровень защиты.
mars-pnt-lmo.toml
Mars PNT — пользователь на низкой орбите Марса навигируется по моделируемой группировке ретрансляторов MARCONI (ареостационарные ретрансляторы, передающие в одну сторону и ретранслирующие в две стороны на станцию дальнего космоса) с помощью совместной оценки слияния односторонних и двусторонних радиометрических измерений.
kind = "mars-pnt"
user = "lmo"
clock_class = "uso"
step_s = 60.0
duration_s = 7200.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4mars-pnt-surface.toml
Mars PNT — неподвижный пользователь на поверхности (спускаемый аппарат или ровер на вращающейся поверхности Марса) навигируется по моделируемой группировке ретрансляторов MARCONI с помощью совместной оценки слияния односторонних и двусторонних радиометрических измерений.
kind = "mars-pnt"
user = "surface"
clock_class = "uso"
step_s = 30.0
duration_s = 7200.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4mars-pnt-transfer.toml
Mars PNT — пользователь на траектории перелёта к Марсу или захвата (высокая эксцентричная ареоцентрическая дуга — длинная дуга, которую аппарат проходит на подлёте или на орбите захвата) навигируется по моделируемой группировке ретрансляторов MARCONI с помощью совместной оценки слияния односторонних и двусторонних радиометрических измерений.
kind = "mars-pnt"
user = "transfer"
clock_class = "dsac"
step_s = 120.0
duration_s = 28800.0
nmax = 4
range_sigma_m = 1.0
doppler_sigma_mps = 1.0e-4mission-thread#
MODELLED бюджет ошибок навигации и времени заданной цепочки фаз миссии от запуска до входа в атмосферу: запуск и выведение, сближение и стыковка на низкой околоземной орбите (повторяемая), транслунная инжекция и цислунный перелёт, сближение на лунной орбите, спуск, пребывание на поверхности, взлёт и возвращение с входом в атмосферу, причём каждая фаза — один из восьми зарегистрированных видов со своими датчиками и фильтром. Ковариация 6x6, часы и система отсчёта передаются от фазы к фазе по заданному правилу (перенос, раздувание или повторный захват); преобразования систем отсчёта и шкал времени (GCRF, MCI, MCMF, UTC, TT, TDB, LTC) — самостоятельные строки бюджета, причём состояние Луны берётся из необязательного фрагмента ядра DE440, а аналитический ряд служит заявленным запасным вариантом. Необязательное наложение наземной сети задаёт долю времени слежения каждой фазы. Сообщает бюджет по фазам (1-сигма на входе, в пике и на выходе, каждый вклад с единицей измерения), запас относительно заданного требования, самое слабое звено, события и рисунок временной шкалы. MODELLED: каждое число — заданный входной параметр; цепочка следует одному стеку, и никакой аппарат не моделируется. Только открытые источники; не связано ни с каким агентством и не одобрено им; программное обеспечение консультативного характера, не сертифицированное навигационное оборудование.
mission-thread-artemis-class.toml
Цепочка миссии класса Artemis: бюджет ошибок навигации и времени одной цепочки фаз от запуска до входа в атмосферу, построенный по общедоступным материалам концепции операций.
kind = "mission-thread"
title = "Artemis-class mission thread (ILLUSTRATIVE)"
seed = 20261024
epoch_utc = "2028-01-01T00:00:00Z"
moon_kernel_path = "tests/fixtures/mission_thread/de440s_moon_2028-01-01_2028-04-01.bsp"
min_elevation_deg = 10.0
handover_gap_s = 120.0
step_s = 300.0Пока нет на GitHub
mission-thread-short.toml
Короткая цепочка фаз миссии, которая выполняется только из бинарного файла: запуск и выведение, одна встреча на низкой околоземной орбите, одни сутки транслунного перелёта, возвращение и вход в атмосферу, с положением Луны по аналитическому ряду (без файла ядра). Это поставляемый в комплекте аналог mission-thread-artemis-class, который читает ядро Луны, вырезанное из рабочей копии.
kind = "mission-thread"
title = "Short mission thread, launch to entry (ILLUSTRATIVE)"
seed = 20261028
epoch_utc = "2028-01-01T00:00:00Z"
frame = "gcrf"
x = [5285007.866, 1880185.649, 3025316.817, -137.105, 385.389, 0.0]
sigma_pos_m = 10.0
sigma_vel_mps = 0.01Открыть в Kshana Studio · Пока нет на GitHub
moonlight-service-volume#
Modelled-анализ лунного навигационного объёма обслуживания по ILLUSTRATIVE орбитальной группировке класса Moonlight/LCNS на лунной орбите из публичных источников (не связана с ESA): перебирает селенографическую сетку широты и долготы на временном горизонте и сообщает DOP, охват и доступность (≥4 спутников И PDOP < порога), а также обобщённую огибающую уровней защиты лунного ARAIM (HPL/VPL) по объёму. Геометрия DOP ПОВТОРНО ИСПОЛЬЗУЕТ ядро, VALIDATED по gnss_lib_py (crate::orbit::dop); уровень защиты ПОВТОРНО ИСПОЛЬЗУЕТ механизм лунного ARAIM LunaNet LNIS (crate::lunar, σ_URE≈30 м) и в частном случае сводится к существующему уровню защиты для южного полюса. Композиция MODELLED: набор ретрансляторов на круговых или эллиптических кеплеровых орбитах (не реальные эфемериды LCNS/NRHO с дифференциальной коррекцией), Луна со средним вращением (без либрации и прецессирующего полюса). Детерминирован (чистая геометрия). Никакого TRL, лётного наследия или одобрения агентств.
moonlight-service-volume.toml
Анализ ЗОНЫ ОБСЛУЖИВАНИЯ лунной навигации — группировка класса Moonlight / LCNS.
kind = "moonlight-service-volume"
n_sats = 8
sma_km = 9737.4
eccentricity = 0.6
inc_deg = 57.7
argp_deg = 90.0
lat_min_deg = -90.0
lat_max_deg = -60.0ntn-positioning#
Позиционирование по нисходящей линии 5G нетеррестриальной сети (NTN) в диапазоне S подвижной спутниковой службы (MSS) (диапазон 3GPP n256, нисходящая линия от 2170 до 2200 МГц; несущая по умолчанию 2172,5 МГц): граница Крамера–Рао (CRB) для времени прихода, c / (2 pi beta sqrt(2 (C/N0) T)), где beta — среднеквадратичная (по Габору) ширина полосы плоского спектра OFDM (B/sqrt(12)), и для доплеровского сдвига комплексного тона, sqrt(3 / (2 pi^2 (C/N0) T^3)), для каждого сигнала (по умолчанию канал New Radio 5 МГц с занятой полосой 4,5 МГц и узкополосный канал 200 кГц с занятой полосой 180 кГц); затем для любой орбитальной группировки LEO — определения по времени прихода нисходящей линии с неизвестными часами приёмника (с заданным начальным значением, в качестве сигмы берётся граница плюс ошибка сетевой синхронизации), их PDOP и формальная 3D-сигма, а также определение по доплеровскому сдвигу одного спутника на самом длинном пролёте при фиксированной высоте. MODELLED: шаг от ширины полосы к границе — это классическая замкнутая форма, проверенная численным интегрированием плоского и ограниченного по полосе спектров BPSK (внутренняя согласованность, без привязки к опубликованному разобранному числу), а точность позиционирования — это граница для канала без многолучевости с заявленной ошибкой синхронизации, а не достигнутый результат.
ntn-5g-positioning.toml
Позиционирование по нисходящей линии нетеррестриальной сети (NTN) 5G в подвижной спутниковой службе в S-диапазоне.
kind = "ntn-positioning"
seed = 5
carrier_hz = 2172.5e6
integration_s = 0.1
doppler_integration_s = 1.0
sync_error_m = 1.0
duration_s = 600.0
step_s = 10.0oem-interop#
Мост совместимости CCSDS OEM: импорт Orbit Ephemeris Message, созданного внешним инструментом динамики полёта (OEM выдают GMAT, Orekit и STK), и сообщение о его сегментах, объектах, системах отсчёта и охваченном интервале эпох плюс проверка согласованности скоростей; без входных данных он выполняет круговую передачу сгенерированной эталонной орбиты и сообщает точность соответствия импорта и экспорта. Структурная и физическая проверка приёма данных уровня MODELLED, а НЕ проверка точности орбиты источника.
oem-interop.toml
Демонстратор моста взаимодействия CCSDS OEM (взаимодействие GMAT / Orekit / STK).
kind = "oem-interop"optical-atmosphere#
MODELLED, оптический PNT через атмосферу: для оптической линии и набора наземных площадок с заданным климатом облачности сообщаются зависящие от длины волны и возвышения потери в чистом воздухе (закон видимости Кима плюс рэлеевское рассеяние), состояние турбулентности по Хафнагелю–Вэлли (дисперсия Рытова, индекс мерцаний, параметры гамма-гамма, усреднение по апертуре), доступность, определяемая погодой, относительно запаса линии (оптическая толщина облаков из логнормального климата жидкой воды, экстинкция в геометрической оптике, независимое замирание из-за турбулентности), запас линии, необходимый для целевых значений доступности, распределение длительности перерывов, рост ошибки времени и дальности за каждый перерыв по модели holdover часов, доступность при разнесении площадок с корреляцией по расстоянию и гипотетические выигрыши от методов улучшения (длина волны, приёмная апертура, снижение мерцаний адаптивной оптикой, дополнительный запас). VALIDATED как реализация заявленных формул по независимому оракулу на mpmath: дисперсия Рытова, индекс мерцаний, вероятность замирания гамма-гамма, коэффициент усреднения по апертуре, оптическая толщина облаков и чистого воздуха. MODELLED: все входные данные по погоде, методам и часам, а также допущения о независимости и копулах; сравнения с измеренной записью доступности не проводилось. Консультативный анализ, а не сертифицированный продукт по доступности или навигации.
optical-atmosphere-network.toml
Оптический PNT сквозь атмосферу: три ILLUSTRATIVE наземных пункта (более облачный северный, средний центральный и более ясный южный), наблюдающих оптический терминал на LEO под углом места 30 градусов на длине волны 1550 нм. Облачные климаты — заданные входные данные, а не измерения и не значения какого-либо набора данных, поэтому всякая приведённая ниже доступность — MODELLED. Для каждого пункта прогон сообщает потери в ясном воздухе, состояние турбулентности по Hufnagel-Valley, доступность относительно запаса линии, запас, необходимый для 40 / 50 / 60 / 70 процентов (оптическая линия не проходит сквозь плотную облачность, поэтому у пункта есть потолок доступности, который не поднимает никакой запас, он указывается для каждого пункта), распределение длительности отказов и рост ошибки времени за отказ для трёх классов часов, а затем доступность при разнесении пунктов для лучших 1, 2 и 3 пунктов при независимой и при коррелированной по расстоянию погоде (длина декорреляции 500 км).
kind = "optical-atmosphere"
wavelength_nm = 1550.0
elevation_deg = 30.0
availability_targets_pct = [40.0, 50.0, 60.0, 70.0]
tx_power_w = 0.5
tx_aperture_m = 0.1
rx_aperture_m = 0.4
range_km = 1000.0optical-atmosphere-techniques.toml
Сценарии «что, если» по методам улучшения для одного ILLUSTRATIVE наземного пункта: смена длины волны, большая приёмная апертура, снижение сцинтилляций адаптивной оптикой и дополнительный запас; каждый метод предсказан как прирост доступности относительно базового уровня того же пункта. Приросты — заданные входные данные (Kshana не моделирует контур адаптивной оптики); новая длина волны или апертура пересчитывает бюджет в ясном небе, потери в ясном воздухе и усреднение по апертуре, и всё это MODELLED. Терминал намеренно ограничен запасом (около 3 дБ до атмосферы), чтобы методы имели значение; прогон также указывает потолок облачности, который не поднимает никакой метод. Цели ниже 100 процентов в таблице запасов выдаются как необходимый дополнительный запас (отрицательное значение означает избыток).
kind = "optical-atmosphere"
wavelength_nm = 1550.0
elevation_deg = 25.0
availability_targets_pct = [50.0, 60.0, 70.0]
tx_power_w = 0.5
tx_aperture_m = 0.1
rx_aperture_m = 0.3
range_km = 1000.0orbit#
Доступность GNSS и DOP по орбитальной группировке (Walker / TLE / RINEX).
orbit-gnss-challenged.toml
Доступность GNSS, полученная из орбитальной геометрии (а не из окон, заданных вручную).
kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 10.0
sigma_uere_m = 1.0
step_s = 60.0
duration_s = 86400.0
altitude_km = 8000.0orbit-molniya.toml
Доступность GNSS для пользователя на сильно эксцентричной орбите (Молния) по орбитальной геометрии.
kind = "orbit"
seed = 11
threshold_ns = 5.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 20229.0orbit-multignss.toml
Доступность нескольких GNSS по орбитальной геометрии: GPS + Galileo вместе.
kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 10.0
sigma_uere_m = 1.0
step_s = 60.0
duration_s = 86400.0
altitude_km = 8000.0orbit-real-tle.toml
Доступность GNSS по РЕАЛЬНОЙ геометрии спутников, по двухстрочным наборам элементов.
kind = "orbit"
seed = 13
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0orbit-rinex.toml
Доступность GNSS по реальным широковещательным эфемеридам RINEX 3.
kind = "orbit"
seed = 13
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0orbit-sgp4-gps.toml
Доступность GNSS по РЕАЛЬНОЙ орбитальной группировке GPS, распространённой с помощью SGP4/SDP4.
kind = "orbit"
seed = 17
threshold_ns = 10.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 120.0
duration_s = 43200.0
altitude_km = 500.0orbit-urban-canyon-skyline.toml
Доступность GNSS и геометрический фактор на дне городской улицы: вид orbit с пользователем в наземном пункте (user_site) под предустановкой горизонта city-street.
kind = "orbit"
seed = 7
threshold_ns = 5.0
mask_deg = 5.0
sigma_uere_m = 1.0
step_s = 300.0
duration_s = 86400.0
lat_deg = 52.0passes#
Предсказание пролётов над наземной станцией: пролёты видимости во временной области (AOS/TCA/LOS, максимальное видимое возвышение, длительность) круговой орбиты, заданной средними элементами SGP4 на начало окна, над станцией выше маски возвышения в пределах окна, с общим временем доступа. Распространение SGP4/SDP4 в связанной с Землёй системе IAU 2006/2000A (необязательно UT1 − UTC и движение полюса), тропосферная рефракция ITU-R P.834-9 и время распространения света нисходящей линии (оба включены по умолчанию), пересечения решаются до 1e-7 с, а кульминация — поиском золотого сечения. Геометрия пролёта VALIDATED по Orekit 13.1.8 на станциях на уровне моря; орбита и станция сценария — иллюстративные входные данные.
passes.toml
Демонстратор прогноза проходов над наземной станцией (наземный сегмент и эксплуатация).
kind = "passes"
altitude_km = 550.0
inclination_deg = 97.6
raan_deg = 0.0
arg_lat_deg = 0.0
station_lat_deg = 52.2
station_lon_deg = 4.4
station_alt_m = 0.0pvt#
Одноточечное определение положения по реальным наблюдениям: определение положения приёмника по файлу наблюдений RINEX 3 и файлу широковещательной навигации (кодовые псевдодальности, широковещательные эфемериды, ионосфера по Клобучару, тропосфера по Саастамойнену/Нилу), при необходимости с проверкой по съёмочной координате.
pvt-abmf.toml
Одиночное определение местоположения (SPP) по реальным наблюдениям с эталонной станции IGS.
kind = "pvt"
mask_deg = 5.0
dual_frequency = true
truth_ecef = [2919786.4480, -5383745.1780, 1774604.7340]
obs_rinex = """
nav_rinex = """quantum-anomaly-detect#
MODELLED, обнаружение неисправностей и аномалий для квантовых систем PNT: размеченный каталог неисправностей (скачок частоты, дрейф и потеря захвата часов; скачок смещения и пропадание датчика), ROC AUC статистики обнаружения (с доверительным интервалом по бутстрэпу из внешне проверенного eval_stats) и минимально обнаружимая неисправность при фиксированной частоте ложных тревог, причём монитор с квантовыми часами (меньший шум) обнаруживает меньшие неисправности — как честное TradeEvidence и репрезентативность. Гауссова модель статистики обнаружения (AUC = Phi(mu/(sigma*sqrt2))); моделирует класс, иллюстративные параметры из публичных источников, без TRL, лётных испытаний и сертификации.
quantum-anomaly-detect.toml
Обнаружение отказов и аномалий для квантовых систем PNT — размеченный каталог отказов + ROC AUC + минимальный обнаруживаемый отказ, монитор с квантовыми часами против классического. MODELLED; иллюстративные параметры из публичных источников; моделируется класс, без заявлений о TRL и лётной пригодности.
kind = "quantum-anomaly-detect"
fault_mu = 1.0
quantum_sigma = 0.3
classical_sigma = 1.0
pfa = 1.0e-3
pd = 0.9
samples = 2000
seed = 42quantum-gnss-free-nav#
MODELLED, квантовая навигация без GNSS: во время перерыва в работе GNSS бюджет квантовой (на холодных атомах, интерферометрической) инерциальной системы в сравнении с классической инерциальной навигационной системой навигационного класса — рост ошибки положения на выбеге, holdover до порога по положению и сравнение квантового и классического как честное TradeEvidence с репрезентативностью. Честное замечание о наблюдаемости: без внешнего определения смещение акселерометра ненаблюдаемо, поэтому ошибка растёт; квантовый датчик замедляет этот разрыв, но не закрывает его. Иллюстративные параметры устройств из публичных источников; моделирует класс, без TRL, лётных испытаний и сертификации.
quantum-time-transfer#
MODELLED: цепочка доверенной квантовой синхронизации: сквозной бюджет передачи времени квантовой системы (часы на оптической решётке + линия запутанных / одиночных фотонов) в сравнении с классической (CSAC + двусторонняя радиосвязь), повторно используемый уровень защиты синхронизации времени + показатель качества безопасности при атаке задержкой или повтором (1-P_md), вероятность обнаружения аномалии часов + задержка CUSUM и компромисс «квантовая система против классической» как честный TradeEvidence с записью о репрезентативности и разрывах до лётной готовности. Иллюстративные параметры устройств и линий из открытых источников; моделируется класс устройств, без заявлений об уровне TRL, лётной готовности или сертификации.
quantum-time-transfer.toml
Доверенная квантовая синхронизация — сквозная цепочка передачи времени, защищённое распространение, обнаружение аномалий и сопоставление квантового и классического вариантов. MODELLED; иллюстративные параметры устройств и линий из публичных источников; моделируется класс, без заявлений о TRL и лётной пригодности.
kind = "quantum-time-transfer"
integration_s = 1.0
dissemination_interval_s = 100.0
link_loss_db = 30.0
classical_link_sigma_s = 1.0e-9
monitor_pfa = 1.0e-3
attack_delay_s = 5.0e-9
clock_fault_sigma = 4.0quantum-trade#
Компромисс «квантовая система против классической» для PNT (13503): выигрыш в holdover времени и инерциальном holdover от часов-кандидата (измеренная кривая ADEV — опора обоснованности — или класс квантовых часов) по сравнению с классическим базовым классом, с оговоркой о допущении по уровню шума на больших tau, которая сопровождает артефакт, а также огибающая устойчивости в зависимости от времени в условиях отсутствия GNSS. MODELLED; количественно оценивает (но никогда не подтверждает) устройство партнёра. Часы-кандидат задаются измеренной кривой (candidate_adev_taus + candidate_adev_values, одинаковой длины, не менее 2 точек; при указании обеих форм приоритет у неё) или полем candidate_clock_class.
quantum-trade.toml
Сравнение квантовых и классических PNT с загрузкой измеренной девиации Аллана (ADEV) (демонстратор ESA AO/1-13503).
kind = "quantum-trade"
timing_threshold_s = 20.0e-9
position_threshold_m = 100.0
baseline_clock_class = "csac"
candidate_adev_taus = [1.0, 10.0, 100.0, 1000.0, 10000.0, 100000.0]
candidate_adev_values = [5.0e-16, 1.6e-16, 6.0e-17, 4.0e-17, 6.0e-17, 2.0e-16]
resilience_times_s = [1.0, 60.0, 600.0, 1800.0, 3600.0, 7200.0, 14400.0, 28800.0]realtime-frame-eop#
Бюджет предсказания лунной системы отсчёта и ориентации Земли в реальном времени: таблица 1 P4 (проверка согласованности ошибки системы отсчёта — постобработка ~0,27 m ↔ ~0,010 ms и реальное время ~15 m ↔ ~0,5 ms, причём каждое положение в системе отсчёта выражено через эквивалентную ошибку UT1 по плечу рычага L19 Δr = D_EM·ω⊕·ΔUT1) и таблица 2 (измеренная ошибка предсказания UT1 в зависимости от горизонта — кривая L18, считанная прямо с реального ряда IERS finals2000A: окончательный предел Bulletin A − Bulletin B и ошибка многодневного предсказателя персистентности, каждая из которых отображена в положение в лунной системе отсчёта через L19), а также среднеквадратичный бюджет ошибки системы отсчёта L21 в реальном времени (EOP + эфемериды + предел реализации). VALIDATED замкнутая форма (плечо рычага L19, ω⊕ перекрёстно проверена по углу вращения Земли CIO) и VALIDATED реальные данные (кривая L18 по реальным строкам finals2000A); MODELLED — величины ковариации OD лунного ретранслятора и предел реализации системы отсчёта (репрезентативные выделения) и предсказатель персистентности (не операционный алгоритм Bulletin A от IERS). Это не сертифицированный продукт системы отсчёта реального времени.
realtime-frame-eop.toml
Бюджет прогноза лунной системы отсчёта и ориентации Земли (EOP) в реальном времени.
kind = "realtime-frame-eop"
epoch = "2022-01-01"
horizons_days = [1, 2, 3]reentry#
Коридор баллистического входа в атмосферу по Аллену–Эггерсу: пиковое замедление (не зависящее от баллистического коэффициента, V_e^2 sin|γ|/(2eH)), скорость и высота при пиковой перегрузке и скорость пикового нагрева для заданных скорости входа, угла траектории и баллистического коэффициента в экспоненциальной атмосфере, а также планарное интегрирование материальной точки для того же баллистического входа с учётом гравитации, кривизны Земли и стандартной атмосферы США 1976 (пиковое замедление, скорость, высота и время в момент пика). MODELLED баллистический вход (без подъёмной силы); выходная величина нагрева — это СКОРОСТЬ пикового нагрева, а не тепловой поток (без аэротермической модели и модели ТЗП).
reentry.toml
Демонстратор коридора баллистического входа в атмосферу (Аллен–Эггерс, анализ миссии).
kind = "reentry"
entry_velocity_m_s = 7800.0
flight_path_angle_deg = 6.0slot-timing#
Слотовая синхронизация: время в секундах до выхода свободно идущих часов за защитный интервал слота маршрутизации или постановки задач, привязанного ко времени (наибольшая абсолютная ошибка времени, которую допускает слот), вклад каждого члена в этот момент с указанием доминирующего (неопределённость привязки, белый фазовый шум, белый, фликкерный шумы частоты, шумы случайного блуждания и случайного хода частоты, остаточное смещение частоты, температура, старение), оставшееся время с последней привязки и наибольший интервал между привязками, при котором часы остаются в пределах слота, за вычетом задержки привязки. Генератор задаётся ДЕФОЛТНЫМ КЛАССОМ (csac, uso, dsac, tcxo, ocxo или rafs: одна цитируемая односекундная девиация Аллана и допущенный красный шумовой пол), ПРЕДУСТАНОВКОЙ ПО ТЕХПАСПОРТУ для телекоммуникационной синхронизации или встроенным ТЕХПАСПОРТОМ (максимумы девиации Аллана, подогнанные как огибающая, плюс старение и температурный коэффициент), либо встроенной MEASURED ЗАПИСЬЮ ФАЗЫ (её перекрывающаяся девиация Аллана подогнана взвешенным методом наименьших квадратов в базисе белой фазы и частотной модуляции по IEEE Std 1139, так что красный шумовой пол измерен, а не допущен). Выход за пределы наибольшего времени усреднения, которое поддерживает техпаспорт или запись, помечается как экстраполяция. Необязательный раздел о спуфинге добавляет уровень защиты синхронизации времени для приёмника на орбите: орбитальную скорость и период, как долго один наземный спуфер может воздействовать на спутник за пролёт, нижний предел монитора с использованием часов и задержку обнаружения CUSUM, условную границу, смещение, которое накапливает спуфер при заданной максимальной скорости нарастания, пока спутник не выйдет из зоны его действия или не будет выполнена независимая проверка, и независима ли каждая проверка по наземному контакту или по межспутниковой связи от этого спуфера. VALIDATED: инверсия holdover по подогнанной записи, отложенная (holdout) на реальных цезиевых часах, измеренных относительно водородного мазера (tests/slot_timing_cs5071a_holdout.rs, зависит от наличия данных); на измеренном кварцевом генераторе отложенное предсказание консервативно, но не укладывается в порог, поэтому случай кварца относится к MODELLED. MODELLED: источники по классу и техпаспорту, детерминированные члены и оценка спуфинга.
slot-timing-ocxo-leo.toml
Синхронизация слотов: как долго термостатированный кварцевый генератор (OCXO) на малом спутнике на низкой околоземной орбите остаётся в пределах защитного интервала слота маршрутизации по времени после последнего решения по глобальной навигационной спутниковой системе (GNSS) и как часто ему нужно решение.
kind = "slot-timing"
preset = "ocxo"
guard_ns = 100.0
k_sigma = 3.0
fix_sigma_ns = 10.0
elapsed_since_sync_s = 600.0
fix_latency_s = 5.0
temperature_excursion_k = 2.0solar-system#
Вся Солнечная система на одну эпоху, для PNT (позиционирование, навигация и время) вокруг любого тела. Для Солнца, восьми планет, Плутона, Луны, Фобоса, Деймоса, Ио, Европы, Ганимеда, Каллисто и Титана выводятся гелиоцентрическое положение и скорость в ICRF (Международная небесная система отсчёта, экваториальная J2000), гелиоцентрическое расстояние и эклиптические долгота и широта J2000, гравитационный параметр, экваториальный и средний радиус, J2 там, где он опубликован, и его опорный радиус, сидерический период вращения, полюс по IAU и начальный меридиан на эпоху, трек орбиты, дискретизированный на одном обороте (гелиоцентрический для планет, относительно родительского тела для спутников), а также время распространения света, односторонняя и двусторонняя дальность, солнечная задержка Шапиро и угловое расстояние от Солнца относительно тела-наблюдателя (по умолчанию Земля); дополнительные связи from/to обрабатываются так же. Положения: кеплеровы элементы JPL по Standish и Williams (таблица 1 для 1800 г. н. э. – 2050 г. н. э., таблицы 2a/2b для 3000 г. до н. э. – 3000 г. н. э.) с номинальной ошибкой каждой планеты, лунный ряд Montenbruck & Gill для разделения Земли и Луны, средние элементы JPL с синхронной скоростью вращения по IAU для марсианских и галилеевых спутников и модель вращения IAU для Титана. Время распространения света: радиометрическое решение методом неподвижной точки, передатчик в запаздывающем положении; ньютоновское, с задержкой Шапиро, приводимой отдельно. VALIDATED по JPL Horizons (DE441) в пределах удвоенной номинальной ошибки: от Меркурия до Сатурна и Земля по таблице 1 (наихудший случай 1,87 номинальной) и все восемь планет по таблицам 2a/2b (наихудший случай 1,71 номинальной), а также время распространения света от Земли до Марса и Юпитера. MODELLED, каждая строка помечена: Уран и Нептун по таблице 1 (2,0 и 5,2 номинальной ошибки относительно DE441), Плутон (строка 1992; ошибка не указана), Луна и семь спутников (измерено относительно Horizons, опубликованной границы нет).
solar-system-tour.toml
Вся Солнечная система в одну эпоху.
kind = "solar-system"
epoch = "2026-09-28T00:00:00"
observer = "Earth"
track_points = 180
from = "Mars"
to = "Jupiter"
from = "Saturn"
to = "Earth"space-packet#
Кадрирование по протоколу пакетов космической связи CCSDS 133.0-B: кодирование синтетического потока пакетов TM/TC (первичный заголовок из 6 октетов + поле данных) и вывод декодирования заголовка каждого пакета, общего числа октетов и точного кругового преобразования кодирование↔декодирование. Детерминированное кадрирование с точной разметкой битов — уровень совместимости форматов пакетов между агентствами; это НЕ сертификация соответствия (логики вторичного заголовка, CRC и сегментации сверх флагов нет).
space-packet.toml
Демонстратор кадрирования пакетов Space Packet по CCSDS 133.0-B (взаимодействие TM/TC).
kind = "space-packet"
apid = 100
telecommand = false
packet_count = 4
data_len = 32space-weather#
Модель космической погоды: индексы солнечной (F10.7/F10.7a) и геомагнитной (Kp, с определяющей таблицей Kp↔ap) активности, управляемая ими экзосферная температура по Jacchia-1971 (независимо проверена по опубликованным значениям для минимума, среднего уровня и максимума солнечной активности) и термосферная плотность нейтралов по Jacchia-1971 при среднесуточной экзосферной температуре в сравнении со статическим профилем без учёта активности на ряде высот — зависимость плотности от солнечного цикла, которую статическая атмосфера опускает. MODELLED: плотность согласуется с плотностями, полученными по акселерометрам (TOLEOS CHAMP и GRACE), в пределах множителя 2 в максимуме солнечной активности, но примерно в 1.7x завышена в солнечном минимуме 2008 года.
space-weather.toml
Демонстратор модели среды космической погоды.
kind = "space-weather"
kp = 4.0
altitudes_km = [300.0, 400.0, 500.0, 600.0, 800.0]spectrum#
Модель спектра L-диапазона и водопадная диаграмма: весь L-диапазон GNSS как одна спектральная плотность мощности (PSD), частота по горизонтали, время по вертикали, при заданной сценарием временной шкале помех-глушителей. СИГНАЛЫ: GPS L1 C/A и L2C (BPSK(1)), открытый сервис Galileo E1 (MBOC(6,1,1/11) или BOC(1 1)), GPS L5 и Galileo E5a (BPSK(10)), каждый на своей несущей с минимальной принимаемой мощностью по спецификации интерфейса (IS-GPS-200, IS-GPS-705, Galileo OS SIS ICD), если не задано иное; GLONASS, BeiDou и Galileo E6 не моделируются. ГЛУШИТЕЛИ: тон непрерывной волны, плоский узкополосный шум, линейный пилообразный чирп и широкополосный шум, согласованный с собственной модуляцией диапазона, у каждого — центр, полоса, принимаемая мощность (напрямую либо через EIRP и дальность по потерям в свободном пространстве вида подавления) и моменты включения и выключения. Каждый глушитель оценивается относительно каждого диапазона по коэффициенту спектрального разделения kappa в полосе приёмника, и (C/N0)_eff = [1/(C/N0) + sum (J/S) kappa]^-1; для одного глушителя это равно уравнению защиты от помех вида подавления при Q = 1/(R_c kappa), и отчёт содержит эту перекрёстную проверку (и рядом репрезентативное значение Q вида подавления). Уровень шума равен k T_sys при T_sys = T_ant + 290 K (F - 1). Водопад усредняет каждую ячейку по её интервалу частоты и по её строке (чирпы точно, целые развёртки плюс неполная; глушители, переключающиеся в середине строки, — по скважности), так что временная шкала C/N0 и картинка получаются из одних и тех же чисел; result.json содержит сетку, усреднённую блоками по мощности, C/N0 и J/S для каждого диапазона на строку, а для каждого глушителя и диапазона — SSC, Q, J/S, J/S в полосе и установившееся C/N0. Необязательный [iq]: модель, отрисованная как комплексный IQ в один момент, записанная в запись SigMF (cf32_le или ci16_le), считанная обратно и сопоставленная с оценкой Уэлча. Необязательный [recording] (нативные сборки): PSD Уэлча реальной записи SigMF рядом с моделью. VALIDATED: PSD сигналов по учебниковым ширинам главного лепестка (BPSK(n) 2n x 1,023 MHz от нуля до нуля; лепестки BOC(1 1) с центрами на +/-1.023 MHz) и коэффициенты спектрального разделения по их замкнутым формам на основе равенства Парсеваля и по Q = 1 (CW) и 1,5 (согласованный) из Kaplan & Hegarty. MODELLED: мощности глушителей, временная шкала, полосы входных трактов, трактовка непрерывного спектра (без кодовых линий) и отсутствие АРУ, бланкирования и диаграммы направленности антенны.
l-band-waterfall-jamming.toml
Водопад L-диапазона при подавлении: весь L-диапазон глобальной навигационной спутниковой системы (GNSS) как одна спектральная плотность мощности (PSD), частота по горизонтали, время вниз, пока включается заданная последовательность источников подавления.
kind = "spectrum"
seed = 7
duration_s = 60.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1160.0leo-resilience-js-margin.toml
Устойчивость LEO-PNT по принятой мощности: запас по отношению помеха/сигнал (J/S).
kind = "spectrum"
seed = 12
duration_s = 100.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1150.0multi-band-jamming-waterfall.toml
Многодиапазонный водопад подавления: сигналы позиционирования, навигации и времени (PNT) на низких околоземных орбитах (LEO) в четырёх диапазонах (УКВ, L, S и C) рядом с GPS и Galileo, у каждого диапазона свой источник подавления, на одной временной шкале по одному водопаду на диапазон.
kind = "spectrum"
seed = 11
duration_s = 60.0
step_s = 1.0
noise_figure_db = 2.0
antenna_temp_k = 290.0
tracking_threshold_dbhz = 25.0
f_min_mhz = 1160.0spoof#
Стохастический детектор спуфинга времени (Неймана–Пирсона / χ²₁) с P_fa/P_md по методу Монте-Карло.
spoof-attack.toml
Активная атака спуфинга времени: успевает ли монитор целостности каждых часов поймать спуфинг до причинения вреда?
kind = "spoof"
threshold_ns = 20.0
step_s = 10.0
duration_s = 660.0
start_s = 60.0
rate_ns_per_s = 0.1
id = "optical-sr-lattice"
provenance = "Strontium optical lattice clock, space-oriented goal sigma_y(1s)=1e-15 (arXiv:1503.08457); not flown."spoof-meaconing.toml
Обнаружение спуфинга времени с явной формой атаки и стохастическим детектором.
kind = "spoof"
threshold_ns = 0.5
step_s = 1.0
duration_s = 1200.0
start_s = 100.0
target_pfa = 0.001
mc_runs = 20000
kind = "meaconing"spoof-detect#
Комбинированный детектор спуфинга по РЧ и измерениям (согласованность RAIM по нескольким SV + AGC + SQM, с объединением) против параметризованной атаки (преимущество по мощности, выравнивание фазы несущей, сдвиг времени/положения; в стиле TEXBAT).
maritime-spoof-position-push.toml
Морской спуфинг GNSS: обнаружение передатчика, который уводит сообщаемое положение судна.
kind = "spoof-detect"
power_advantage_db = 2.0
carrier_aligned = false
push = "position"
push_magnitude_m = 500.0
num_biased = 4
el_imbalance = 0.12
sat_power_dbm = -130.0spoof-detect.toml
Комбинированный детектор спуфинга по РЧ-сигналу и измерениям: согласованность RAIM по нескольким КА + AGC + SQM, с объединением.
kind = "spoof-detect"
power_advantage_db = 1.5
carrier_aligned = false
push = "position"
push_magnitude_m = 75.0
num_biased = 3
el_imbalance = 0.12
sat_power_dbm = -130.0sweep#
Одномерный (1-D) перебор для исследования компромисса по параметру пакета часов.
sweep-clock-stability.toml
Сравнительное исследование: как holdover зависит от стабильности часов?
kind = "sweep"
parameter = "classical_q_wf"
metric = "holdover_s"
start = 1.0e-24
stop = 1.0e-18
steps = 25
scale = "log"
seed = 42sweep-nd#
Обобщённый N-мерный перебор по любому пакету через ключи TOML с точками / пути метрик JSON.
sweep-nd-inertial.toml
Общий N-мерный перебор параметров для ЛЮБОГО вида сценария. В отличие от вида sweep, работающего только с часами, sweep-nd варьирует ключи TOML с точками в сценарии [base] по декартову произведению осей, повторно запускает каждый узел сетки и считывает выбранные метрики из результата по пути JSON с точками. Он работает для каждого пакета (inertial, gnss-ins, integrity, spoof, …), потому что действует на границе TOML/результата, а не на типе Rust отдельного пакета. Нативные прогоны вычисляют сетку параллельно (без дополнительных зависимостей); wasm переходит на последовательное вычисление. Выходная сетка детерминирована и хранится по строкам (последняя ось меняется быстрее всех).
kind = "sweep-nd"
metrics = ["classical.fom.holdover_s", "classical.fom.pos_rms_m"]
key = "threshold_m"
start = 100.0
stop = 500.0
steps = 5
key = "accel_classical.bias"
start = 1.0e-3telecom-timing#
Синхронизация времени в телекоммуникациях: ошибка времени, максимальная ошибка временного интервала (MTIE) и девиация времени (TDEV) при holdover GNSS, проверенные по маскам ITU-T с результатом PASS или FAIL и запасом для каждой маски. Входные данные — либо СИНТЕТИЧЕСКИЙ HOLDOVER (предустановка генератора — ocxo, рубидий, цезий или csac, у каждой — цифры стабильности, старения и температуры из названного открытого техпаспорта Microchip — плюс время потери GNSS, длина записи и интервал дискретизации; свободно идущие часы несут белый, фликкерный и, где этого требует подгонка по техпаспорту, шум случайного блуждания частоты, линейное старение и синусоидальный температурный член), либо ЗАГРУЖЕННЫЙ РЯД пар [time_s, time_error_ns], заданных встроенно (и, только в нативных сборках, файл CSV). Маски: ITU-T G.8272 (07/2025) PRTC-A и PRTC-B (max|TE| 100 / 40 ns, MTIE таблицы 1–2, TDEV таблицы 3–4); G.8272.1 (2024) Amd. 1 (07/2025) ePRTC в режиме синхронизации (30 ns, таблицы 1–2) и holdover ePRTC-A (огибающая ошибки времени из таблицы 3, нарастающая с 30 ns до 100 ns за период holdover H, задаваемый длительностью периода в режиме синхронизации, MTIE таблица 4, TDEV таблица 5); G.8273.2 (2023) Amd. 2 (11/2025) классы A–C T-BC/T-TSC (max|TE|, постоянная ошибка времени, MTIE и TDEV после фильтра нижних частот) и класс D (max|TE_L| 5 ns — единственная цифра класса D, не оставленная для дальнейшего изучения); G.8271.1 (2022) Amd. 3 (05/2025) опорная точка C (max|TE_L| 1100 / 600 / 100 ns с MTIE таблицы 7-1–7-3). Каждая запись, которую Рекомендация отмечает как предмет дальнейшего изучения, отсутствует, а не заполнена, и каждый отчёт перечисляет то, что не реализовано. Также выводятся время до превышения каждого бюджета максимальной ошибки времени (по умолчанию: 100 ns для max|TE_HO| ePRTC, 400 ns для распределения holdover в сети, 1100 ns для точки C, 1,5 us для класса 4), кривые MTIE/TDEV в виде таблицы CSV с пределом каждой маски и запись об единицах и происхождении для каждого числового поля. VALIDATED: оценки MTIE и TDEV по пакету allantools на закоммиченном ряду holdover. MODELLED: таблицы масок являются перепиской, а синтетический holdover — модель, построенная по максимумам из техпаспортов, а не измерение какого-либо экземпляра. Это не испытание на соответствие.
telecom-prtc-holdover-24h.toml
Эталон телекоммуникационной синхронизации: рубидиевые часы, теряющие опорный сигнал глобальной навигационной спутниковой системы (GNSS) и удерживающие время в режиме holdover 24 часа, проверенные по маскам Сектора стандартизации электросвязи Международного союза электросвязи (ITU-T).
kind = "telecom-timing"
seed = 20260925
masks = ["eprtc-a-holdover", "prtc-a"]
oscillator = "rubidium"
gnss_loss_s = 3600.0
duration_s = 90000.0
sample_interval_s = 1.0
locked_te_sigma_ns = 1.0telecom-synce-eec.toml
Телекоммуникационная синхронизация, частотная синхронизация: свободно идущий термостатированный кварцевый генератор (OCXO) в сопоставлении с масками генерации блуждания часов оборудования синхронного Ethernet (EEC) Сектора стандартизации электросвязи Международного союза электросвязи (ITU-T).
kind = "telecom-timing"
seed = 20260925
masks = ["g8262-eec-option-1", "g8262-eec-option-2", "g8262-1-eeec"]
budgets = []
oscillator = "ocxo"
gnss_loss_s = 0.0
duration_s = 12000.0
sample_interval_s = 1.0telecom-tie-ingest.toml
Телекоммуникационная синхронизация, пример загрузки данных: ряд ошибки временного интервала (TIE), заданный в тексте и проверенный по маскам Сектора стандартизации электросвязи Международного союза электросвязи (ITU-T).
kind = "telecom-timing"
masks = ["prtc-a", "prtc-b", "eprtc", "eprtc-a-holdover", "t-bc-class-c", "g8271-1-point-c"]
holdover_start_s = 300.0
locked_duration_days = 5.0
samples = [terrain-nav#
Навигация по рельефу местности без GPS (TERCOM/SITAN): радиолокационный или барометрический высотомер сопоставляет профиль высот земной поверхности с ЦМР типа SRTM, чтобы восстановить дрейф ИНС.
terrain-slam#
Последовательная (рекурсивная) навигация по рельефу местности без GPS: фильтр частиц выполняет модель измерения сопоставления с рельефом эпоха за эпохой (SITAN как работающий фильтр), так что изменяющийся во времени дрейф ИНС отслеживается вдоль трека, тогда как пакетный terrain-nav восстанавливает лишь одно постоянное смещение.
terrain-slam.toml
Последовательная (рекурсивная) навигация по рельефу местности — альтернативные PNT без GPS.
kind = "terrain-slam"
dem_seed = 1
start_lat_deg = 12.08
start_lon_deg = 20.08
step_lat_deg = 0.004
step_lon_deg = 0.003
waypoints = 60
drift_rate_lat_deg = 0.0006time-transfer-budget#
Двусторонняя спутниковая передача времени и частоты между двумя станциями через геостационарный ретранслятор: двустороннее уравнение, решённое относительно T_A - T_B, со всеми невзаимными членами (задержки аппаратуры станций, ионосфера в Ku-диапазоне, транспондер, эффект Саньяка), квадратурный бюджет неопределённости, в котором член типа A — это TDEV смоделированной линии на времени усреднения, смоделированная линия с белым и фликкерным фазовым шумом и суточной невзаимностью, а также стабильность (скорость, остаточный RMS, TDEV, ADEV) любого предоставленного ряда BIPM Circular T, раздел 1, CSV вида MJD,ns или записей часов станций IGS RINEX. MODELLED.
time-transfer-budget.toml
Двусторонняя спутниковая передача времени и частоты (TWSTFT) между двумя ILLUSTRATIVE станциями, одной в Центральной Европе и одной на востоке Северной Америки, через геостационарный ретранслятор на 10 град з. д. Прогон решает двустороннее уравнение для T_A - T_B по заданным слагаемым оборудования, транспондера, ионосферы (диапазон Ku, 14/11 ГГц) и Саньяка. Он составляет бюджет неопределённости, статистическая составляющая которого — TDEV за одни сутки смоделированной линии с белым и фликкер-шумом фазы и суточной невзаимностью. Задержки и неопределённости иллюстративные, а не калибровка какой-либо лаборатории. MODELLED. Реальный ряд UTC-UTC(k) или часов станции можно добавить в [[series]] (формат circular-t, mjd-csv или rinex-clock), чтобы сообщить его стабильность.
kind = "time-transfer-budget"
satellite_lon_deg = -10.0
transponder_ab_ns = 812.0
transponder_ba_ns = 809.5
uplink_ghz = 14.0
downlink_ghz = 11.0
true_offset_ns = 12.5
white_noise_ns = 0.3timetransfer#
Оптическая и радиочастотная двусторонняя передача времени и частоты.
timetransfer.toml
Оптическая межспутниковая передача времени в сравнении с классической РЧ (TWSTFT).
kind = "timetransfer"
seed = 42
samples = 600
step_s = 1.0
range_spec_mm = 10.0
id = "optical-isl"
provenance = "Optical inter-satellite link, picosecond-level synchronization target; free-space optical two-way time-frequency transfer lab floor ~1 fs (Giorgetta 2013, Nature Photonics; Deschenes 2016, PRX). Using a 1 ps target as the on-orbit-credible figure."
sigma_j_s = 1.0e-12tracking-loop#
Потеря захвата петлёй сопровождения: C/N0 → захват/срыв С ГИСТЕРЕЗИСОМ, время потери захвата и втягивание спуфера как функция СКОРОСТИ смещения кода и несущей. Существующие в движке критерии подавления и захвата — отношения принятой мощности (источник подавления подавляет при J/S = 30 дБ, спуфер захватывает при 3 дБ); реальная потеря захвата — не отношение мощностей, а то, где шум петли плюс динамическое напряжение выходят за бюджет порога сопровождения. Сообщаются: (1) тепловой шум 1 сигма несущей (Костас) и кода (некогерентный «раньше — позже») в зависимости от C/N0 с учётом потерь на возведении в квадрат, относительно заданных правил 3*sigma_PLL + theta_e <= 45 град (правило 15 градусов в форме трёх сигм) и 3*sigma_DLL + ramp lag <= d/2 чипа; (2) пороги C/N0 срыва и повторного захвата с указанием определяющей петли, причём порог повторного захвата ВЫВЕДЕН из более широкой полосы, в которой приёмник повторно втягивается, а не задан, поэтому ширина гистерезиса должна лежать между 5*log10(ratio) и 10*log10(ratio) дБ; (3) заявленное время потери захвата у двухпорогового детектора захвата с подтверждающими выдержками при линейном изменении C/N0, приводимое отдельно от физического времени выхода фазы (среднее время Витерби между срывами циклов, в log10 с, поскольку охватывает сотни десятичных порядков); (4) пределы втягивания спуфера — наибольшая скорость смещения кода и доплеровская скорость несущей, которые могут отслеживать петли жертвы, с картой по обеим осям, поскольку спуфер, смещающийся быстрее, не захватывает петлю, а опережает её; и (5) РАДИУС ПОДАВЛЕНИЯ, следующий из динамики петли, сообщаемый РЯДОМ с существующим радиусом по отношению мощностей и никогда не вместо него, с их знаковой разностью в отдельном именованном поле (denial_radius_delta_km) и определением рядом. Каждое выдаваемое числовое поле несёт единицу измерения и класс происхождения. VALIDATED замкнутые формулы: выражения шума несущей и кода, сведение к фильтру петли sqrt(2*B_n*T) и запаздывание по линейному изменению первого порядка сверены с собственным коррелятором sdr движка, пошагово пропущенным по синтетической ПЧ с начальным значением, — другим путём к тем же числам, — с точностью 0,6 %, 3,7 % и 0,17 % соответственно, а модифицированная функция Бесселя I0, лежащая в основе времени между срывами циклов, — по стандартным табличным значениям с точностью 1e-7. Нижний предел применимости утверждается, а не просто заявляется: ниже ~32 дБ-Гц при 1 мс настоящий дискриминатор atan насыщается относительно своего диапазона +-pi/2 и измеряет меньший шум, чем любая линейная теория. MODELLED: полосы петель, время интегрирования, интервал между коррелятором, отношение полосы втягивания, подтверждающие выдержки, мощность источника подавления и усиления антенн — репрезентативные значения диапазона, а не паспортные данные. НЕ моделируются: шум генератора (девиация Аллана) и вибраций, ограничение полосы входного каскада, многолучевость, динамика АРУ, потери на переходах информационных бит, внешняя поддержка и любая поправка на полуцикл к формуле срыва циклов Костаса. При динамике петли у захвата спуфера радиуса нет вовсе — определяющее ограничение — скорость смещения, а не мощность, — поэтому это поле равно null с указанием причины, а не выдуманным числом. Это не сертифицированный продукт оценки характеристик приёмника.
tracking-loop.toml
Потеря захвата петлёй сопровождения: C/N0 → захват/срыв с гистерезисом, время потери захвата и пределы втягивания спуфера, заданные СКОРОСТЬЮ смещения кода и несущей.
kind = "tracking-loop"
pll_bandwidth_hz = 10.0
dll_bandwidth_hz = 1.0
predetection_integration_s = 0.001
correlator_spacing_chips = 0.5
carrier_allowance_deg = 45.0
pullin_bandwidth_ratio = 2.0
drop_confirm_epochs = 50Наборы исследований#
Набор — это файл сценария, перечисляющий другие сценарии; kshana --study запускает его и формирует один помеченный study.json и study.html. Это бесплатный запуск наборов, а не платное индивидуальное исследование.
quantum-pnt-demonstrator.suite.toml
Quantum-Enabled PNT Demonstrator — три области применения как одно исследование.
kshana --study scenarios/quantum-pnt-demonstrator.suite.toml