orbit (tipo de escenario)
Tipo de escenario del motor v0.40.0, familia Constelaciones, cobertura y geometría. Consultivo: salida de análisis de una herramienta de investigación e ingeniería, no un equipo de navegación homologado ni un servicio de seguridad de la vida humana. Toda etiqueta de aquí es la del motor o la de la matriz de verificación; un tipo de escenario es MODELLED salvo que la matriz diga otra cosa (cómo se gana una etiqueta: la sección Evidence del README).
Qué hace#
Disponibilidad de GNSS y DOP a partir de una constelación orbital (Walker / TLE / RINEX).
Una ejecución de scenarios/orbit-rinex.toml se resume así: escenario bffc887db977 | 77/361 muestras GNSS nominales | mejor PDOP 2,53 pos 2.53m | holdover cuántico 0s p95 6.49e-5ns integridad 1,000 seguridad n/a (sin ataque) | holdover clásico 0s p95 25.0ns integridad 1,000 seguridad n/a (sin ataque)
Entradas#
Del esquema (kshana kinds --json):
- Campos obligatorios:
seed,threshold_ns,mask_deg,time,user|user_site,constellation,clock_quantum,clock_classical - Campos opcionales:
sigma_uere_m,constellations,epoch,export_sp3,export_omm,export_oem,skyline
El ejemplo scenarios/orbit-rinex.toml establece, entre otros:
| Campo | Valor | Unidad |
|---|---|---|
clock_classical.id |
csac-sa45s | texto |
clock_classical.provenance |
Microchip SA.45s / SA65 chip-scale atomic clock, sigma_y(1s) | texto |
clock_classical.q_rw |
1.0000e-28 | 1/s |
clock_classical.q_wf |
9.0000e-20 | s^2/s |
clock_classical.y0 |
1.0000e-11 | 1 |
clock_quantum.id |
optical-sr-lattice | texto |
clock_quantum.provenance |
Reloj óptico de red de estroncio, objetivo orientado al espacio sigma_y | texto |
clock_quantum.q_rw |
1.0000e-40 | 1/s |
clock_quantum.q_wf |
1.0000e-30 | s^2/s |
clock_quantum.y0 |
1.0000e-15 | 1 |
constellation.rinex |
3,04 N: GNSS NAV DATA G: GPS | texto |
kind |
orbit | texto |
Ejecútelo#
kshana scenarios/orbit-rinex.toml
7 escenarios incluidos usan este tipo de escenario; los demás están en scenarios/.
Qué proporciona#
Los resultados escalares de esa ejecución, con las unidades que indica el motor:
| Resultado | Valor | Unidad |
|---|---|---|
classical.filter_health.consistent |
true | indicador |
classical.filter_health.nees_chi2_lower_95 |
1.540167 | 1 |
classical.filter_health.nees_chi2_upper_95 |
2.518928 | 1 |
classical.filter_health.nees_mean |
1.963599 | 1 |
classical.filter_health.nis_chi2_lower_95 |
0.975649 | 1 |
classical.filter_health.nis_chi2_upper_95 |
1.024647 | 1 |
classical.filter_health.nis_mean |
1.000119 | 1 |
classical.fom.availability |
0.645429 | 1 |
classical.fom.holdover_s |
0 | s |
classical.fom.integrity |
1 | 1 |
Evidencias#
MODELLED 4 · VALIDATED 4: las filas de la matriz de verificación que nombran este tipo de escenario.
- VALIDATED Rotación terrestre a partir de una fecha juliana UT1 en dos partes en la ruta de la órbita, de modo que la posición fija a la Tierra conserva el microsegundo que pierde una fecha en un único f64 (unos 3e-9 rad hacia 2020): jd2::gmst82 (GMST de IAU 1982, la convención TEME, sobre las dos partes), cio:
- VALIDATED GDOP/PDOP/HDOP/VDOP/TDOP a partir de la geometría de línea de visión mediante Q=(HᵀH)⁻¹ con una descomposición ENU local Pruebas: dop_reference.rs.
- MODELLED dop_error_mc::run_geometry y check: una simulación Monte Carlo con semilla (N = 20.000 épocas por geometría, sigma = 1,5 m, semilla ChaCha8 36 + i) de la propia fijación por mínimos cuadrados iterados del motor (pvt::solve_spp, pesos unitarios, resuelta desde la posición verdadera) sobre Pruebas: uere_dop_monte_carlo.rs.
- VALIDATED skyline + frames::look_angles + geometry::sky_geometry: el acimut y la elevación geodésicos (WGS-84) de un satélite desde un emplazamiento terrestre, una tabla de máscara de acimut y elevación interpolada linealmente en acimut con cierre a 360 grados, el conjunto visible el Pruebas: skyline_orekit_oracle.rs.
- y 4 más en la matriz.
Las filas que la propia ejecución puso a prueba, con la referencia independiente que da la matriz a cada una (las fuentes públicas se nombran allí):
- VALIDATED Desviación de Allan / modificada / de Hadamard + identificación de ruido de ley de potencias con intervalos de confianza χ². Referencia independiente (ExternalDataset): NIST SP 1065 (Riley) / desviaciones de referencia de Stable32 en NBS14
- VALIDATED GDOP/PDOP/HDOP/VDOP/TDOP a partir de la geometría de línea de visión mediante Q=(HᵀH)⁻¹ con una descomposición ENU local. Referencia independiente (ExternalDataset): DOP de gnss_lib_py 1.0.4 (Stanford NAV Lab) — biblioteca independiente, coincidente a 1e-6 relativo
- MODELLED Crecimiento del error de inercia en forma cerrada + holdover hasta el umbral; clases de reloj cuántico. Referencia independiente (ReferenceImpl): Recursión de covarianza de clock_state en varios pasos (comprobación cruzada en el mismo código base); el núcleo subyacente de varianza de inercia e inversión de holdover está validado externamente frente a scipy (véase «Clock-holdover coast-variance & threshold inversion»). Las cifras de holdover por clase con suelo de ruido rojo siguen siendo MODELLED
- MODELLED Reloj de Kalman de 3 estados (fase/frecuencia/deriva) de van Loan, estabilizado de Joseph. Referencia independiente (ReferenceImpl): filterpy 1.4.5 KalmanFilter (R. Labbe, MIT), con F mediante scipy.linalg.expm y Q mediante la matriz por bloques de Van Loan 1978 — una implementación de referencia independiente que reproduce la trayectoria completa del filtro de kshana. Consistencia entre implementaciones: la física del reloj y la calibración de Allan no están validadas externamente, por lo que esto sigue siendo MODELLED. 0,30 comparación externa, un hallazgo (sigue siendo MODELLED): en relojes finales de IGS de 30 s de 11 GPS Blo
- MODELLED Chi-cuadrado asistido por reloj, RAIM, AGC, FoM de seguridad por época fusionada con SQM. Referencia independiente (ExternalDataset): parámetros de escenario de TEXBAT (Humphreys 2012) — caracterización, no vectores fijados. 0,30 comparación externa, un hallazgo (sigue siendo MODELLED): en JammerTest 2024 (Bleik; datos GPL-3.0) los monitores de nivel de observable (chi-cuadrado asistido por reloj, RAIM, fallo de solución) no dieron ninguna alarma dentro de 10 s de ninguno de los 8 inicios de suplantación publicados evaluables (donde la ventana previa al inicio estaba limpia, la primera alarma llegó entre 10,2 y 39 s después del pu
Limitaciones#
Lo que el propio informe de la ejecución dice que no está modelado o no está validado:
- El holdover del reloj sin GNSS es MODELLED, no está validado: se comprueba frente a una implementación separada de este mismo código base — independiente de la unidad bajo prueba, pero no autoridad externa. (matriz de verificación (docs/MODELLED-RATIONALE.md))
- La estimación del estado del reloj de a bordo es MODELLED, no está validada: se comprueba frente a una implementación separada de este mismo código base — independiente de la unidad bajo prueba, pero no autoridad externa. (matriz de verificación (docs/MODELLED-RATIONALE.md))
- La detección de spoofing es MODELLED, no está validada: una subafirmación se comprueba externamente, pero la capacidad completa compone piezas modeladas, por lo que la capacidad sigue siendo modelada. (matriz de verificación (docs/MODELLED-RATIONALE.md))
- La reproducibilidad y el aseguramiento del software son MODELLED, no están validados: una subafirmación se comprueba externamente, pero la capacidad completa compone piezas modeladas, por lo que la capacidad sigue siendo modelada. (matriz de verificación (docs/MODELLED-RATIONALE.md))
Véase también#
- Página de familia: Constelaciones, cobertura y geometría
- Todos los tipos de escenario: KINDS.md
- Página de tema: SKYLINE.md
- Página temática: LEO-PASS.md