00Resumen ejecutivo
El motor PSHA corre sobre 41 fuentes del catálogo PEM1 (Dynamis 2025)
y reproduce el snapshot locked de 5BGC (PGA 475y = 0.37454 g,
PGA 2475y = 0.67766 g) cuando se configura con la receta R-CRISIS
(ASK14 cortical + BCHydro subducción, Vs30 = 520 m/s).
La UI de hazard-explorer devuelve valores ~14% más bajos que el
snapshot porque aplica un árbol lógico ampliado por defecto (4
GMPEs NGA-West2 + 3 subducción promediados con pesos iguales). Este documento
desglosa los inputs reales que se envían al endpoint
/api/v1/sources/psha para que puedas validarlos contra el informe
Dynamis de referencia.
- Vs30 por defecto es 760 m/s en la UI (roca firme), pero 5BGC está medido en 520 m/s. Impacta −11% en PGA si el operador no lo corrige en el selector.
- Árbol lógico: UI usa ASK14+BSSA14+CB14+CY14 al 0.25 c/u para cortical y AB03 0.2 + Zhao06 0.4 + BCHydro 0.4 para subducción. R-CRISIS PEM1 usa ASK14 único + BCHydro único. Diferencia constante de −13.6% en media del logic tree vs ASK14 puro.
- AKKAR14 cae a BSSA14: el registro declara AKKAR14 con
peso 0.2 pero
get_gmpe_instance()lo mapea a BSSA14 porque AKKAR14 aún no está implementado. Resultado: BSSA14 duplica su peso efectivo (0.4 en lugar de 0.2) si el logic tree usa la configuración del registro.
01Sitio y parámetros generales
14.54762° N, 121.04674° E, Bonifacio Global City
(Taguig). Lote de referencia del informe Dynamis DYNA2512/N01A.
measured de ASK14 Eqs. 24-25, no
la ergódica). La UI permite al usuario cambiar el valor; el default
sessionStorage es 760 m/s.
Mmin = 5.0, integración log-log
sobre la rejilla IML. Periodos de retorno calculados: 43, 475, 975, 2475 y
UHS a 475 y 2475 años.
POST /api/v1/sources/psha con
source_ids[]. Las fuentes se sirven del catálogo del
Source Modeler, NO directamente de GEM GAF-DB ni PSHA_PEM1.DAT en
ejecución viva.
02Modelo de fuentes sísmicas
El catálogo PEM1 contiene 41 fuentes tras el filtrado de 54
entradas del fichero original PSHA_PEM1.DAT (13 descartadas por
parámetros mínimos). La tabla siguiente resume la tipología.
2.1 Resumen por tipo
| # | Tipo | MFD | Región tectónica | Count | Nota |
|---|---|---|---|---|---|
| 1 | Zonas de área (Zone 1–7) | Truncated G-R | Crustal superficial | 7 | Background seismicity; a y b de catálogo. |
| 2 | Subducción interfaz | Truncated G-R | Subduction interface | 8 | Philippine trench N/S, Manila trench S, East Luzon, Sula Negros (incluye versiones EXP). |
| 3 | Subducción intraslab | Truncated G-R | Subduction intraslab | 2 | Philippine north slab, Manila south slab. |
| 4 | Fallas características | Characteristic | Crustal superficial | 24 | Valle Marikina W/E + 22 fallas activas adicionales con Mchar y slip rate. |
2.2 Fallas características (24)
Parámetros tomados de packages/pipeline/pipeline/psha/pem1_reference.py
(tabla de referencia Dynamis). Cada falla corre con modelo Characteristic
Earthquake (Youngs–Coppersmith 1985): la tasa anual de Mchar se
deriva del slip rate vía conservación de momento sísmico,
Ṁ0 = μ·A·s.
| # | Nombre | Dist. 5BGC (km) | Dip (°) | Dip dir. | Mchar | Slip (mm/y) |
|---|---|---|---|---|---|---|
| 1 | Marikina West Valley | 1.1 | 75 | East | 7.3 | 5.1 |
| 2 | Marikina East Valley | 7 | 65 | East | 6.6 | 1.0 |
| 3 | General Nakar West | 36 | 65 | East | 7.2 | 4.0 |
| 4 | General Nakar East | 50 | 90 | – | 7.1 | 1.0 |
| 5 | Lamon Bay | 57 | 90 | – | 7.6 | 15.0 |
| 6 | Palayan-Gen. Tinio | 69 | 90 | – | 6.6 | 2.0 |
| 7 | Guinayangan-Dingalan | 72 | 90 | – | 7.6 | 15.0 |
| 8 | Mauban-Atimonan | 89 | 90 | – | 6.8 | 1.0 |
| 9 | Digdig | 91 | 90 | – | 7.3 | 24.2 |
| 10 | East Zambales | 104 | 65 | West | 7.2 | 2.0 |
| 11 | Iba | 110 | 65 | East | 7.3 | 2.0 |
| 12 | Lubang Fault North | 110 | 90 | – | 7.4 | 5.0 |
| 13 | San Jose | 117 | 55 | South | 7.1 | 3.2 |
| 14 | Lubang Fault South | 123 | 90 | – | 7.4 | 10.0 |
| 15 | Central Mindoro | 133 | 65 | East | 7.4 | 5.1 |
| 16 | Bambang-Ma. Aurora | 135 | 90 | – | 7.1 | 2.0 |
| 17 | Aglubang River | 137 | 90 | – | 7.0 | 1.0 |
| 18 | Sibuyan Sea | 148 | 90 | – | 7.6 | 10.0 |
| 19 | Dinalungan-Dipaculao | 153 | 35 | West | 7.8 | 4.0 |
| 20 | Pugo | 155 | 65 | East | 7.1 | 3.4 |
| 21 | Central Marinduque | 158 | 90 | – | 6.8 | 1.0 |
| 22 | Hapap | 174 | 45 | West | 7.6 | 8.0 |
| 23 | Masbate East | 184 | 90 | – | 7.7 | 10.0 |
| 24 | Ambuklao | 186 | 45 | East | 7.6 | 15.0 |
2.3 Zonas de área + subducción (Truncated G-R)
Modelo Gutenberg–Richter truncado,
log10(N≥M) = a − b·M. Los valores
a, b, Mmin y
Mmax se importan de PSHA_PEM1.DAT.
Las fuentes interface de subducción con Mmin cercano a Mmax
(p. ej. Philippine trench N: 8.65–8.75) representan un tratamiento
characteristic-en-GR: la tasa anual se concentra en la vecindad de
Mchar, no se extiende desde 5.0.
| # | Nombre | Región | Mmin | Mmax | a | b | Notas |
|---|---|---|---|---|---|---|---|
| 1 | Zone 1 | crustal area | 5.00 | 7.76 | 4.059 | 0.80 | Background N Luzon |
| 2 | Zone 2 | crustal area | 5.00 | 7.60 | 5.134 | 1.02 | Background central Luzon |
| 3 | Zone 3 | crustal area | 5.00 | 7.15 | 3.778 | 0.81 | Background W Luzon |
| 4 | Zone 4 | crustal area | 5.00 | 7.80 | 4.999 | 0.90 | Background Visayas |
| 5 | Zone 5 | crustal area | 5.00 | 7.69 | 7.244 | 1.43 | Background Mindoro/Palawan |
| 6 | Zone 6 | crustal area | 5.00 | 7.00 | 5.188 | 1.00 | Background Metro Manila (dominante local) |
| 7 | Zone 7 | crustal area | 5.00 | 7.30 | 5.190 | 1.10 | Background Quezon |
| 8 | Philippine trench N | interface | 8.65 | 8.75 | 5.682 | 1.00 | Characteristic-en-GR, segmento dominante |
| 9 | Philippine trench N EXP | interface | 5.00 | 7.70 | 7.070 | 1.20 | Segmento expandido (ruptura grande) |
| 10 | Philippine north slab | intraslab | 5.00 | 7.80 | 6.467 | 1.06 | Volumen 3D, BCHydro intraslab |
| 11 | Manila trench S | interface | 8.35 | 8.45 | 5.511 | 1.00 | Characteristic-en-GR, subducción W |
| 12 | Manila trench S EXP | interface | 5.00 | 7.40 | 5.523 | 1.02 | Top contribuyente (26.2% snapshot) |
| 13 | Manila south slab | intraslab | 5.00 | 7.80 | 5.557 | 1.04 | Malla 3D, hypo_depth=60 km (f_depth neutralizado) |
| 14 | East Luzon trench | interface | 8.35 | 8.45 | 5.335 | 1.00 | Characteristic-en-GR, segmento rotado |
| 15 | East Luzon EXP | interface | 5.00 | 7.40 | 4.611 | 0.90 | Extensión cara libre |
| 16 | Sula Negros trench | interface | 8.15 | 8.25 | 4.931 | 1.00 | Characteristic-en-GR, segmento Visayas |
| 17 | Sula Negros N EXP | interface | 5.00 | 7.20 | 6.597 | 1.20 | Segmento expandido sur |
2.4 Discretización geométrica
- Fallas planas (crustal): plano rectangular definido por trace + dip + dip direction + profundidades (top/bottom). Ruptura flotante (uniform rupture position, midpoint rule) para cada bin MW — validado con PEER 2010/106 Set 1+2+3 al 100%.
- Fuentes de área: polígono 2D; subdivisión en celdas de ~5 km, profundidad uniforme (ver §6).
- Slabs de subducción: malla 3D triangulada (7–10 km de arista, Rrup 3D exacta). Manila south slab → 7 680 triángulos, profundidades 45–238 km.
- Interfaz de subducción: mismo tratamiento que fallas planas pero con buzamientos someros (15–25°) y áreas de ruptura grandes.
03Leyes de atenuación (GMPEs)
Registro completo en packages/pipeline/pipeline/psha/gmpe_registry.py.
Cada falla/zona se asigna a una familia según su tectónica y dentro de esa
familia se promedia el logic tree.
| ID | GMPE | Tectónica | MW | Rmax | R | T (s) | Basin | σ trunc | Impl. |
|---|---|---|---|---|---|---|---|---|---|
| ASK14 | Abrahamson, Silva & Kamai (2014) | crustal | 3.0–8.5 | 300 | Rrup | 0–10 | Z1.0 ✓ | 3σ | OK |
| BSSA14 | Boore, Stewart, Seyhan & Atkinson (2014) | crustal | 3.0–8.5 | 300 | Rjb | 0–10 | Z1.0 ✓ | 3σ | OK |
| CB14 | Campbell & Bozorgnia (2014) | crustal | 3.0–8.5 | 300 | Rrup | 0–10 | Z2.5 ✓ | 3σ | OK |
| CY14 | Chiou & Youngs (2014) | crustal | 3.0–8.5 | 300 | Rrup | 0–10 | Z1.0 ✓ | 3σ | OK |
| AKKAR14 | Akkar, Sandıkkaya & Bommer (2014) | crustal | 4.0–8.0 | 200 | Rjb | 0–4 | — | 3σ | Fallback → BSSA14 |
| AB03 | Atkinson & Boore (2003) | interface / intraslab | 5.0–8.5 | 300 | Rrup | 0–3 | — | 3σ | Proxy → Zhao06 |
| ZHAO06 | Zhao et al. (2006) | interface / intraslab | 5.0–8.3 | 300 | Rrup | 0–5 | — | 3σ | OK |
| BCHYDRO | Abrahamson, Gregor & Addo (2016) | interface / intraslab | 5.0–9.5 | 300 | Rrup | 0–10 | — | 3σ | OK |
AKKAR14: aparece en el logic tree con peso 0.2 pero se instancia comoBooreEtAl2014(misma métrica Rjb). Efecto: BSSA14 corre con peso efectivo 0.4 en lugar de 0.2 — el promedio cortical queda sesgado hacia Boore.AB03: aparece en el logic tree con peso 0.2 pero se instancia comoZhaoEtAl2006SInter. Efecto: Zhao corre con peso efectivo 0.6 cuando el calculador se llama con los pesos del registro.
Nota: el endpoint de producción
(compute_hazard en services/) usa los defaults
del PSHACalculator — no los del registro — con 4 GMPEs
corticales (0.25 c/u) y 3 subducción (0.2/0.4/0.4). Los dos registros
están desincronizados: Carlos debería confirmar cuál es
la configuración autorizada.
04Árbol lógico
Hay dos configuraciones en coexistencia en el código base. Solo la primera afecta al valor mostrado en la UI.
compute_hazard())ASK14 × 0.25 + BSSA14 × 0.25 + CB14 × 0.25 + CY14 × 0.25
Interfaz:
AB03 × 0.2 + Zhao06 × 0.4 + BCHydro × 0.4
Intraslab:
BCHydro × 1.0
σ trunc: 0 (cortical), 3σ (subducción)
ASK14 × 1.0
Interfaz:
BCHydro × 1.0
Intraslab:
BCHydro × 1.0
σ trunc: 0 (cortical), 3σ (subducción)
4.1 Efecto numérico del logic tree (5BGC, mismas 41 fuentes PEM1)
| Configuración | Vs30 | PGA 475y (g) | PGA 2475y (g) | Δ vs ref |
|---|---|---|---|---|
| R-CRISIS (ASK14 + BCHydro) | 520 | 0.3745 | 0.6777 | baseline |
| R-CRISIS (ASK14 + BCHydro) | 760 | 0.3322 | 0.6147 | −11.3% |
| UI logic tree | 520 | 0.3236 | 0.5855 | −13.6% |
| UI logic tree | 760 | 0.2821 | 0.5227 | −24.7% |
Script de reproducción: scripts/diag_5bgc_gmpe_delta.py.
Mismas fuentes PEM1.DAT; solo varían Vs30 y logic tree.
4.2 Árbol de ruptura (por fuente)
- Characteristic: distribución delta en Mchar con tasa derivada de slip rate (Youngs-Coppersmith). Posición de ruptura: uniform, midpoint rule (validado PEER 2010).
- Truncated G-R: bineado en pasos de 0.1 MW entre
Mmin = 5.0yMmaxdel catálogo. - Distancias finitas: ruptura área
A(M) = 10M−4km², anchoW = min(A/L, seismogenic_thickness). Longitudes L(M) según escala de Wells & Coppersmith 1994.
05Validación y snapshot
El test tests/pipeline/psha/test_manila_regression.py reproduce el
snapshot locked y pasa actualmente (verificado 2026-04-19):
| RP (yr) | Snapshot PGA (g) | Live engine (g) | Test |
|---|---|---|---|
| 43 | 0.12661 | 0.12661 | PASS |
| 475 (DBE) | 0.37454 | 0.37454 | PASS |
| 975 | 0.49199 | 0.49199 | PASS |
| 2475 (MCE) | 0.67766 | 0.67766 | PASS |
5.1 Contribuciones por fuente (snapshot 475y)
| # | Fuente | Tectónica | % |
|---|---|---|---|
| 1 | Manila trench south EXP | interface | 26.2% |
| 2 | Marikina valley west | crustal | 23.7% |
| 3 | Zone 6 | crustal | 17.3% |
| 4 | Marikina valley east | crustal | 13.6% |
| 5 | Manila trench south | interface | 10.4% |
| 6 | East Luzon trench | interface | 2.3% |
| 7 | Guinayangan-Dingalan | crustal | 2.0% |
| 8 | Nakar West | crustal | 1.9% |
| 9 | East Luzon EXP | interface | 0.8% |
| 10 | Lamon bay | crustal | 0.4% |
06Puntos abiertos para tu revisión
Vs30 = 760 m/s (roca firme). Para 5BGC es
520 m/s medido. El selector lo permite cambiar pero el
operador debe acordarse. Propuesta: guardar Vs30 por
sitio en el modelador, o añadir una advertencia si Vs30 ≥ 720 en zona
urbana.
gmpe_registry.py declara pesos corticales con 5 GMPEs
(incluido AKKAR14, no implementado → BSSA14 duplica peso). El
PSHACalculator de producción usa otros defaults (4 GMPEs,
0.25 c/u). Propuesta: elegir un único sitio de verdad
para los pesos del logic tree y borrar el otro. Implementar AKKAR14
nativo (Rjb, sin basin) cuando sea prioridad.
f_depth = θ11·(min(h,120)−60).
Con la malla 3D de Manila south slab (depths 45–238 km) aparece doble
conteo si Rrup ya lleva la profundidad. Actualmente se pinea
hypo_depth = 60 km para neutralizar f_depth. Pregunta
abierta desde Apr 10: ¿cómo lo resuelve R-CRISIS internamente?
El snapshot actual pasa, pero la explicación física sigue sin cerrarse.
AApéndice · Fichero de cálculo
Inputs reales enviados por la UI al endpoint POST /api/v1/sources/psha:
Defaults del servidor adicionales (no enviados explícitamente):
uhs_return_periods = [475, 2475](hardcoded en router)use_logic_tree: auto (true si el catálogo tiene variabilidad paramétrica)Mmin = 5.0,radius_km = 300iml_values = DEFAULT_IML_PGA(rejilla log-spaced 0.001 g – 5 g)