Desarrollo de la práctica

Considera el programa bugod.f que integra la ecuación de Burgers (ver práctica 2) usando el método de Godunov (primer orden).

  1. Haz un diagrama de flujo del programa

  2. Algoritmo de segundo orden espacial. Programa una subrutina que

  3. Algoritmo de segundo orden temporal. El algoritmo básico del avance temporal es el del esquema explícito conservativo de primer orden (ver práctica 2)


    \begin{displaymath}
u^{n+1}_j = u^n_j - \frac{\Delta t}{\Delta x} (\hat{f}_{j+1/2}
- \hat{f}_{j-1/2})      (\equiv u^n_j + \Delta t L(u^n)).
\end{displaymath}

    Implementa el siguiente algoritmo de Runge-Kutta en el avance temporal de bugod.f para conseguir segundo orden de precisión temporal:


    \begin{displaymath}
u^{n+1/2}_j = u^n_j + \Delta t L(u^n)
\end{displaymath}


    \begin{displaymath}
u^{n+1}_j = \frac{1}{2} u^n_j + \frac{1}{2} u^{n+1/2}_j +
\frac{1}{2} \Delta t L(u^{n+1/2})
\end{displaymath}

  4. Utiliza el programa para integrar la ecuación de Burgers con dato inicial $u_0(x) = \sin(2\pi x)$ en el intervalo $[0,1]$. Puedes usar gnuplot (ver práctica 1) para visualizar los resultados.