Conservative - AST-Course/AST5110 GitHub Wiki

Conservative

The way to handle properly discontinuous solutions and to converge to the physical solution is to use a numerical scheme written in conservative form.

$$ u^{n+1}j = u^n_j - \frac{\Delta t}{\Delta x}\left(f{j+1/2}-f_{j-1/2}\right) $$

Let's consider Burger's equation with discontinuous initial data

$$ \frac{\partial u}{\partial t} = \frac{\partial (u^2/2)}{\partial x} $$

It can be discretized by the upwind conservative method.

$$ u^{n+1}j = u^n_j - \frac{\Delta t}{\Delta x}\left[\frac{1}{2}(u^n{j})^2-\frac{1}{2}(u^n_{j-1})^2\right] $$

On the other hand, a non-conservative case can be found ex_3. Consequently studying waves, propagation errors in amplitude or phase are often the most worrisome. For advection equations, transport errors are of greater concern.

Another way to address this problem is by defining the variables in a staggered mesh. In fluid dynamics, or plasma models is common to define the variables in a staggered mesh, e.g., Bifrost.