Solucionador PCGN de MODFLOW

El paquete PCGN proporciona medios adicionales mediante los cuales puede darse solución a problemas no lineales de flujo de agua subterránea. Este solucionador utiliza iteraciones Picard (las mismas interacciones que utiliza MODFLOW para resolver matrices no lineares), para resolver ecuaciones de flujo no lineales iterativamente por una aproximación lineal. La solución lineal es proporcionada por medio del algoritmo modificado incompleto de Cholesky. El esquema de Cholesky incorpora dos niveles de llenado, 0 y 1, en la que los pivotes se pueden modificar. Un factor de relajación se usa para implementar los pivotes modificados, lo que determina el grado de modificación permitido. El método de gradiente conjugado se acopla con la iteración Picard, para resolver eficientemente las ecuaciones no lineales asociados al modelamiento de flujo de agua subterránea.

 

 

 

Instrucciones de entrada de datos para el solucionador PCGN

 

PCGN necesita ser completado con los siguientes datos de entrada, en las dos pestañas que presenta el solucionador (Basic, Non-Linear). Algunos de ellos aparecen por defecto.

 

1.           ITER_MO, ITER_MI, CLOSE_R, CLOSE_H

2.          RELAX, IFILL, UNIT_PC, UNIT_TS

3.          ADAMP, DAMP, DAMP_LB, RATE_D, CHGLIMIT

4.          ACNVG, CNVG_LB, MCNVG, RATE_C, IPUNIT 

figura_pcgn2.png

ITER_MO, Máximo número posible de interacciones Picard externas. Para sistemas no lineales, debe ser un número mucho mayor a 1, dependiendo del tamaño del problema y la no linealidad. Si ITER_MO =1, se asume problema lineal. 

ITER_MI, Máximo número posible de interacciones Picard internas. Este valor generalmente es mayor a 1, dependiendo del tamaño de la matriz, el grado de convergencia y la naturaleza del problema. Debe ser lo suficientemente grande para permitir la convergencia. 

CLOSE_R, Criterio residual de conclusión en base a la iteración.           

  • ITER_MO = 1; Para problemas lineales, se usa el criterio de CLOSE_R como el valor criterio de convergencia absoluta para salir del solucionador PCG.
  • ITER_MO > 1; Para problemas no lineales 

CLOSE_H, Criterio alternativo para detener las interacciones, que es necesario en la solución de problemas no lineales. Se dice que hay una posible convergencia si la variación máxima del “head” es menor que el valor de CLOSE_H. Sin embargo, como los problemas no lineales presentan oscilaciones, no se admite una convergencia hasta que el valor de cambio sea al menos de 3 interacciones CLOSE_H. 

RELAX, Parámetro de relajación. Indica cuán de acuerdo está la suma entre filas de la matriz original y la matriz de precondicionamiento. RELAX = 0, corresponde al algoritmo ordinario de Cholesky. Si RELAX = 1, las modificaciones del algoritmo están completamente forzadas. Generalmente se recomiendan valores entre 0.9 – 1.  Los valores de 1 no son aconsejables, especialmente cuando se tiene valores de IFILL = 0. Se tiene mejor desempeño con RELAX = 0.99. 

IFILL, Nivel de llenado del algoritmo modificado incompleto de Cholesky (MIC). Generalmente entre más grande sea el valor, se está aplicando más el precondicionador MIC. Con valores de IFILL = 0, se tiene un mejor desempeño acompañando con valores de RELAX <> 1. Para problemas no lineales o de difícil convergencia, se prefiere  un nivel de llenado de 1. 

UNIT_PC, Representa el número de unidades de un archivo de salida opcional en el que pueda ser escrito el progreso de las iteracciones. 

UNIT_TS, archivo opcional de salida en el cual se acumulan los tiempos actuales del solucionador.

 

 

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.