Official Information | |
---|---|
Course Number: | Mathematics 8023.001 |
Course Title: | Numerical Differential Equations I |
Time: | TR 11:00-12:20 |
Place: | 527 Wachman Hall |
Instructor: | Benjamin Seibold |
Instructor Office: | 518 Wachman Hall |
Instructor Email: | seibold(at)temple.edu |
Office Hours: | TR 12:20-1:30pm |
Official: | Course Syllabus |
Course Textbook: | Randall J. LeVeque, Finite Difference Methods for Ordinary and Partial Differential Equations - Steady State and Time Dependent Problems, SIAM, 2007 |
Further Reading: |
L.C. Evans,
Partial Differential Equations,
Graduate Studies in Mathematics, V. 19, American Mathematical Society, 1998
L.N. Trefethen, Spectral Methods in MATLAB, SIAM, Philadelphia, 2000 Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge University Press, 2002 |
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: | December 9, 2021. |
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. Of particular focus are a qualitative understanding of the considered partial differential equation, high-order time-stepping approaches, fundamentals of finite difference, finite volume, and finite element methods, and important concepts such as stability, convergence, and error analysis. | |
Fundamentals: | Stability, convergence, error analysis, Fourier approaches. |
Methods: | Runge-Kutta, multistep, finite difference, finite volume, finite element methods. |
Problems: | Boundary value problems, Poisson equation and other elliptic problems, advection and transport, diffusion, wave propagation, conservation laws. |
Course Schedule | |
08/24/2021 Lec 1 | I. Fundamental Concepts: ODE IVPs vs. BVPs, Fourier methods for linear PDE IVPs
|
08/26/2021 Lec 2 | Well- and ill-posedness, Laplace/Poisson equation, heat equation, transport/wave equation
|
08/31/2021 Lec 3 | II. Boundary value problems and elliptic equations:
generalized finite difference approach
Read:
Finite difference method
|
09/02/2021 Lec 4 | Finite difference stencils, boundary value problems
Read:
Boundary value problem
|
09/07/2021 Lec 5 | Consistency, convergence, and stability for BVPs
Read:
Spectral radius
|
09/09/2021 Lec 6 | Neumann b.c., 2D Poisson equation
|
09/14/2021 Lec 7 | Deferred correction, advection-diffusion-reaction problems
|
09/16/2021 Lec 8 | Variable coefficient diffusion, anisotropic diffusion
Read:
Anisotropic diffusion
|
09/21/2021 Lec 9 | Singularly perturbed problems, Shishkin meshes
Read:
Singular perturbation
|
09/23/2021 Lec 10 | Finite element method: weak form, spaces
|
09/28/2021 Lec 11 | Finite element method: Galerkin approach, different b.c.
|
09/30/2021 Lec 12 | Finite element method: 2d, meshing, higher order
Read:
Mesh generation
|
10/05/2021 Lec 13 | Meshfree finite difference method
Read:
Meshfree methods
|
10/07/2021 Lec 14 | III. Time-stepping:
Errors, consistency, convergence, stability (zero-,absolute, A-, L-), stiffness
|
10/12/2021 Lec 15 | IV. Parabolic equations:
heat equation, method of lines, stability
Read:
Method of lines
|
10/14/2021 Lec 16 | Accuracy, Lax-equivalence theorem
Read:
Lax equivalence theorem
|
10/19/2021 Lec 17 | Von Neumann stability analysis, boundary conditions
|
10/21/2021 Lec 18 | Multi-dimensional problems
Read:
ADI,
Thomas algorithm
|
10/26/2021 Lec 19 | Finite element method
Read:
Finite element method
|
10/28/2021 Lec 20 | V. Wave propagation:
advection, MOL, Lax-Wendroff, Lax-Friedrichs
Read:
Lax-Wendroff,
Lax-Friedrichs
|
11/02/2021 Lec 21 | Upwind methods, stability analysis
Read:
Upwind
|
11/04/2021 Lec 22 | Modified equation
Read:
Modified equation
|
11/09/2021 Lec 23 | Linear hyperbolic systems, wave equation
Read:
Hyperbolic PDE
|
11/11/2021 Lec 24 | VI. Spectral methods: periodic problems
|
11/16/2021 Lec 25 | Fast Fourier transform
Read:
FFT
|
11/18/2021 Lec 26 | Non-periodic problems
|
11/30/2021 Lec 27 | Applications
|
12/02/2021 Lec 28 | Project presentations
|
12/09/2021 | Final Examination |
Matlab Programs | |
Chapter I: Fundamental concepts | |
mit18086_linpde_fourier.m |
Four linear PDE solved by Fourier series Shows the solution to the IVPs u_t=u_x, u_t=u_xx, u_t=u_xxx, and u_t=u_xxxx, with periodic b.c., computed using Fourier series. The initial condition is given by its Fourier coefficients. In the example a box function is approximated. |
Chapter II: Boundary value problems and elliptic equations | |
mit18086_stencil_stability.m |
Compute stencil approximating a derivative given a set of points and plot
von Neumann growth factor Computes the stencil weights which approximate the n-th derivative for a given set of points. Also plots the von Neumann growth factor of an explicit time step method (with Courant number r), solving the initial value problem u_t = u_nx. Example for third derivative of four points to the left: >> mit18086_stencil_stability(-3:0,3,.1) |
mit18086_poisson.m |
Numerical solution of Poisson equation in 1D, 2D, and 3D Set-up of system matrices using Matlab's kron. |
mit18336_poisson1d_error.m |
Perform numerical error analysis for the Poisson equation A differentiable but oscillatory right hand side is considered. |
Chapter III: Time-stepping | |
ode1.m ode2.m ode3.m ode4.m ode5.m |
Runge-Kutta methods of orders 1,2,3,4, and 5 Initial value problem ODE are solved approximated equidistant time steps. |
Chapter IV: Parabolic equations | |
mit18086_fd_heateqn.m |
Finite differences for the heat equation Solves the heat equation u_t=u_xx with Dirichlet (left) and Neumann (right) boundary conditions. |
temple8023_heateqn2d.m |
Finite differences for the 2D heat equation Solves the heat equation u_t=u_xx+u_yy with homogeneous Dirichlet boundary conditions, and time-stepping with the Crank-Nicolson method. The global error and compute time are provided, allowing for an easy convergence and CPU time scaling study. |
Chapter V: Wave propagation | |
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. |
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 VI: Spectral methods (all codes by Nick Trefethen; website with all codes) | |
cheb.m | |
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 |
Additional Reading Materials | |
| |
Homework Problem Sets | |
| |
Course Projects | |
Project proposals due: August 31, 2021.
Project midterm reports due: October 12, 2021. Project final reports due: December 15, 2021.
|