Course 8024 - Numerical Differential Equations II - Spring 2022

Official Information
Course Number:Mathematics 8024.001
Course Title:Numerical Differential Equations II
Time:TR 10:30-11:50
Place:527 Wachman Hall
 
Instructor: Benjamin Seibold
Instructor Office:518 Wachman Hall
Instructor Email: seibold(at)temple.edu 
Office Hours:TR 2:00-3:00pm
Official: Course Syllabus
 
Course Textbooks: Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge University Press, 2002
Stanley Osher, Ron Fedkiw, Level Set Methods and Dynamic Implicit Surfaces, Springer, 2002
Jan S. Hesthaven, Tim Warburton, Nodal Discontinuous Galerkin Methods, Springer, 2008
Further Reading: Randall J. LeVeque, Finite Difference Methods for Ordinary and Partial Differential Equations - Steady State and Time Dependent Problems SIAM, 2007
L.C. Evans, Partial Differential Equations, Graduate Studies in Mathematics, V. 19, American Mathematical Society, 1998
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%), a final report (50%), and a final presentation (30%). Due dates are announced in class.
Exams:May 2, 2022.
Outline
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, interface problems, level set method, Hamilton-Jacobi equations, discontinuous Galerkin methods, Stokes problem, Navier-Stokes equation, and pseudospectral approaches for fluid flow. Further topics possible upon request.
Course Schedule
01/18/2022   Lec 1
Review of 8023
01/20/2022   Lec 2
I. Hyperbolic conservation laws: derivation, examples
01/25/2022   Lec 3
Weak solutions, Riemann problem, shocks
   Read: Riemann problem, Shock
01/27/2022   Lec 4
Entropy, finite difference methods for discontinuous solutions
   
02/01/2022   Lec 5
Failure of finite different methods for nonlinear problems
   
02/03/2022   Lec 6
Consistent and conservative finite difference schemes
02/08/2022   Lec 7
Finite volume methods, Godunov's method
   Read: Godunov's method
02/10/2022   Lec 8
Non-convex flux functions
   
02/15/2022   Lec 9
Nonlinear stability theory
02/17/2022   Lec 10
High-order methods
   Read: Godunov's theorem
02/18/2022   Lec 11
Slope and flux limiters
   Read: Flux limiter
02/22/2022   Lec 12
Linear hyperbolic systems
02/24/2022   Lec 13
Nonlinear hyperbolic systems
02/25/2022   Lec 14
Approximate Riemann solvers, higher dimensions
03/08/2022   Lec 15
II. Other approaches for transport: semidiscrete methods, SSP time stepping
   Read: MUSCL scheme
03/10/2022   Lec 16
ENO/WENO, operator splitting
   Read: Strang splitting
03/15/2022   Lec 17
Stiff source terms, staggered grids
   Read: Arakawa grids
03/17/2022   Lec 18
Discontinuous Galerkin methods
03/22/2022   Lec 19
Discontinuous Galerkin methods
03/29/2022   Lec 20
III. Interface problems: Front propagation
   Read: Curve, Surface, Curvature
03/31/2022   Lec 21
Numerical interface representation, level set method
04/01/2022   Lec 22
Hamilton-Jacobi equations, numerical methods
04/05/2022   Lec 23
IV. Fluid flows: Calculus of variations, Stokes problem
04/07/2022   Lec 24
Saddle point problems, staggered grid approaches
04/12/2022   Lec 25
Navier-Stokes equations
04/14/2022   Lec 26
Projection methods, staggered grid methods
   Read: Projection method
04/19/2022   Lec 27
Semispectral methods for the Navier-Stokes equations
   
04/28/2020   Lec 28
Project presentations
   
05/02/2020 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.
Chapter II: Other approaches for transport
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.
dgclaw_compute.m
dgclaw_shallowwater.m
Discontinuous Galerkin method for hyperbolic conservation laws.
Solver file for RKDG method with limiting in characteristic variables (dgclaw_compute.m), with an example of the shallow water equations (dgclaw_shallowwater.m).
Chapter III: 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 IV: Fluid flows
mit18086_navierstokes.m Finite differences for the incompressible Navier-Stokes equations in a 2d 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.
mit18336_spectral_ns2d.m Spectral method for incompressible Navier-Stokes in a periodic 2d box
Solves the incompressible Navier-Stokes equations in a rectangular domain with periodic boundary conditions, using a semispectral method and the fast Fourier transform.
(Code 2008 by Jean-Christophe Nave)
Additional Course Materials
Homework Problem Sets
Course Projects
Project proposals due: January 20, 2022.
Project midterm reports due: March 10, 2022.
Project final reports due: May 3, 2022.
  • Vahid Mahzoon: Higher Order Methods for the GARZ Traffic Model, Especially for the Unstable Regime
  • Madison Shoraka: Cahn-Hilliard Equation
  • Jacob Woods: Constructing Anisotropic Fields Using the Eikonal Equation and its Application to Species Dispersion
  • Nicole Zalewski: Image Denoising via Nonlinear Partial Differential Equations