Course 8024 - Numerical Differential Equations II - Spring 2017

Official Information
Course Number:Mathematics 8024.001
Course Title:Numerical Differential Equations II
Time:TR 11:00-12:20
Place:527 Wachman Hall
Instructor: Benjamin Seibold
Instructor Office:518 Wachman Hall
Instructor Email: seibold(at) 
Office Hours:T 12:20-13:30, R 10:00-11:00
Official: Course Syllabus
Course Textbook: There is no single textbook for the course. The material is inspired by the following resources (in decreasing order of relevance):
Grading Policy
The final grade consists of three parts, each counting 33.3%:
Homework Problems:Each homework assignment will be worked on for two weeks.
Course project:From the third until the second to last week, each participant works on a course project. Students can/should suggest projects themselves. The instructor is quite flexible with project topics as long as they are new, interesting, and relate to the topics of this course. The project grade involves a midterm report (20%) and a final report (50%), and a final presentation (30%). Due dates are announced in class.
This course is designed for graduate students of all areas who are interested in numerical methods for differential equations, with focus on a rigorous mathematical basis. Many modern and efficient approaches are presented, after fundamentals of numerical approximation are established. This course continues last semester's 8023. Topics covered include nonlinear hyperbolic conservation laws, finite volume methods, ENO/WENO, SSP Runge-Kutta schemes, wave equations, spectral methods, interface problems, level set method, Hamilton-Jacobi equations, Stokes problem, Navier-Stokes equation, and pseudospectral approaches for fluid flow. Further topics possible upon request.
Course Schedule
01/17/2017   Lec 1
Review of 8023
01/19/2017   Lec 2
I. Hyperbolic conservation laws: derivation, examples, weak solutions
01/24/2017   Lec 3
Riemann problem, shocks, entropy solution
   Read: Riemann problem, Shock
01/26/2017   Lec 4
Finite difference methods for discontinuous solutions
01/31/2017   Lec 5
Failure of finite different methods for nonlinear problems
02/02/2017   Lec 6
Consistent finite difference schemes, finite volume methods
02/07/2017   Lec 7
Godunov's methods, non-convex flux functions
   Read: Godunov's method
02/14/2017   Lec 8
Nonlinear stability theory
02/16/2017   Lec 9
High-order methods, limiters
02/17/2017   Lec 10
Linear hyperbolic systems
02/21/2017   Lec 11
Nonlinear hyperbolic systems, approximate Riemann solvers
02/23/2017   Lec 12
Higher dimensions, semidiscrete methods
02/24/2017   Lec 13
SSP time stepping, ENO/WENO
03/07/2017   Lec 14
Operator splitting, stiff source terms, staggered grids
03/09/2017   Lec 15
II. Interface problems: Front propagation
   Read: Curve, Surface, Curvature
03/21/2017   Lec 16
Numerical interface representation
03/23/2017   Lec 17
Hamilton-Jacobi equations
03/24/2017   Lec 18
Numerical schemes for HJ equations
03/30/2017   Lec 19
III. Spectral methods: periodic problems
04/04/2017   Lec 20
Fast Fourier transform
   Read: FFT
04/06/2017   Lec 21
Non-periodic problems
04/07/2017   Lec 22
04/11/2017   Lec 23
IV. Fluid flows: Calculus of variations, Stokes problem
04/13/2017   Lec 24
Saddle point problems, staggered grid approaches
04/14/2017   Lec 25
Navier-Stokes equations
04/18/2017   Lec 26
Semispectral methods for the Navier-Stokes equations
04/25/2017   Lec 27
Project presentations
04/27/2017   Lec 28
Project presentations
05/08/2017 Final Examination
Matlab Programs
Chapter I: Hyperbolic conservation laws
mit18086_fd_transport_growth.m Finite differences for the one-way wave equation, additionally plots von Neumann growth factor
Approximates solution to u_t=u_x, which is a pulse travelling to the left. The methods of choice are upwind, downwind, centered, Lax-Friedrichs, Lax-Wendroff, and Crank-Nicolson. For each method, the corresponding growth factor for von Neumann stability analysis is shown.
mit18086_fd_transport_limiter.m Nonlinear finite differences for the one-way wave equation with discontinuous initial conditions
Solves u_t+cu_x=0 by finite difference methods. Of interest are discontinuous initial conditions. The methods of choice are upwind, Lax-Friedrichs and Lax-Wendroff as linear methods, and as a nonlinear method Lax-Wendroff-upwind with van Leer and Superbee flux limiter.
temple8024_godunov_shallow_water.m Godunov's method for the shallow water equations
Godunov's method for the shallow water equations, using an approximate Riemann solver with Roe averaging. No entropy fix is implemented.
temple8024_weno_claw.m WENO finite volume code for one-dimensional scalar conservation laws
Solves u_t+f(u)_x = 0 by a semidiscrete approach, in which 5th order WENO is used for the reconstruction of the Riemann states at cell boundaries, and the 3rd order SSP Shu-Osher scheme is used for the time stepping.
mit18086_fd_waveeqn.m Finite differences for the wave equation
Solves the wave equation u_tt=u_xx by the Leapfrog method. The example has a fixed end on the left, and a loose end on the right.
Chapter II: Interface problems
mit18086_levelset_front.m Level set method for front propagation under a given front velocity field
First order accurate level set method with reinitialization to compute the movement of fronts in normal direction under a given velocity.
Chapter III: Spectral methods (all direct links to Nick Trefethen's codes)
p4.m Periodic spectral differentiation using matrices
p5.m Periodic spectral differentiation using FFT
p13.m Solving a linear BVP
p14.m Solving a nonlinear BVP
p15.m Solving an eigenvalue problem
p16.m Solving the 2D Poisson equation
p17.m Solving the 2D Helmholtz equation
Chapter IV: Fluid flows
mit18086_navierstokes.m Finite differences for the incompressible Navier-Stokes equations in a box
Solves the incompressible Navier-Stokes equations in a rectangular domain with prescribed velocities along the boundary. The standard setup solves a lid driven cavity problem.
This Matlab code is compact and fast, and can be modified for more general fluid computations. You can download a Documentation for the program.
Homework Problem Sets
Course Projects
Project proposals due: January 31, 2017.
Project midterm reports due: March 23, 2017.
Project final reports due: May 1, 2017.
  • Fawzi Belguet: A thin fluid layer flowing down an incline
  • Abhijit Biswas: Numerical methods for moment models for radiative transfer
  • Joshua Finkelstein: Splitting techniques and numerical schemes for the Langevin equation
  • Stephan Grein: Numerical weather prediction: Solving the barotropic potential vorticity equation with Matlab
  • Amit Harel: Semi-Lagrangian methods for Hamilton-Jacobi equations
  • Zhi Li: Solving diffusion equations using the finite element method
  • Rabie Ramadan: Evolution of traffic density on highways with moving bottlenecks via finite volume methods
  • Najhem Salehi: Application of Godunov's scheme to traffic flow on networks