Aproximación de la ecuación de advección en regiones irregulares utilizando un Método de Líneas y Diferencias Finitas Generalizadas
Gerardo Tinoco-Guerrero, Francisco Javier Domínguez-Mota, Juan Salvador Lucas-Martínez y José Gerardo Tinoco-Ruiz
Resumen
Uno de los grandes retos en nuestros días continua siendo el diseñar métodos numéricos capaces de aproximar la solución de ecuaciones diferenciales parciales de manera rápida y precisa. Una de las ecuaciones más importantes, debido a las aplicaciones hidráulicas y de transporte con las que cuenta, y a la gran cantidad de dificultades que suele presentar al momento de resolverla numéricamente es la Ecuación de Advección.
En el presente trabajo se presenta un Método de Líneas aplicado a la solución numérica de dicha ecuación en regiones irregulares haciendo uso de un esquema de Diferencias Finitas Generalizadas. Se presentan una serie de pruebas y resultados numéricos, los cuales muestran la precisión del método propuesto.
1 Introducción
Si una sustancia es transportada en un fluido a una velocidad constante Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle a}
, la función del flujo puede escribirse como
El flujo de materia que pasa por el punto Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle x}
puede conocerse multiplicando la densidad local Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle u(x,t)}
por la velocidad de transporte. Dado que el total de la masa que pasa entre dos puntos, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle x_1}
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle x_2}
, cambia únicamente debido al flujo en los puntos límite, puede ser calculada como
Asumiendo suficiente suavidad en Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle u}
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle f}
, i.e. son funciones con tantas derivadas como sea necesario, la ecuación (1) puede escribirse como
ahora, debido a que la integral debe ser igual a Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): 0
para cualesquiera valores de Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): x_1
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): x_2
, entonces el integrando es igual a Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): 0
, con esto se obtiene la ecuación diferencial
Para el problema del transporte de una sustancia en un fluido a una velocidad constante, se puede escribir Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): f(u) = au
, donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): a
es una constante que representa la velocidad del fluido. Utilizando estos valores en la ecuación (3) se puede llegar a
que es conocida como la ecuación de advección en Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): (1+1)D
, la cual, por razones de simplicidad, puede ser escrita como
Analogamente, para el problema de transporte en el plano se obtiene la ecuación
En este trabajo se desea obtener una aproximación en Diferencias Finitas Generalizadas, para la parte espacial, a la solución del problema
donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Omega }
es un dominio plano simplemente conexo, y su frontera, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \partial \Omega }
, es un polígono de Jordan orientado de manera positiva; además Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \partial \Omega = S_1\cup S_2}
(como se muestra en la figura 1), Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle S_1}
corresponde a la frontera con la entrada de flujo. Para la parte temporal se utilizará un Método de Líneas.
El problema de advección es de interés en modelación por las inestabilidades que se presentan al aproximar su solución empleando diferencias finitas.
|
Figura 1: Dominio Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): \Omega
con fronteras Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): \partial \Omega = S_1 \cup S_2
.
|
2 Esquema propuesto
Para el caso de la ecuación de advección
es posible discretizar las derivadas espaciales utilizando el método de Diferencias Finitas Generalizadas; para ello es conveniente considerar la aproximación al operador lineal de segundo orden
donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle A, B, C, D, E}
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle F}
son funciones dadas y su valor en el nodo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle p_0 = (x_0,y_0)}
puede aproximarse usando valores de Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle u}
en algunos nodos vecinos Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle p_i=(x_i, y_i)}
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle i~=~1,2,\dots ,q}
(véase figura 2). Para el efecto se utiliza un esquema de diferencias finitas en el nodo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle p_0}
, el cual puede escribirse como una combinación lineal
donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Gamma _0, \Gamma _1, \dots , \Gamma _q}
son pesos adecuados.
|
Figura 2: Distribución arbitraria de Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): p_0
y sus vecinos.
|
Un esquema es consistente si
cuando Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle p_1,...,p_q \to p_0}
. Utilizando los primeros seis términos de la expansión en serie de Taylor, hasta segundo orden, de la condición de consistencia se obtiene el sistema
donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Delta x_{i} = x_{i}-x_{0}}
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Delta y_{i} = y_{i}-y_{0}}
. Nótese que (9) cuenta con 6 ecuaciones y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle q+1}
incógnitas. En los casos de interés, es un sistema subdeterminado. Sin embargo puede ser resuelto de manera no iterativa en el sentido de cuadrados mínimos, para ello se consideran únicamente las últimas 5 ecuaciones de (9),
cuyas ecuaciones normales pueden resolverse utilizando factorización reducida de Cholesky para obtener los valores de Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Gamma _1,...,\Gamma _q}
. La primera ecuación de (9) determina Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Gamma _0}
como
De esta forma se obtiene un conjunto de coeficientes necesarios para definir el esquema (8).
El esquema definido por (8) puede ser aplicado al operador
y los coeficientes Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle \Gamma _0,...,\Gamma _q}
obtenidos definen el esquema
Nótese que el esquema (12) puede ser usado tanto en mallas estructuradas como en mallas no estructuradas. Sin embargo, el uso de mallas lógicamente rectangulares permite aprovechar la estructura dada por el par de índices en la malla Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle G~=~\{ p_{i,j}~|~1\le i\le m , 1\le j\le n\} }
.
Para este trabajo se proponen dos esquemas diferentes. El primero de ellos utiliza cada nodo de la malla y 3 de sus vecinos, con esta elección de vecinos se obtiene un esténcil como el mostrado en la figura 3; el esquema (12) toma la forma
|
| Figura 3: Esténcil de 4 puntos.
|
El segundo esquema que se propone utiliza cada nodo de la malla y 5 de sus vecinos. Los esténciles usados varían dependiendo de la localización lógica del nodo correspondiente en términos de su posición en la malla, cada uno de estos esténciles se muestran en la figura 4 y, en todos los casos, se obtiene una expresión de la forma
|
|
|
| Figura 4: Diferentes esténciles del esquema de 6 puntos.
|
Una vez que se cuenta con una discretización del operador espacial, el problema de encontrar una aproximación a la solución de la ecuación de advección
puede resolverse como un sistema lineal de ecuaciones diferenciales ordinarias en el tiempo; el cual puede ser resuelto por medio de un método de Runge-Kutta. En el presente trabajo se propone utilizar Runge-Kutta de orden 2, 3 y 4 de la siguiente manera:
Runge-Kutta de Orden 2
donde
Runge-Kutta de Orden 3
donde
Runge-Kutta de Orden 4
donde
en todos los casos, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle k}
representa el nivel de tiempo.
3 Pruebas numéricas
Para medir la precisión de los métodos se planteo el problema de obtener una aproximación a la ecuación
y se aplicó a dos regiones de prueba denotadas como CAB y MIC, las cuales son regiones planas no rectangulares, como se muestra en la figura
5. Para estas regiones se generaron mallas lógicamente rectangulares con 21, 41 y 81 puntos por lado respectivamente, en la figura
6 se muestran las mallas generadas con 41 puntos por lado.
|
|
| Figura 5: Regiones de prueba.
|
|
|
| Figura 6: Mallas generadas con 41 puntos por lado.
|
Las pruebas numéricas se realizaron utilizando una discretizacion uniforme del intervalo de tiempo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle [0,1]}
dividido en 200 subintervalos. En todos los casos se calcularon el error cuadrático medio
donde Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle A_{i,j}}
es el área del cuadrilátero correspondiente; y el error máximo normalizado
siendo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle u_{i,j}^{k}}
y Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle U_{i,j}^{k}}
la solución aproximada y la exacta, en el nodo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle i,j}
al tiempo Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle k}
, respectivamente.
Los conjuntos de figuras 7 y 8 muestran los resultados obtenidos utilizando el método de 6 puntos con Runge-Kutta 4, en la región CAB con Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): {\textstyle 41\times{41}}
puntos espaciales en diferentes niveles de tiempo; por su parte los conjuntos de figuras 9 y 10 muestran los resultados correspondientes para la región MIC.
La tabla 1 muestra los errores calculados en todas las pruebas para la región CAB, mientras que la tabla 2 muestra los correspondientes para la región MIC. Los métodos se encuentran abreviados siguiendo la nomenclatura RKN-P, donde N representa el orden utilizado para el método de Runge-Kutta y P el número de nodos utilizados por el esténcil de Diferencias Finitas Generalizadas para la discretización del operador espacial.
|
|
|
Figura 7: Resultados para la región CAB con Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): [41\times{41}]
puntos.
|
|
|
Figura 8: Resultados para la región CAB con Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): [41\times{41}]
puntos.
|
|
|
|
Figura 9: Resultados para la región MIC con Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): [41\times{41}]
puntos.
|
|
|
Figura 10: Resultados para la región MIC con Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://mathoid.scipedia.com/localhost/v1/":): [41\times{41}]
puntos.
|
Tabla. 1 Errores calculados para la región CAB.
|
Método
|
ECM-21
|
EMN-21
|
ECM-41
|
EMN-41
|
ECM-81
|
EMN-81
|
|
RK2-4
|
1.4639E-02
|
5.9141E-01
|
1.0151E-02
|
4.2571E-01
|
6.2021E-03
|
2.6868E-01
|
| RK3-4
|
1.4717E-02
|
5.9386E-01
|
1.0308E-02
|
4.3131E-01
|
6.4582E-03
|
2.7820E-01
|
| RK4-4
|
1.4717E-02
|
5.9386E-01
|
1.0308E-02
|
4.3131E-01
|
6.4581E-03
|
2.7820E-01
|
| RK2-6
|
9.7173E-03
|
3.6234E-01
|
3.8362E-03
|
1.4595E-01
|
1.1686E-03
|
4.2355E-02
|
| RK3-6
|
9.7326E-03
|
3.6546E-01
|
3.8709E-03
|
1.5144E-01
|
1.1113E-03
|
4.2459E-02
|
| RK4-6
|
9.7326E-03
|
3.6546E-01
|
3.8709E-03
|
1.5144E-01
|
1.1113E-03
|
4.2459E-02
|
Tabla. 2 Errores calculados para la región MIC.
|
Método
|
ECM-21
|
EMN-21
|
ECM-41
|
EMN-41
|
ECM-81
|
EMN-81
|
|
RK2-4
|
1.4085E-02
|
5.9370E-01
|
9.7196E-03
|
4.2643E-01
|
5.9166E-03
|
2.6669E-01
|
| RK3-4
|
1.4167E-02
|
5.9677E-01
|
9.8742E-03
|
4.3352E-01
|
6.1416E-03
|
2.7784E-01
|
| RK4-4
|
1.4167E-02
|
5.9677E-01
|
9.8742E-03
|
4.3352E-01
|
6.1416E-03
|
2.7784E-01
|
| RK2-6
|
1.0115E-02
|
4.0059E-01
|
4.2626E-03
|
1.6303E-01
|
1.2992E-03
|
4.9904E-02
|
| RK3-6
|
1.0104E-02
|
4.0413E-01
|
4.2624E-03
|
1.6741E-01
|
1.2385E-03
|
5.0770E-02
|
| RK4-6
|
1.0104E-02
|
4.0413E-01
|
4.2624E-03
|
1.6741E-01
|
1.2385E-03
|
5.0770E-02
|
4 Conclusiones
Puede observarse en los resultados presentados en la sección 3 que el Método de Líneas propuesto para la solución de la ecuación advección produce aproximaciones satisfactorias a la solución de dicha ecuación. En las pruebas realizadas no se perciben oscilaciones espurias ni inestabilidades; además, se muestra que el método es mucho más eficiente si se combina el esquema de Diferencias Finitas Generalizadas que utiliza 6 puntos con un método de Runge-Kutta 4.
Adicionalmente, a pesar de que en principio parece que el método que utiliza 4 puntos para la discretización del operador espacial no produce buenos resultados, los resultados numéricos en las tablas 1 y 2 muestran que una refinación de la malla espacial puede lograr mejorar los resultados del método; como es de esperarse en esta clase de métodos. Vale la pena hacer mención de que, para todas las pruebas, se utilizaron únicamente 200 pasos en la discretización temporal, lo cual hace que el costo computacional de este método resulte bajo, ya que no requiere hacer discretizaciones temporales muy pequeñas, como sucede en otros casos.
5 Agradecimientos
Los autores desean agradecer el apoyo brindado por CIC-UMSNH y Aula CIMNE-Morelia para la realización del presente trabajo; de igual manera se extiende un agradecimiento al Concejo Nacional de Ciencia y Tecnología (CONACyT).
BIBLIOGRAFÍA
[1] M. Celia and W. Gray,
Numerical Methods for Differential Equations, Prentice-Hall, (1992).
[2] F. J. Domínguez-Mota, P. M. Fernández-Valdez, E. Ruiz-Díaz, G. Tinoco-Guerrero and J. G. Tinoco-Ruiz, An Heuristic Finite Difference Scheme on Irregular Plane Regions, in
Applied Mathematical Sciences, (14),
8, (2014), 671-683.
[3] F. J. Domínguez-Mota, S. Mendoza-Armenta and J. G. Tinoco-Ruiz, Finite Difference Schemes Satisfying an Optimality Condition, in
Meeting on Applied Scientific Computation and Tools 2011 Proceedings, IMACS Series, (2011)
[4] R. J. LeVeque,
Finite difference methods for ordinary and partial differential equations : steady-state and time-dependent problems, Society for Industrial and Applied Mathematics, 2007.
[5] R. Silhavy, P. Silhavy and Z. Prokopova,
Applied Computational Intelligence and Mathematical Methods: Computational Methods in Systems and Software 2017, Volume 2, Springer, (2017)
[6] J. C. Strikwerda,
Finite difference schemes and partial differential equations, Society for Industrial and Applied Mathematics, 2004.
[7] J. W. Thomas,
Numerical Partial Differential Equations: Finite Difference Methods, Springer, 1998.
[8] G. Tinoco-Guerrero, F. J. Domínguez-Mota, J. G. Tinoco-Ruiz and E. Ruiz-Díaz, Stability aspects of a modified Lax-Wendroff scheme for irregular 2D regions, in
Meeting on Applied Scientific Computing and Tools 2015 Proceedings, IMACS Series, 2017.
[9] G. Tinoco-Guerrero, F.J. Domínguez-Mota, A. Gaona-Arias, M.L. Ruiz-Zavala and J.G. Tinoco-Ruiz, A stability analysis for a generalized finite-difference scheme applied to the pure advection equation, in Mathematics and Computers in Simulation, 147, 2018, 293-300.