Contents | Chosen scheme | Discretisation | Operators |
The numerical model used to program the resolution of the Burgers' equation is a generalised Crank-Nicholson scheme.
The model is obtained by the discretization of the conservative formulation of the Burger's viscous equation: .
This discretization includes a mass operator for the term depending on the time and a four point upwind discretization of the convective term.
With the equation and the different operators, we obtain the following discretisation:
(3)
which can be written in:
(4)
Matrix formulation
The matrix formulation of the discretisation is:
for u positive:
(5)
for u negative:
(6)
Boundary conditions
The discretisation introduces problems at the boundaries of the domain, when j = 1, 2 or j = k-1, k (limit of the points). The new discretisation in the limits depends on the type of boundary conditions, rigid or free.
The rigid conditions impose the value of u at the extremities of the domain. The solution does not depend on the values outside the domain, so the new scheme is written:
for j = 1,2
for j = k-1,k
The free conditions impose that the flux at the extremities is null. We can then introduce four fictive cells at the extremities of the domain (two for each side), so the new scheme at the limits is:
for j = 1,2
for j = k-1,k
Precision
The truncation error for the scheme (4) is of the form of O(dt^{2},dx^{2}). This proves that the scheme is a dispersive one, when the viscosity is very small. This point will be discussed in the section “Scheme comparison”.
Parameters q and delta
The rule of the parameters q and delta is to generate specific schemes from the generalised discretisation and they establish the stability conditions for the scheme.
The solutions are stable when .
Different values of delta and q conduce to different schemes:
delta |
q |
scheme |
---|---|---|
0 |
0 |
CN finite differences |
0.1667 |
0 |
CN finite elements |
0.12 |
0 |
CN mass operator |
0 |
0.5 |
CN 4 points upwind |
The last rule of the parameters is to reduce the dispersive oscillation and therefore to construct low-dispersion schemes.
To write the numerical scheme, the following operators were needed: mass operator, four point upwind discretisation operator and the operator for the viscous term. This section details the definition of each operator.
Mass operator:
This operator is a tridiagonal matrix.
4-points upwind discretisation
This operator depends on the sign of u.
These two operators conduct to a pentadiagonal matrix.
viscous term
(tridiagonal matrix)