Math C42H 3042: Exercise Sheet 1
- The shallow water equations can be reduced to
where d=d(x,t) is the water depth and v=v(x,t) is the horizontal (x) fluid velocity. Derive a linear system by assuming that d(x,t)=d0 + eps d1(x,t), v(x,t)=v0 + eps v1(x,t) with eps << 1 and d0 and v0 are constant and neglecting terms less than O(eps). Show the system is strictly hyperbolic. Find the exact solution that evolves from the initial datad10(x) = 0 for |x| > X,
d10(x) = 1 for |x| < X
v10(x) = 0 for all x
- The exact solution of ut + a ux = 0 satisfies u(xj,tn+1)=u(xj-ak,tn) where tn+1=tn+k. Show that the first-order upwinding, Lax-Friedrichs, Lax-Wendroff and Beam-Warming schemes can be derived by fitting suitable interpolation polynomials to a subset of {Un} about xj and tracing characteristics back from (xj,tn+1).
- Use a direct 1-norm stability argument to find a sufficient stability condition for the scalar Lax-Friedrichs scheme. Compare this with the CFL condition for the scheme. Comment on the stability of Lax-Friedrichs schemes for linear systems.
- Determine the LTE of the scalar upwind, Lax-Wendroff and Beam-Warming schemes. Comment on the necessary smoothness of the exact solution in each case.
- Perform convergence and relative error numerical experiments on the first order upwinding, Lax-Friedrichs, Lax-Wendroff and Beam-Warming schemes for the scalar advection equation. Use the example matlab codes as the basis for these experiments. Compare the 1-, 2- and infinity-norm of the numerical solution error at a given fixed time, T for various values h with Courant number, v, constant and for various v with h constant. Repeat the experiments with discontinuous data.
- Use von Neumann stability analysis to find the stability restrictions of Lax-Friedrichs and Beam-Warming schemes.
- Use von Neumann stability analysis to find a stability restriction for the explicit scheme
Un+1j = Unj + kD( Unj+1 - 2 Unj + Unj-1 )/h2
for the heat equation ut = D uxx.
- Find the numerical solution to Q.1 using both Lax-Wendroff and symmetrized (first order) upwinding and Beam-Warming schemes. Take d0=1, v0=0.5 and X=0.05.
- What happens if you choose v = ak/h = 1 for scalar upwinding, Lax-Friedrichs or Lax-Wendroff schemes? (Note that this ``exact'' behaviour is unstable due to round-off errors and does not apply to systems or non-linear equations.)