Jupyter Notebooks
[UPDATED Oct. 2017]
This course orbits around sets of Jupyter Notebooks (formerly known as IPython Notebooks), created as learning objects, documents, discussion springboards, artifacts for you to engage with the material. They are public, shareable and remixable (the real meaning of "open" on the internet), and they live in the course's GithHub repository.
How to work with the notebooks?
You can interact with the notebooks in a few ways. The simplest (but limited) is to read the notebooks as a webpage, rendered by the nbviewer server—follow the links below and you'll render each notebook.
The best way is to download them, and open them with your local Jupyter Notebook server. If you have a full Python installation, this is launched by typing in the terminal:
jupyter notebook
Read along, like a textbook, and take handwritten notes as you do. Follow the mathematical derivations, and look up things that you are confused with. Then execute the embedded code, play with it, change things and see what happens. Finally, write your own version of the codes, either in your own clean notebook or as a Python script.
List of Notebooks
Module 1—The phugoid model of glider flight.
Screencast
Module 2—Space and time: Introduction to finite difference solutions of PDEs.
Module 3—Riding the wave: convection problems.
Module 4—Spreading out: parabolic PDEs
- Diffusion equation in 1D and boundary conditions
- Implicit schemes in 1D and boundary conditions
- 2D heat (diffusion) equation with explicit scheme
- 2D heat equation with implicit scheme, and applying boundary conditions
- Crank-Nicolson scheme and spatial & time convergence study
- Assignment: Gray-Scott reaction-diffusion problem