Validación de aguas subterráneas y recarga
La sección de aguas subterráneas de la suite de validación evalúa tanto la contabilidad local del agua subterránea como su dinámica lateral. El cambio central de la implementación es el programador asincrónico. El drenaje vadoso, la producción de recarga y el ascenso capilar se evalúan en cada paso del modelo superficial, mientras que el almacenamiento saturado y las cargas laterales del agua subterránea se actualizan solo cuando corresponde según el programador.
Qué se probó
Se usaron cuatro casos de agua subterránea en la cuenca en V para evaluar el almacenamiento local y el comportamiento del programador.
VAL-GW-ASYNC-001: ascenso del nivel freático con recarga constante;VAL-GW-ASYNC-002: equivalencia del programador asincrónico;VAL-GW-CAP-001: abatimiento por ascenso capilar;VAL-GW-MOUND-001: domo de recarga de Boussinesq frente a una referencia numérica de paso de tiempo fino.
Se usaron dos casos adicionales de ladera para reforzar la evidencia sobre el flujo lateral de agua subterránea.
VAL-GW-HILL-STEADY-001: perfil de Dupuit permanente;VAL-GW-HILL-TRANSIENT-001: decaimiento transitorio de Boussinesq linealizado.
Recarga local y comportamiento del programador
Referencia y método
El caso de recarga local usa la relación analítica de almacenamiento Δh = RΔt / S_y con el flujo lateral de agua subterránea y la exfiltración desactivados. El caso de equivalencia del programador compara la actualización heredada del agua subterránea en cada paso con el programador de acumulación asincrónico. El caso de ascenso capilar aplica un flujo ascendente simple, con un límite físico, desde agua subterránea somera hacia un almacenamiento vadoso seco. El caso del domo de recarga activa el flujo lateral de agua subterránea y compara el resultado asincrónico con una referencia numérica interna de paso de tiempo fino.
Resultado principal
Los cuatro casos locales de agua subterránea superaron las pruebas.
| Caso | Régimen | RMSE de carga (m) | Error máximo de carga (m) | Error de almacenamiento (%) | Residuo (m³) |
|---|---|---|---|---|---|
VAL-GW-ASYNC-001 | Recarga local | 0.0 | 0.0 | 0.0 | 1.96 × 10^-11 |
VAL-GW-ASYNC-002 | Equivalencia del programador | 1.71 × 10^-13 | 1.71 × 10^-13 | 1.67 × 10^-11 | 1.84 × 10^-10 |
VAL-GW-CAP-001 | Ascenso capilar | 0.0 | 0.0 | 0.0 | -1.45 × 10^-12 |
VAL-GW-MOUND-001 | Domo de Boussinesq | 1.83 × 10^-8 | 9.90 × 10^-8 | 5.23 × 10^-13 | 3.09 × 10^-11 |


Diagnósticos del programador de recarga. El primer caso verifica el ascenso analítico del nivel freático con recarga constante. El segundo compara el programador asincrónico con la actualización heredada del agua subterránea en cada paso.


Diagnósticos de ascenso capilar y flujo lateral. El caso del domo es una evidencia útil frente a una referencia numérica, pero sigue siendo más débil que un benchmark analítico.
El resultado principal es que la acumulación de recarga, la actualización asincrónica del agua subterránea y el cierre simple de ascenso capilar se comportaron como se esperaba en condiciones controladas.
Benchmarks analíticos de ladera
Referencia y método
El caso de ladera permanente compara HydroPol2D con el perfil de Dupuit en forma cerrada, con recarga uniforme y carga fija en el dren. El caso de ladera transitorio compara el solucionador de Boussinesq de HydroPol2D con el primer modo propio de la ecuación de Boussinesq linealizada en el régimen de perturbaciones pequeñas.
Resultado principal
Ambos casos analíticos de ladera superaron las pruebas.
| Caso | Benchmark | RMSE de carga (m) | Error máximo de carga (m) | Métrica de flujo |
|---|---|---|---|---|
VAL-GW-HILL-STEADY-001 | Dupuit permanente | 6.04 × 10^-3 | 9.75 × 10^-3 | Error del caudal del dren = 3.74 × 10^-4 % |
VAL-GW-HILL-TRANSIENT-001 | Boussinesq linealizado | 1.94 × 10^-5 | 4.46 × 10^-5 | NSE = 0.99985 |
Benchmark de Dupuit permanente. El panel inferior muestra el error absoluto del perfil frente a la solución analítica.
Benchmark de ladera transitorio. El panel superior compara los perfiles de carga durante el decaimiento de la perturbación, y el panel inferior compara el flujo modelado y el analítico en el pie de la ladera, por unidad de ancho.
Subsuelo en capas
El subsuelo en capas se incorporó en octubre de 2026. Su evidencia es de cuatro tipos. Incluye pruebas unitarias en Python de las reglas de la columna, la paridad entre Python y MATLAB, simulaciones del modelo completo en la cuenca en V en MATLAB y un experimento gemelo de calibración.
Pruebas de la columna en Python
HydroPol2D-Python prueba directamente la columna en capas, el estrés de Feddes y el estado inicial del acuífero profundo (tests/test_subsurface_column.py, test_subsurface_geometry.py, test_subsurface_lateral.py, test_subsurface_mesh.py, test_subsurface_run.py, test_feddes.py, test_deep_aquifer_initial_state.py).
Dos pruebas numéricas tienen el mayor peso.
| Prueba | Caso | Resultado |
|---|---|---|
| Flujo implícito frente a explícito | Arena, , nivel freático a 30 cm de profundidad (franja casi saturada), pasos de 1 h frente a una simulación con pasos de 1 s | Implícito: el nivel freático se mantiene a menos de 2 mm de la simulación de 1 s. Explícito: drena cerca de 20 veces más agua de la debida. |
| Regla de rellenado capilar | Valle gemelo, solo la columna y modelo completo | Agua que circula entre el suelo y el nivel freático 9.3 × 10⁻³ → 0 m³/s; celdas que cambian de signo en cada paso 38 → 0; ascenso capilar bruto 0.016 → 0 m³/s; caudal del cauce sin cambio |
Otra prueba verifica que el ascenso capilar se detiene en la capacidad de campo.
Paridad entre Python y MATLAB
La adaptación a MATLAB se verifica con datos de referencia (fixtures) exportados desde HydroPol2D-Python (Validation/Groundwater/Layered en el repositorio de MATLAB). Desde el 2026-10-20, ambos modelos tienen el flujo implícito en el nivel freático. Los fixtures de los núcleos contienen salidas implícitas y explícitas, y los fixtures del paso usan el valor predeterminado del modelo (implícito). MATLAB calcula las derivadas implícitas por diferencias centrales y Python con jax.jvp, por lo que las verificaciones del flujo implícito usan una tolerancia de .
| Script | Qué verifica | Resultado registrado (2026-10-20) |
|---|---|---|
run_layered_kernel_parity.m | Cada núcleo de la columna: geometría, actualización del nivel freático MMF, drenaje, flujo de Darcy (explícito e implícito), Feddes, bisección del nivel freático compartido y avance lateral | 211 comprobaciones, peor caso |
run_layered_step_parity.m | El paso vertical en capas completo en una malla en V de 2 × 2, 4 escenarios, 312 pasos | 3 120 comprobaciones, peor caso |
run_layered_vtilted_case.m | Simulaciones del modelo completo en la cuenca en V: local, lateral, feddes, legacy, deep, deep_legacy, deep_empty y, desde el 2026-10-20, no_dtb (fondo de la columna desde la tabla de suelos), explicit_flux y soil_rasters | Se ejecuta desde una copia de Examples/VTilted_Excel; error de volumen de lateral de m³ |
run_feddes_legacy_consistency.m | La ET de Feddes en el esquema predeterminado de tres capas es igual a la ET de Feddes en capas para el mismo estado; Feddes nunca extrae más que la regla sin estrés | verificación de consistencia |
run_layered_mesh_case.m | Malla de Voronoi de 20 m en la cuenca en V con 2 HRU: predeterminado, en capas, en capas + Feddes | cada paso cierra la masa dentro de del volumen de lluvia |
run_deep_aquifer_initial_state_validation.m verifica el estado inicial profundo con un fixture compartido con HydroPol2D-Python. Validation/Groundwater/run_groundwater_release_checks.m ejecuta todos estos scripts. El 2026-10-20 se aprobaron 17 de 17.
Experimento gemelo de calibración
Un experimento gemelo recuperó multiplicadores conocidos de la conductividad del suelo y del regolito a partir de una recesión sintética de 30 días con 0, 5 y 10 % de ruido. Con la regla de rellenado capilar, la verdad fue el único par aceptable en cada nivel de ruido. La configuración, los resultados y los límites se presentan en la página Calibración por Recesión del Agua Subterránea.
Lo que no cubre la evidencia del esquema en capas
- No hay un caso de campo. Las pruebas usan dominios sintéticos en V.
- Estas pruebas no resuelven los problemas abiertos indicados en Límites conocidos, como el flujo lateral de agua colgada y la falta de franja capilar.
Lo que respalda esta validación
En conjunto, estos casos respaldan la acumulación de recarga implementada, el programador asincrónico, el ascenso y el abatimiento local del nivel freático a través de S_y, el ascenso capilar simple en capas y la dinámica lateral idealizada del agua subterránea en laderas.
Las pruebas del subsuelo en capas respaldan la implementación de la columna de suelo sobre regolito y la concordancia entre Python y MATLAB en casos controlados.
No validan parámetros regionales de acuíferos, flujo base de campo, bombeo de agua subterránea, comportamiento de acuíferos confinados ni calibración con pozos observados.