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!