- Prologue
- Lecture 1 - Getting Started
- Lecture 2 - Basic Operators and Built-In Functions
- Lecture 3 - Basic Data Processing with NumPy and Matplotlib
- Lecture 4 - More on NumPy Arrays: Slicing and `np.linalg`
- Lecture 5 - Algorithms, Flowcharts, and Pseudocode
- Lecture 7 - Conditional Statements and the Structure of Python Code
- Lecture 8 - More on Conditionals
- Lecture 9 - Loops in Python
- Lecture 10 - More on Loops
- Lecture 11 - Pythonic Containers
- Lecture 12 - Processing Text Data
- Lecture 13 - Basics of Functions
- Lecture 14 - More on Functions
- Lecture 15 - Recursive Functions
- Lecture 16 - Algorithm Complexity and Numerical Experiments
- Lecture 17 - Searching
- Lecture 18 - Sorting
- Lecture 19 - Numerical Differentiation
- Lecture 20 - Numerical Integration
- Lecture 21 - Linear Systems
- Lecture 22 - Root Finding
- Lecture 23 - Optimization
- Lecture 24 - Modeling Data with Least Squares Fitting
- Lecture 25 - Modeling Data with Interpolation
- Lecture 26 - Euler’s Method for IVPs
- Lecture 27 - Systems of IVPs
- Lecture 28 - Numerical Solution of BVPs
- Appendix A - Modules and Packages
- Appendix B - Unit Tests and Defensive Programming