Lecture Notes

Here is a list of lecture notes and projects used mainly for the course Math 226: Computational PDEs in UC Irvine. I try to strike a good balance between mathematical theory and programming skill. Welcome to send me your comments (e.g. typos, mistakes, notation inconsistence, suggestion, and even complains) on the lecture notes.

Basic Numerical Methods

  1. Introduction
  2. Finite Difference Methods
  3. Programming of Finite Difference Methods
  4. Project: Finite Difference Method.
  5. Finite Volume Methods

Numerical Analysis

  1. Inf-sup Conditions
  2. Unified Error Analysis

Finite Element Methods

  1. Sobolev Spaces
  2. Finite Element Methods
  3. Programming of Finite Element Methods
  4. Project: Finite Element Method.
  5. Adaptive Finite Element Methods

Iterative Methods

  1. Conjugate Gradient Methods
  2. Classical Iterative Methods
  3. Subspace Correction and Auxiliary Space Methods

Multigrid Methods

  1. Multigrid Methods
  2. Programming of Multigrid Methods
  3. Project: Multigrid Methods.
  4. Recrusive Proofs of Multigrid Methods

Multilevel Algorithms

  1. Quick sort and Merge sort
  2. FFT (Fast Fourier Transform)
  3. Fast Multipole Methods
  4. Project: Fast Multipole Methods.

Nonlinear Equations

  1. Nonlinear Elliptic PDE
  2. Project: Nolinear Poisson-Boltzmann Equations.

Parabolic Equations

  1. Numerical Methods for Parabolic Equations
  2. Project: Heat Equations.

Numerical methods in CFD

  1. Brief introduction to Navier-Stokes equation
  2. Finite element method for Stokes equations
  3. MAC scheme for Stokes equations
  4. Project: MAC scheme for Stokes Equations.
  5. Multigrid for Stokes equations

Numerical methods in Electromagnetism

  1. Brief Introduction on Maxwell's Equations
  2. Finite Element Methods for Maxwell's Equations
  3. Multigrid for H(curl) and H(div) Problems
  4. Project: Edge Element for Maxwell Equations