teaching


Spring 2018: Numerical Methods for Differential Equations

The class on Apr. 24 is moved to Mar. 1, and the class on Jun. 5 is moved to Mar. 15.

Class Information:
Office Hour: by appointment
Office Location: 624 Pao Yue-Kong Library
email: lzhang2012 AT sjtu

TA Office Hour:
TA Office Location: 508 Pao Yue-Kong Library
email: starlit-sky AT sjtu.edu.cn

Homework online: Thursday in even weeks
Homework due: Next Thursday in even weeks in class

Homework: 10%
Project:20%
Quiz: 10%
Final: 60%

Homework: (available before the separator ||)
Homework 1, Homework 2, Homework 3, Homework 4, Homework 5, Homework 6, Homework 7 Homework 8, Homework 9||

Project Topics:
1. The (unfinished) PDE Coffee Table Book by Lloyd N. Trefethen and Kristine Embree
2. MIT Open Course, Mathematical Methods for Engineers II by Gilbert Strang
3. Your research topic

Exams:

Example Code in Julia:
Examples for ODE [View] [Download]
The following two notebooks are adapted from Christoph Ortner's Julia page, updated a little bit in order to run under Julia 0.6.
Finite difference for Laplacian equation [View] [Download]
P1 finite element method [View] [Download]
Finite difference methods for advection equation[View] [Download]


References:
Textbook:
A First Course in the Numerical Analysis of Differential Equations by Arieh Iserles
Finite Difference Methods for Ordinary and Partial Differential Equations by Randy LeVeque

Other References:
Endre Süli's notes by Endre Süli

Hairer's lectures on geometric integration: http://www.unige.ch/~hairer/poly_geoint/week1.pdf, http://www.unige.ch/~hairer/poly_geoint/week2.pdf
Vilmart's animation for symplectic integrator: http://www.unige.ch/~vilmart/java.html

Using Julia:
Julia official website: docs, examples, downloads, ...
Install Julia: Look at the part "Installing Julia and IJulia"
Juno: the interactive development environment for Julia
Numeric matrix manipulation: The cheat sheet for MATLAB, Python NumPy, R, and Julia
Noteworthy differences from MATLAB


Using GSL Library
GNU Scientific Library:
GSL is written for Linux, 5 Ways to Run Linux Software on Windows, ortherwise, maybe you can figure out how to use GSL for Windows
 How to compile & execute C programs under Linux (Absolute basics)
How to Debug C Program using gdb in 6 Simple Steps
Debugging Memory Problems with Valgrind (Advanced)
Unix tutorial for beginners