Esquema MUSCL


De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

En el estudio de ecuaciones diferenciales parciales , el esquema MUSCL es un método de volumen finito que puede proporcionar soluciones numéricas de alta precisión para un sistema dado, incluso en los casos en que las soluciones presentan choques, discontinuidades o gradientes grandes. MUSCL son las siglas de Monotonic Upstream- céntrico Scheme for Conservation Laws (van Leer, 1979), y el término fue introducido en un artículo seminal de Bram van Leer (van Leer, 1979). En este trabajo se construyó la primera de alto orden , la disminución total de variación esquema (TVD) donde obtuvo precisión espacial segundo orden.

La idea es reemplazar la aproximación constante por partes del esquema de Godunov por estados reconstruidos, derivados de los estados promediados por celdas obtenidos del paso de tiempo anterior. Para cada celda, se obtienen los estados izquierdo y derecho reconstruidos con pendiente limitada y se utilizan para calcular los flujos en los límites de la celda (bordes). Estos flujos pueden, a su vez, usarse como entrada para un solucionador de Riemann , luego de lo cual las soluciones se promedian y se usan para hacer avanzar la solución en el tiempo. Alternativamente, los flujos se pueden usar en esquemas sin solucionador de Riemann , que son básicamente esquemas similares a Rusanov.

Reconstrucción lineal

Ecuación advectiva 1D , con onda escalonada que se propaga hacia la derecha. Muestra la solución analítica junto con una simulación basada en un esquema de discretización espacial contra el viento de primer orden.

Consideraremos los fundamentos del esquema MUSCL considerando el siguiente sistema 1D escalar simple de primer orden, que se supone que tiene una onda que se propaga en la dirección positiva,

Donde representa una variable de estado y representa una variable de flujo .

El esquema básico de Godunov utiliza aproximaciones constantes por partes para cada celda, y da como resultado una discretización de primer orden contra el viento del problema anterior con centros de celda indexados como . Un esquema semidiscreto se puede definir de la siguiente manera,

Este esquema básico no es capaz de manejar golpes o discontinuidades agudas, ya que tienden a mancharse. Un ejemplo de este efecto se muestra en el diagrama opuesto, que ilustra una ecuación advectiva 1D con una onda escalonada que se propaga hacia la derecha. La simulación se realizó con una malla de 200 celdas y se utilizó un integrador de tiempo Runge-Kutta de cuarto orden (RK4).

Para proporcionar una mayor resolución de las discontinuidades, el esquema de Godunov se puede extender para usar aproximaciones lineales por partes de cada celda, lo que da como resultado un esquema de diferencia central que es de segundo orden preciso en el espacio. Las aproximaciones lineales por partes se obtienen de

Por lo tanto, al evaluar los flujos en los bordes de la celda obtenemos el siguiente esquema semidiscreto

Ecuación advectiva 1D , con onda escalonada que se propaga hacia la derecha. Muestra la solución analítica junto con una simulación basada en un esquema de discretización espacial de diferencia central de segundo orden.

donde y son los valores aproximados por partes de las variables de borde de celda, es decir ,

Aunque el esquema de segundo orden anterior proporciona mayor precisión para soluciones suaves, no es un esquema de disminución de variación total (TVD) e introduce oscilaciones espurias en la solución donde hay discontinuidades o choques. Un ejemplo de este efecto se muestra en el diagrama opuesto, que ilustra una ecuación advectiva 1D , con una onda escalonada que se propaga hacia la derecha. Esta pérdida de precisión es de esperar debido al teorema de Godunov . La simulación se llevó a cabo con una malla de 200 celdas y se utilizó RK4 para la integración del tiempo.

Un ejemplo de extrapolación lineal de estado izquierdo y derecho de tipo MUSCL.

Los esquemas numéricos basados ​​en MUSCL amplían la idea de utilizar una aproximación lineal por partes para cada celda mediante el uso de estados extrapolados de izquierda y derecha con pendiente limitada . Esto da como resultado el siguiente esquema de discretización TVD de alta resolución,

Que, alternativamente, se puede escribir en la forma más sucinta,

Los flujos numéricos corresponden a una combinación no lineal de aproximaciones de primer y segundo orden a la función de flujo continuo.

Los símbolos y representan funciones dependientes del esquema (de las variables de borde de celda extrapoladas limitadas), es decir ,

donde, usando pendientes a favor del viento:

y

La función es una función limitadora que limita la pendiente de las aproximaciones por partes para garantizar que la solución sea TVD, evitando así las oscilaciones espúreas que de otro modo ocurrirían alrededor de discontinuidades o choques; consulte la sección Limitador de flujo . El limitador es igual a cero cuando y es igual a la unidad cuando . Por lo tanto, la precisión de una discretización de TVD se degrada a primer orden en los extremos locales, pero tiende a segundo orden en partes suaves del dominio.

El algoritmo es sencillo de implementar. Una vez que se ha elegido un esquema adecuado para , como el esquema de Kurganov y Tadmor (ver más abajo), la solución puede continuar utilizando técnicas de integración numérica estándar.

Esquema central de Kurganov y Tadmor

Un precursor del esquema central de Kurganov y Tadmor (KT) , (Kurganov y Tadmor, 2000), es el esquema central escalonado de Nessyahu y Tadmor (NT) (Nessyahu y Tadmor, 1990). Es un esquema de alta resolución , de segundo orden y sin solucionador de Riemann que utiliza la reconstrucción MUSCL. Es un método completamente discreto que es sencillo de implementar y puede usarse en problemas escalares y vectoriales , y puede verse como un flujo de Rusanov (en un grado abusivo, llamado flujo Lax-Friedrichs) complementado con reconstrucciones de alto orden. El algoritmo se basa en diferencias centrales con un rendimiento comparable al de los solucionadores de tipo Riemann cuando se utilizan para obtener soluciones para sistemas de descripción de PDE que presentan fenómenos de alto gradiente.

El esquema KT amplía el esquema NT y tiene una menor cantidad de viscosidad numérica que el esquema NT original. También tiene la ventaja adicional de que se puede implementar como un esquema completamente discreto o semidiscreto . Aquí consideramos el esquema semidiscreto.

El cálculo se muestra a continuación:

Ecuación advectiva 1D , con onda escalonada que se propaga hacia la derecha. Muestra la solución analítica junto con una simulación basada en el esquema central Kurganov y Tadmor con limitador SuperBee.

Cuando la velocidad de propagación locales , , es el valor máximo absoluto del valor propio de la jacobiana de sobre las células dadas por

y representa el radio espectral de

Más allá de estas velocidades relacionadas con CFL , no se requiere información característica.

El cálculo de flujo anterior se denomina con mayor frecuencia flujo de Lax-Friedrichs (aunque vale la pena mencionar que dicha expresión de flujo no aparece en Lax, 1954 sino en Rusanov, 1961).

Un ejemplo de la eficacia de utilizar un esquema de alta resolución se muestra en el diagrama de al lado, que ilustra la ecuación advectiva 1D , con una onda escalonada que se propaga hacia la derecha. La simulación se llevó a cabo en una malla de 200 celdas, utilizando el esquema central Kurganov y Tadmor con limitador Superbee y se utilizó RK-4 para la integración temporal. Este resultado de simulación contrasta extremadamente bien con los resultados de diferencia central de primer orden en ceñida y segundo orden mostrados anteriormente. Este esquema también proporciona buenos resultados cuando se aplica a conjuntos de ecuaciones; consulte los resultados a continuación para este esquema aplicado a las ecuaciones de Euler. Sin embargo, se debe tener cuidado al elegir un limitador apropiado porque, por ejemplo, el limitador Superbee puede causar un afilado poco realista para algunas ondas suaves.

El esquema puede incluir fácilmente términos de difusión, si están presentes. Por ejemplo, si el problema escalar 1D anterior se amplía para incluir un término de difusión, obtenemos

para lo cual Kurganov y Tadmor proponen la siguiente aproximación de diferencia central,

Dónde,

Los detalles completos del algoritmo ( versiones completas y semidiscretas ) y su derivación se pueden encontrar en el artículo original (Kurganov y Tadmor, 2000), junto con varios ejemplos 1D y 2D. También hay información adicional disponible en el artículo anterior relacionado de Nessyahu y Tadmor (1990).

Nota: Este esquema fue presentado originalmente por Kurganov y Tadmor como un esquema de segundo orden basado en extrapolación lineal . Un artículo posterior (Kurganov y Levy, 2000) demuestra que también puede formar la base de un esquema de tercer orden. Un ejemplo advectivo 1D y un ejemplo de ecuación de Euler de su esquema, usando reconstrucción parabólica (tercer orden), se muestran en las secciones de reconstrucción parabólica y ecuación de Euler a continuación.

Reconstrucción parabólica por partes

Un ejemplo de reconstrucción parabólica de estado tipo MUSCL.

Es posible extender la idea de extrapolación lineal a la reconstrucción de orden superior, y se muestra un ejemplo en el diagrama de al lado. Sin embargo, para este caso, los estados izquierdo y derecho se estiman mediante la interpolación de una ecuación en diferencia de segundo orden, sesgada contra el viento. Esto da como resultado un esquema de reconstrucción parabólica que tiene una precisión de tercer orden en el espacio.

Seguimos el enfoque de Kermani (Kermani, et al., 2003), y presentamos un esquema sesgado contra el viento de tercer orden, donde los símbolos y nuevamente representan funciones dependientes del esquema (de las variables de borde de celda reconstruidas limitadas). Pero para este caso se basan en estados reconstruidos parabólicamente, es decir ,

y

Ecuación advectiva 1D , con onda escalonada que se propaga hacia la derecha. Muestra la solución analítica junto con una simulación basada en el Esquema Central Kurganov y Tadmor con reconstrucción parabólica y limitador de van Albada.

Donde = 1/3 y,

y la función del limitador , es la misma que la anterior.

La reconstrucción parabólica es sencilla de implementar y se puede utilizar con el esquema de Kurganov y Tadmor en lugar de la extrapolación lineal que se muestra arriba. Esto tiene el efecto de elevar la solución espacial del esquema KT al tercer orden. Funciona bien al resolver las ecuaciones de Euler, ver más abajo. Este aumento en el orden espacial tiene ciertas ventajas sobre los esquemas de segundo orden para soluciones suaves, sin embargo, para choques es más disipativo - compare el diagrama opuesto con la solución anterior obtenida usando el algoritmo KT con extrapolación lineal y limitador Superbee. Esta simulación se realizó sobre una malla de 200 células utilizando el mismo algoritmo KT pero con reconstrucción parabólica. La integración de tiempo se realizó mediante RK-4, y se utilizó la forma alternativa del limitador de van Albada, para evitar oscilaciones espurias.

Ejemplo: ecuaciones de Euler 1D

Por simplicidad, consideramos el caso 1D sin transferencia de calor y sin fuerza corporal. Por lo tanto, en forma de vector de conservación, las ecuaciones de Euler generales se reducen a

dónde

y donde es un vector de estados y es un vector de flujos.

Las ecuaciones anteriores representan la conservación de masa , momento y energía . Por tanto, hay tres ecuaciones y cuatro incógnitas, (densidad) (velocidad del fluido), (presión) y (energía total). La energía total está dada por,

donde representa energía interna específica.

Para cerrar el sistema se requiere una ecuación de estado . Uno que se adapta a nuestro propósito es

donde es igual a la relación de calores específicos para el fluido.

Ahora podemos proceder, como se muestra arriba en el ejemplo 1D simple, obteniendo los estados extrapolados a la izquierda y a la derecha para cada variable de estado. Por lo tanto, para la densidad obtenemos

dónde

Del mismo modo, para el impulso y la energía total . La velocidad se calcula a partir del momento y la presión se calcula a partir de la ecuación de estado.

Habiendo obtenido los estados extrapolados limitados, procedemos a construir los flujos de borde usando estos valores. Con los flujos de borde conocidos, ahora podemos construir el esquema semidiscreto, es decir ,

La solución ahora puede proceder mediante la integración utilizando técnicas numéricas estándar.

Lo anterior ilustra la idea básica del esquema MUSCL. Sin embargo, para una solución práctica a las ecuaciones de Euler, también se debe elegir un esquema adecuado (como el esquema KT anterior) para definir la función .

Simulación de alta resolución de ecuaciones de Euler basada en el problema 'Shock Tube' de GA Sod. Muestra las soluciones analíticas junto con las soluciones simuladas (de segundo orden) basadas en el esquema central de Kuganov y Tadmor con extrapolación lineal y limitador de Ospre.

El diagrama opuesto muestra una solución de segundo orden al problema del tubo de choque de GA Sod (Sod, 1978) utilizando el esquema central (KT) de Kurganov y Tadmor de alta resolución anterior con extrapolación lineal y limitador Ospre. Esto ilustra claramente la efectividad del enfoque MUSCL para resolver las ecuaciones de Euler. La simulación se realizó sobre una malla de 200 celdas utilizando código Matlab (Wesseling, 2001), adaptado para utilizar el algoritmo KT y el limitador Ospre . La integración de tiempo se realizó mediante un integrador SHK de cuarto orden (rendimiento equivalente a RK-4). Se utilizaron las siguientes condiciones iniciales ( unidades SI ):

  • presión a la izquierda = 100000 [Pa];
  • presión derecha = 10000 [Pa];
  • densidad a la izquierda = 1.0 [kg / m3];
  • densidad derecha = 0,125 [kg / m3];
  • longitud = 20 [m];
  • velocidad izquierda = 0 [m / s];
  • velocidad derecha = 0 [m / s];
  • duración = 0,01 [s];
  • lambda = 0,001069 (Δt / Δx).
Simulación de alta resolución de ecuaciones de Euler basada en el problema 'Shock Tube' de GA Sod: unidades SI. Muestra las soluciones analíticas junto con soluciones simuladas (3er orden) basadas en el esquema central Kurganov y Tadmor con reconstrucción parabólica y limitador de van Albada.

El diagrama de la derecha muestra una solución de tercer orden al problema del tubo de choque de GA Sod (Sod, 1978) utilizando el esquema central (KT) de Kurganov y Tadmor de alta resolución anterior, pero con reconstrucción parabólica y limitador de van Albada. Esto ilustra nuevamente la efectividad del enfoque MUSCL para resolver las ecuaciones de Euler. La simulación se realizó sobre una malla de 200 celdas utilizando código Matlab (Wesseling, 2001), adaptado para utilizar el algoritmo KT con Extrapolación Parabólica y limitador de van Albada . Se utilizó la forma alternativa del limitador de van Albada, para evitar oscilaciones espúreas. La integración de tiempo se realizó mediante un integrador SHK de cuarto orden. Se utilizaron las mismas condiciones iniciales.

Se han desarrollado varios otros esquemas de alta resolución que resuelven las ecuaciones de Euler con buena precisión. Ejemplos de tales esquemas son,

  • el esquema de Osher , y
  • el esquema Liou-Steffen AUSM (método de división por advección aguas arriba).

Puede encontrar más información sobre estos y otros métodos en las referencias a continuación. Se puede encontrar una implementación de código abierto del esquema central de Kurganov y Tadmor en los enlaces externos a continuación.

Ver también

  • Método de volumen finito
  • Limitador de flujo
  • Teorema de Godunov
  • Esquema de alta resolución
  • Método de líneas
  • Sergei K. Godunov
  • Disminución de la variación total
  • Tubo de choque de césped

Referencias

  • Kermani, MJ, Gerber, AG y Stockie, JM (2003), Predicción de humedad basada en termodinámicamente utilizando el esquema de Roe, La 4ª Conferencia de la Sociedad Aeroespacial de Irán , Universidad de Tecnología Amir Kabir, Teherán, Irán, 27 al 29 de enero. [1]
  • Kurganov, Alexander y Eitan Tadmor (2000), Nuevos esquemas centrales de alta resolución para leyes de conservación no lineales y ecuaciones de convección-difusión, J. Comput. Phys. , 160 , 241-282. [2]
  • Kurganov, Alexander y Doron Levy (2000), Un esquema central semidiscreto de tercer orden para leyes de conservación y ecuaciones de convección-difusión, SIAM J. Sci. Computación. , 22 , 1461-1488. [3]
  • Lax, PD (1954). Soluciones débiles de ecuaciones hiperbólicas no lineales y su cálculo numérico, Com. Pure Appl. Matemáticas. , VII, pp159-193.
  • Leveque, RJ (2002). Métodos de volumen finito para problemas hiperbólicos , Cambridge University Press.
  • van Leer, B. (1979), Towards the Ultimate Conservative Difference Scheme, V. Una secuela de segundo orden del método de Godunov, J. Com. Phys. ., 32 , 101-136.
  • Nessyahu, H. y E. Tadmor (1990), Diferenciación central no oscilatoria para leyes de conservación hiperbólicas, J. Comput. Phys. , 87 , 408–463. [4] .
  • Rusanov, VV (1961). Cálculo de la intersección de ondas de choque no estacionarias con obstáculos, J. Comput. Matemáticas. Phys. URSS , 1 , págs. 267–279.
  • Sod, GA (1978), Un estudio numérico de un choque cilíndrico convergente. J. Mecánica de fluidos , 83 , 785–794.
  • Toro, EF (1999), Riemann Solvers and Numerical Methods for Fluid Dynamics , Springer-Verlag.
  • Wesseling, Pieter (2001), Principios de dinámica de fluidos computacional , Springer-Verlag.

Otras lecturas

  • Hirsch, C. (1990), Computación numérica de flujos internos y externos , vol 2, Wiley.
  • Laney, Culbert B. (1998), Dinámica computacional de gases , Cambridge University Press.
  • Tannehill, John C. y col. (1997), Mecánica de fluidos computacional y transferencia de calor , 2ª Ed., Taylor y Francis.

enlaces externos

  • GEES - Código fuente abierto que resuelve las ecuaciones de Euler utilizando el esquema central de Kurganov y Tadmor, escrito en Fortran (autor: Arno Mayrhofer)
Obtenido de " https://en.wikipedia.org/w/index.php?title=MUSCL_scheme&oldid=943585200 "