Un problema de Riemann , llamado así por Bernhard Riemann , es un problema de valor inicial específico compuesto por una ecuación de conservación junto con datos iniciales constantes por partes que tiene una sola discontinuidad en el dominio de interés. El problema de Riemann es muy útil para la comprensión de ecuaciones como las ecuaciones de conservación de Euler porque todas las propiedades, como los choques y las ondas de rarefacción, aparecen como características en la solución. También da una solución exacta a algunas ecuaciones no lineales complejas, como las ecuaciones de Euler .
En análisis numérico , los problemas de Riemann aparecen de forma natural en métodos de volumen finito para la solución de ecuaciones de la ley de conservación debido a la discreción de la cuadrícula. Por eso es ampliamente utilizado en dinámica de fluidos computacional y en simulaciones de magnetohidrodinámica computacional . En estos campos, los problemas de Riemann se calculan utilizando solucionadores de Riemann .
Como ejemplo simple, investigamos las propiedades del problema unidimensional de Riemann en dinámica de gases (Toro, Eleuterio F. (1999). Riemann Solvers and Numerical Methods for Fluid Dynamics, Pg 44, Example 2.5)
Las condiciones iniciales vienen dadas por
![{\begin{bmatrix}\rho \\u\end{bmatrix}}={\begin{bmatrix}\rho _{L}\\u_{L}\end{bmatrix}}{\text{ for }}x\leq 0\qquad {\text{and}}\qquad {\begin{bmatrix}\rho \\u\end{bmatrix}}={\begin{bmatrix}\rho _{R}\\u_{R}\end{bmatrix}}{\text{ for }}x>0](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
donde x = 0 separa dos estados diferentes, junto con las ecuaciones dinámicas de gas linealizadas (ver dinámica de gases para la derivación).
![{\begin{aligned}{\frac {\partial \rho }{\partial t}}+\rho _{0}{\frac {\partial u}{\partial x}}&=0\\[8pt]{\frac {\partial u}{\partial t}}+{\frac {a^{2}}{\rho _{0}}}{\frac {\partial \rho }{\partial x}}&=0\end{aligned}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
donde podemos asumir sin perder la generalidad
. Ahora podemos reescribir las ecuaciones anteriores en una forma conservadora:
:
dónde
![U = \begin{bmatrix} \rho \\ u \end{bmatrix}, \quad A = \begin{bmatrix} 0 & \rho_0 \\ \frac{a^2}{\rho_0} & 0 \end{bmatrix}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
y el índice denota la derivada parcial con respecto a la variable correspondiente (es decir, x o t).
Los valores propios del sistema son las características del sistema
. Dan la velocidad de propagación del medio, incluida la de cualquier discontinuidad, que es la velocidad del sonido aquí. Los vectores propios correspondientes son
![\mathbf{e}^{(1)} = \begin{bmatrix} \rho_0 \\ -a \end{bmatrix}, \quad
\mathbf{e}^{(2)} = \begin{bmatrix} \rho_0 \\ a \end{bmatrix}.](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Descomponiendo el estado izquierdo
en términos de los autovectores, obtenemos para algunos
![U_{L}={\begin{bmatrix}\rho _{L}\\u_{L}\end{bmatrix}}=\alpha _{1}{\mathbf {e}}^{{(1)}}+\alpha _{2}{\mathbf {e}}^{{(2)}}.](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Ahora podemos resolver
y
:
![\begin{align}
\alpha_1 & = \frac{a \rho_L - \rho_0 u_L}{2a\rho_0} \\[8pt]
\alpha_2 & = \frac{a \rho_L + \rho_0 u_L}{2a\rho_0}
\end{align}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Análogamente
![U_{R}={\begin{bmatrix}\rho _{R}\\u_{R}\end{bmatrix}}=\beta _{1}{\mathbf {e}}^{{(1)}}+\beta _{2}{\mathbf {e}}^{{(2)}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
por
![\begin{align}
\beta_1 & = \frac{a \rho_R - \rho_0 u_R}{2a\rho_0} \\[8pt]
\beta_2 & = \frac{a \rho_R + \rho_0 u_R}{2a\rho_0}
\end{align}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Usando esto, en el dominio entre las dos características
, obtenemos la solución constante final:
![U_{*}={\begin{bmatrix}\rho _{*}\\u_{*}\end{bmatrix}}=\beta _{1}{\mathbf {e}}^{{(1)}}+\alpha _{2}{\mathbf {e}}^{{(2)}}=\beta _{1}{\begin{bmatrix}\rho _{0}\\-a\end{bmatrix}}+\alpha _{2}{\begin{bmatrix}\rho _{0}\\a\end{bmatrix}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
y la solución (constante por partes) en todo el dominio
:
![{\displaystyle U(t,x)={\begin{bmatrix}\rho (t,x)\\u(t,x)\end{bmatrix}}={\begin{cases}U_{L},&0<t\leq -x/a\\U_{*},&0\leq |x|/a<t\\U_{R},&0<t\leq x/a\end{cases}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Aunque este es un ejemplo simple, todavía muestra las propiedades básicas. En particular, las características descomponen la solución en tres dominios. La velocidad de propagación de estas dos ecuaciones es equivalente a la velocidad de propagación del sonido.
La característica más rápida define la condición de Courant-Friedrichs-Lewy (CFL), que establece la restricción para el intervalo de tiempo máximo en una simulación por computadora. Generalmente, a medida que se utilizan más ecuaciones de conservación, se involucran más características.