Instructor: Jon Wilkening
Lectures: MWF 3–4 PM, Dwinelle 109
Office Hours (1051 Evans): Wed 1:30-2:30 PM, Friday 4:15-5:30 PM, plus discussions on EdStem
GSI: Wanzhou Lei, wanzhou_lei@berkeley.edu
GSI office hours (828 Evans): Wed, 9:30-11:30 AM
Prerequisites: I will assume familiarity with undergraduate analysis, linear algebra and numerical analysis; some background from 228A will also be assumed.
Lecture notes: will be posted as I write them
Recommended Reading:
Jon Wilkening, Hand-written lecture notes for Math 128A (numerical analysis) from Fall 2018
Jon Wilkening, Hand-written lecture notes for Math 228A from Fall 2020
K. W. Morton and D. F. Mayers, Numerical solution of partial
differential equations. (*)
Claes Johnson, Numerical Solution of Partial Differential Equations by the Finite Element Method, Dover, 2009.
R. J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge, 2002. (*)
Randall J. LeVeque, Finite difference methods for ordinary and partial differential equations. (*)
John C. Strikwerda, Finite difference schemes and partial differential equations, (2nd edition, SIAM, *)
Dietrich Braess, Finite Elements: Theory, Fast Solvers, and Applications in Solid Mechanics.
Rainer Kress, Linear Integral Equations. (*)
(*) = available digitally through UCB library
Syllabus: The first half of the course will focus on finite difference methods for parabolic and hyperbolic partial differential equations. I will describe von Neumann stability analysis, the CFL condition, and the Lax-Richtmeyer equivalence theorem (consistency + stability = convergence). We will use these tools to analyze several popular schemes (Lax-Wendroff, Lax-Friedrichs, leapfrog, Crank-Nicolson, ADI and the method of lines). Next we will study finite volume methods for hyperbolic conservation laws, finite element methods for elliptic equations (Poisson), mixed finite element methods, and the inf-sup condition. We will conclude with Fourier pseudo-spectral methods, implicit/explicit schemes and exponential time-differencing schemes for the KdV equation, and with boundary integral methods for the Laplace equation with applications in irrotational water waves. Here is a tentative schedule:
Course Material: I will post handouts, lecture notes, assignments and other course material on bCourses. Please e-mail me (wilkening@berkeley.edu) if you do not have access to the bCourses page.
Grading: 100% Homework
Homework: 7 assignments (lowest score dropped, except
when deciding on A+ grades). Problems will involve a mix of
theoretical exercises and programming assignments/mini-projects. I
generally find Matlab is the simplest programming language to use
for this class, so I recommend Matlab unless you are already an
expert programmer in another language such as Python, C++, Julia or
Fortran. Assignments will be submitted to Gradescope on selected
Saturdays by 2 PM Pacific time. Use of AI to solve homework problems
and write code (even starter code) is not allowed. You can use AI as
a study aid to understand general concepts, just not for specific
advice on the homework problems. It's fine to collaborate with
others in the class on homework, but all your solutions and code
should be your own.