Did I get Godunov's scheme right?

67 Views Asked by At

I want to implement Godunov's scheme in order to simulate the nonlinear LWR-type equation $$ \partial_t u + \partial_x (u(1-u)) = 0, \quad u(0, \cdot) = u_0. $$ The update step is ($n$ denotes time step, $j$ spatial step) $$ u^{n+1}_j = u^n_j - \tfrac{\Delta t}{\Delta x}\big(F^n_j - F^n_{j-1}\big). $$ The interesting part is of course the definition of $F$. The way I understand the scheme (from my reading of e.g. LeVeque), the definition $$ F^n_j := \begin{cases} \min \left\lbrace u_j^n(1-u_j^n), u_{j+1}^n(1-u_{j+1}^n) \right\rbrace & u_{j}^n \leq u_{j+1}^n \\ \tfrac{1}{4} & u_{j+1}^n < u_{j}^n \text{ and } u^n_j > \tfrac{1}{2} \\ u_j^n(1-u_j^n) & u_{j+1}^n < u_{j}^n < \tfrac{1}{2} \end{cases} $$ seems adequate.
Can some of you maybe tell me whether I got something wrong or right about this? The initial step $u^0_j$ I set as the average of $u_0$ in that spatial interval.

Thank you!