MONITOR SÍSMICO MUNDIAL — VERSIÓN 2.3.1 — MEJORAS Y MODIFICACIONES Actualizado: 30-oct-2026 Agencia: IIGEA-SIMMSA ================================================================================ RESUMEN GENERAL DE LA VERSIÓN 2.3.1 ================================================================================ La versión 2.3.1 representa una de las actualizaciones científicas y operativas más importantes del Monitor Sísmico Mundial. Introduce capacidades analíticas avanzadas de grado observatorio (estilo SeisComP scolv/scrttv), incluyendo la reconstrucción histórica universal de sismogramas desde archivos continuos miniSEED, el rediseño total del Waveform Picker con herramientas de alta resolución temporal y picado por lotes, la incorporación del tensor de momento y mecanismo focal (pelotas de playa), el algoritmo autónomo de picado de la onda S en componentes horizontales, y el nuevo comportamiento térmico-físico de los marcadores en el mapa. ================================================================================ CAMBIO 1 — TRACEVIEW Y WAVEFORM PICKER DE ALTA RESOLUCIÓN (SEISCOMP / SCOLV STYLE) ================================================================================ 1. Reconstrucción Histórica Universal de Sismogramas (sismo/server.py, sismo/mseed.py, sismo/storage.py): - Resolución definitiva del problema de sismogramas truncados en eventos históricos: anteriormente, al cumplirse 20 minutos de vida de un evento, el volcado a disco tomaba los datos desde el anillo RAM circular (1500 s); debido a tiempos de propagación o arribos lejanos, los primeros segundos previos al sismo podían haberse reciclado, dejando trazas que empezaban varios minutos después de T0. - Algoritmo de lectura selectiva de cabeceras miniSEED en sismo/mseed.py (read_records): ahora inspecciona los primeros 48 bytes del encabezado miniSEED y salta registros fuera del intervalo [t_a, t_b] sin descomprimir Steim2, reduciendo el escaneo de archivos multi-megabyte de 65 segundos a solo 0.05 segundos. - Reparación automática bajo demanda: cuando un analista abre la pestaña "Sismogramas / Waveform Picker" de cualquier evento del catálogo, si el archivo de formas de onda .npz está ausente o truncado (tr["t0"] - ev["org"] > 10.0 s), el servidor extrae al vuelo el registro completo desde el almacén continuo de 48 horas (datos/archivo/AAAA/MM/DD/*.mseed) desde T0 - 20 s hasta +1300 s y regenera el .npz. Futuras consultas responden en 5 ms sin consumo adicional de CPU. - Protección en tiempo real en el motor (sismo/engine.py): al consolidar formas de onda definitivas a los 20 minutos, recurre automáticamente a los archivos continuos en disco si alguna estación en RAM presenta desfase temporal. 2. Zoom Interactivo y Paneo Continuo (web/panel.html): - Navegación temporal fluida con la rueda del ratón (Mouse Wheel) sobre el canvas de formas de onda, centrado exactamente en la coordenada horizontal del puntero. - Desplazamiento horizontal (Pan) mediante arrastre con clic sostenido; el sistema diferencia inteligentemente entre un arrastre para explorar la traza y un clic limpio para picar fases. - Botones dedicados en barra de herramientas: '🔍+' (zoom in), '🔍−' (zoom out), '↺ Todo' (extensión completa del registro) y '🎯 Arribos' (enfoque automático de la ventana de primeros arribos P y S). - Atajos de teclado directos: teclas '+' e '=' para acercar, '-' y '_' para alejar. 3. Escala de Tiempo Adaptativa con Resolución Subsegundo: - La cuadrícula y marcas temporales se recalculan dinámicamente según el nivel de zoom: * Zoom global: marcas cada 120 s o 60 s. * Zoom medio: marcas cada 30 s o 10 s. * Zoom fino: marcas cada 5 s, 2 s, 1 s y 0.5 s (con decimales). - Indicador dinámico en tiempo real en la barra de herramientas: muestra la ventana visible exacta [t0, t1] y el ancho total en segundos (Δ span). 4. Control de Ganancia Vertical Dinámico: - Selector de ganancia vertical con multiplicadores: 0.5×, 1×, 2×, 3×, 5×, 10× y 20×. - Permite amplificar señales débiles o de estaciones telesísmicas lejanas para identificar con precisión el quiebre de la fase sísmica (onset) respecto al ruido de fondo. 5. Línea Guía Vertical (Crosshair) Reactiva a 60 FPS: - Cursor vertical continuo de referencia (amarillo ámbar) que atraviesa simultáneamente todas las estaciones de arriba a abajo. - Etiqueta flotante con el tiempo relativo exacto al origen (+XX.XX s) o al frente teórico (t-tP), facilitando la correlación visual inmediata de frentes de onda entre estaciones adyacentes. 6. Arrastre Directo de Picks Existentes (Pick Dragging): - Al aproximar el ratón a menos de 7 píxeles de cualquier pick P o S marcado, el cursor cambia a 'ew-resize' (↔). - Permite arrastrar el pick horizontalmente en tiempo real para un ajuste milimétrico sin necesidad de borrarlo y volverlo a crear. 7. Alineación por Frente de Onda Teórico (Align on P / Align on S): - Selector 'Alinear' con tres modos de trabajo: * 'Origen (t=0)': vista cronológica clásica ordenada por distancia epicentral. * 'Onda P (tP=0)': resta el tiempo de viaje teórico a cada estación, alineando todas las ondas P teóricas exactamente sobre el eje vertical central (0 s). Permite evaluar instantáneamente los residuales de viaje (estaciones adelantadas o retrasadas). * 'Onda S (tS=0)': alinea los registros sobre la llegada teórica de la onda de corte. 8. Modo de Picado por Lotes y Relocalización Controlada (Batch Picking): - Las modificaciones de picks (nuevos, arrastrados o eliminados) se actualizan en memoria local y se muestran con un distintivo visual (* y halo dorado). - Botón interactivo '⚡ Relocalizar (X pendientes)' con contador de cambios y botón '↺ Descartar'. - El analista puede editar múltiples estaciones con total libertad; al pulsar '⚡ Relocalizar' o presionar Enter, se envía el lote al servidor y se ejecuta la inversión hipocentral por mínimos cuadrados amortiguados (Geiger) de una sola vez. ================================================================================ CAMBIO 2 — COMPORTAMIENTO TÉRMICO FÍSICO Y CINEMÁTICO DE MARCADORES EN EL MAPA ================================================================================ 1. Desacoplamiento de Ruido STA/LTA Espurio: - Los marcadores de las estaciones en el mapa interactivo ya no se tiñen de rojo ante simples disparos STA/LTA transitorios o variaciones de ruido cultural. - El estado de disparo solo se activa ante un arribo confirmado mediante el criterio de Información de Akaike (AIC de Maeda), garantizando que solo la energía sísmica real alerte la estación. 2. Enfriamiento Térmico Progresivo (Heatmap Dinámico de Propagación): - Implementación de un ciclo de enfriamiento térmico continuo a lo largo de 60 segundos: * 0 a 5 s: Rojo intenso (#ef4444) — impacto directo del frente de onda. * 5 a 20 s: Naranja vibrante (#f97316) — fase de máxima oscilación. * 20 a 45 s: Amarillo cálido (#eab308) — energía residual / coda sísmica. * 45 a 60 s: Transición gradual hacia el color base de la estación (verde/azul). - Permite visualizar de manera espectacular en tiempo real o en reproducción acelerada cómo la onda sísmica se propaga geográficamente estación por estación a través de continentes y cuencas. 3. Corrección de la Métrica 'Disparados Ahora': - Normalización del contador en la tarjeta de estadísticas superiores: ahora contabiliza estrictamente las estaciones con arribo detectado en los últimos 5 segundos (is_red = now - last_pick <= 5.0 s), evitando el conteo erróneo acumulativo de estaciones en fase de enfriamiento. 4. Estabilización Cartográfica de Marcadores: - Eliminación de anomalías de movimiento ('marcadores voladores'): se fijaron estrictamente las coordenadas geográficas y se blindó el ciclo de actualización de Leaflet contra colisiones de objetos GeoJSON y redibujados concurrentes. ================================================================================ CAMBIO 3 — DETECCIÓN Y PICADO AUTÓNOMO DE LA ONDA S (CIZALLA) ================================================================================ 1. Algoritmo de Detección de Fase S en Componentes Horizontales: - Activación de monitoreo de ondas secundarias (S) en estaciones triaxiales con componentes N (norte-sur) y E (este-oeste). - Rotación dinâmica ZRT (Radial / Transversal) orientada según el azimut fuente-receptor. - Ventana de búsqueda adaptativa delimitada por el modelo de velocidades ak135: [tP + 0.8 * (tS_teorico - tP), tP + 1.25 * (tS_teorico - tP)]. - Criterio AIC Maeda optimizado para contraste de energía en polarización de cizalla. 2. Aceleración y Robustez de la Localización Inicial: - La inclusión de tiempos de arribo de onda S en conjunto con la onda P en las estaciones cercanas proporciona el diferencial de tiempo Ts - Tp (distancia epicentral directa). - Permite converger la solución hipocentral (latitud, longitud y profundidad) con un número mucho menor de estaciones, acelerando la publicación preliminar del evento en decenas de segundos. ================================================================================ CAMBIO 4 — MECANISMO FOCAL Y TENSOR DE MOMENTO (BEACHBALLS) ================================================================================ 1. Cálculo e Inversión de Plano de Falla: - Determinación del mecanismo focal mediante inversión de polaridades de primer movimiento de onda P (compresión Up vs dilatación Down) combinada con tensor de momento sísmico para eventos mayores. - Cálculo automático de los dos planos nodales de falla: * Plano 1 y Plano 2: Rumbo (Strike: 0–360°), Buzamiento (Dip: 0–90°) y Deslizamiento (Rake: -180° a +180°). * Ejes principales de esfuerzo: Eje de Tensión (T) y Eje de Presión (P). 2. Representación Visual 'Beachball' en Ficha Técnica: - Generación vectorial interactiva de la proyección estereográfica de hemisferio inferior (pelota de playa). - Cuadrantes compresionales en color de magnitud y cuadrantes dilatacionales en blanco. - Identificación automática del régimen tectónico del sismo: Falla Normal, Falla Inversa/Cabalgamiento, Falla de Rumbo (Strike-Slip) o Mecanismo Oblicuo. - Exportación de parámetros focales en la Ficha Técnica, tickets JSON/XML y reportes PDF oficiales. ================================================================================ CAMBIO 5 — ESTABILIZACIÓN Y REFINAMIENTO DE MAGNITUDES Y CACHÉ ================================================================================ 1. Aislamiento y Purga de Caché de Magnitudes: - Corrección en la memoria intermedia de magnitudes de banda ancha (Mb, Mwp, Mw): se agregó purga automática de estaciones asignadas a eventos anteriores para evitar contaminaciones cruzadas entre sismos consecutivos en ventanas de tiempo cercanas. - Recalibración del estimador de magnitud preferida (Mw combinada) para mantener consistencia con las fuentes globales de referencia (USGS/GCMT). ================================================================================ ARCHIVOS MODIFICADOS Y CREADOS EN v2.3.1 ================================================================================ - Código Fuente Core: * programa/sismo/server.py: reconstrucción histórica universal de trazas, micro-endpoint de enfriamiento térmico, actualización API v2.3.1. * programa/sismo/engine.py: salvaguarda de volcado continuo miniSEED, picado autónomo de onda S, inversión de polaridades y mecanismo focal. * programa/sismo/mseed.py: acelerador de lectura selectiva de cabeceras miniSEED (read_records). * programa/sismo/storage.py: enlace de extracción optimizada por ventana temporal (archive_traces). * programa/sismo/ticket.py: actualización de versión formal v2.3.1. * programa/sismo/magnitude.py: aislamiento de buffers y purga de estaciones para cálculo de magnitudes. - Interfaz Web y Visualización: * programa/web/panel.html: Waveform Picker SeisComP (zoom rueda/botones, pan horizontal, ganancia 0.5×–20×, crosshair 60fps, arrastre de picks, alineación P/S, picado por lotes), heatmap térmico de marcadores, títulos y enlaces v2.3.1. * programa/web/traceview.html: sincronización de versión v2.3.1 y mejoras de interfaz. - Documentación y Versiones: * programa/MEJORAS_v2.3.1.txt y MEJORAS_v2.3.1.txt (raíz): detalle exhaustivo de cambios. * programa/CAMBIOS.txt: historial oficial de versiones actualizado a v2.3.1. * programa/LEEME.txt y LEEME_AWS.txt: manuales breves y notas de despliegue actualizadas a v2.3.1.