- Introduction to Computational PDEs by de Sterck, Ullrich. link to pdf

- Finite Difference Methods for Ordinary and Partial Differential Equations: Steady-State and Time-Dependent Problems, by LaVeque SIAM
- Numerical Solution of Partial Differential Equations, by Morton and Mayers Cambridge

- Finite Volume Methods for Hyperbolic Problems, by LeVeque SIAM

- Theory, Fast Solvers, and Applications in Solid Mechanics, by BraessCambridge
- The Mathematical Theory of Finite Element Methods, Third edition, by Brenner and Scott Springer
- Numerical Solution of Partial Differential Equations by the Finite Element Method, by JohnsonDover
- The FEniCS Book, Automated Solution of Differential Equations by the Finite Element Method, eds. Logg, Mardal, and Wells link to pdf

- Python tutorial (https://docs.python.org/3/tutorial/index.html)
- Facts and myths about Python names and values (http://nedbatchelder.com/text/names.html)
- Dive into Python 3 (http://www.diveinto.org/python3/)
- Project Euler (https://projecteuler.net/problems) (Lots of practice problems)
- Introduction to Python for Science (https://github.com/djpine/pyman)
- The SciPy lectures (http://scipylectures.github.io/)
- The Numpy MedKit (http://mentat.za.net/numpy/numpy_advanced_slides/)
- The Numpy User Guide (http://web.mit.edu/dvp/Public/numpybook.pdf) by Travis Oliphant
- Numpy/Scipy documentation (http://docs.scipy.org/doc/)
- More in this reddit thread (http://www.reddit.com/r/Python/comments/1lgxbf/best_tutorial_to_learn_numpy/)
- Spyder (https://github.com/spyderide/spyder) (a Python IDE, like Matlab)
- An introduction to Numpy and SciPy (http://www.engr.ucsb.edu/~shell/che210d/numpy.pdf)
- 100 Numpy exercises (http://www.loria.fr/~rougier/teaching/numpy.100/index.html)

**Course Description:**
This course covers the basics of finite difference schemes, finite volume schemes, and finite element
methods. Additional topics (e.g. a posteriori error estimation, discontinuous Galerkin methods, etc) may be covered based on student interest and time constraints.You do not need to be an expert in PDEs or in coding. But you should have a course in numerical analysis
as your background, be comfortable with differential equations, and have some coding experience. We'll be covering numerical methods for parabolic, hyperbolic and elliptic equations. We'll discuss the mathematical background of the numerical methods as well as its implementation.

** Computation **

**Grading:**

45% Homework

45% Projects

10% Participation

**Homeworks:**

Homework 0

Homework 1 Due: September 13

Update 1: Sept 2nd. Added domain for Problem 1. Added a bonus problem.
Solution Code

Homework 2 Due: ~~September 27~~ September 29

Update 1: Sept 20th. Fixed missing negative sign on RHS in Problem 5.

Update 2: Sept 26th. Due Date changed to Sept 29.
parabolic_non_linear.py
cn_2d_neumann.py

Homework 3 Due: October 11

Update 1: Oct 6th. Fixed sign issue in problem 3, equation numbered 2.
hw3_fd
hw3_fv

Homework 4 Due: November 3

Homework 5 Due: November 24
elements.dat
vertices.dat
dom.xml
dom_physical_region.xml

**Projects:**

Midtem Project Due: November 8. You can work in groups of 2.
Addendum

Final Project Due: December 13. You can work in groups of 2.

1D FEM 1D FEM in Dolfin 1D FEM mesh (needed for Dolfin example)

**Handwritted and probably illegible notes:**
1-3
4-6
FEM-1
FEM-2

Time | Title | Presenter(s) |
---|---|---|

12:30 | Stokes Flow through a Backward Facing Step | Robert Malakhov |

12:45 | Adjoint Based Error Estimation and Mesh Refinement | Juan Diego Colmenares Fernandez |

1:00 | Using proper orthogonal decomposition to obtain solution from a parametrized partial differential equation | Joel Upston |

1:15 | Comparison of Least Squares and Mixed Method for Stationary 2D Convection-Diffusion Equation | Shu Wang and Anastassiya Semenova |

1:30 | Clement's Interpolation | Adam Frederickson |

1:45 | Hermite interpolation method on the overset grids | Oleksii Beznosov |

2:00 | Petro-Galerkin 3-Dimensional Burgers Equation | Brad Philipbar |