Instructor: Jon Wilkening
Lectures: TuTh 9:30-11:00, Room 3111 Etcheverry
Course Control Number: 54512
Office: 1091 Evans
Office Hours: Monday 10:30-11:55 AM, Tues 3:45-5:00 PM
Prerequisites: Math 128A or equivalent knowledge of basic numerical analysis. Some programming experience (e.g. Matlab, Fortran, C, or C++)
Jon Wilkening, Lecture Notes for Math 228A,B
Randall J. LeVeque, Finite Difference Methods for Ordinary and Partial Differential Equations
Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems
John C. Strikwerda, Finite difference schemes and partial differential equations
Dietrich Braess, Finite Elements: Theory, Fast Solvers, and Applications in Solid Mechanics
Rainer Kress, Linear Integral Equations, 2nd Edition
Syllabus: The first half of the course will focus on finite difference methods for parabolic and hyperbolic PDE. I will describe von Neumann stability analysis, CFL conditions, the Lax-Richtmeyer equivalence theorem (consistency + stability = convergence), dissipation and dispersion. We will use these tools to analyze several popular schemes (Lax-Wendroff, Lax-Friedrichs, leapfrog, Crank-Nicolson, ADI, implicit-explicit methods, exponential time-differencing schemes.) The second half of the course will focus on finite volume methods for hyperbolic conservation laws, finite element methods for elliptic equations (Poisson, Lamé, Stokes), and boundary integral methods for the irrotational water wave.
Course Webpage: I will post handouts and assignments on B-Space. Please e-mail me if you do not have access to the B-Space page.
Grading: Grades will be based entirely on homework.
Homework: 8 assignments containing a mixture of theoretical
questions and coding projects to implement the schemes we discuss in
class. Any programming language is OK as long as you write the codes
yourselves. (Matlab, C, C++, Fortran, Mathematica, Python, etc)