Home | Syllabus | Schedule | Reader | Canvas | Resources | View on GitHub

Be sure to refresh this page to see the most recent version.

Schedule - Fall 2023

This course follows a Tuesday/Thursday schedule. There is a section for each day, with materials for that day. This schedule is subject to change before a class is held.

Schedule Archives: Fall 2020 Fall 2021 Winter 2022

System Setup

  1. Basic Bash [Video Walkthrough]
  2. Install Anaconda Python [Video Walkthrough]
  3. Install Jupyter notebooks [Video Walkthrough]
  4. Using Python

Day 00 - 9/26

Class Material

  1. Python Basics
  2. Bits, Bytes, and Numbers
  3. Basic Containers and Packages
  4. Python Scripts [Example Script] [Download Example]

Reading

Day 01 - 9/28

Homework

Day 02 - 10/3

Class Material

  1. Decorators
  2. Vectorization, numpy ufuncs, numba
  3. Memory layout

Reading

Day 03 - 10/5

Class Material

  1. Dense Linear Algebra
  2. SciPy BLAS and LAPACK Interfaces
  3. Python Objects, OOP If you don’t have much prior experience with matrix factorizations, it is highly recommended to go through the exercises in the notebook.

Reading

Day 04 - 10/10

Homework

Class Material

  1. Modules and Packages [GitHub repository]
  2. Convergence of Algorithms
  3. Root Finding

Reading

Day 05 - 10/12

Homework

Class Material

  1. Linear operators
  2. Sparse matrix formats, scipy.sparse
  3. Sparse Linear Algebra (We’ll start if there is time)

Reading

Day 06 - 10/17

Class material

  1. Sparse Linear Algebra (Continued)
  2. Differentiation

Reading

Day 07 - 10/19

Homework

Class material

  1. Initial Value Problems
  2. Unit testing
  3. More on Plotting
  4. Sympy

Reading

Day 08 - 10/24

Class material

  1. Interpolation
  2. Integration, Quadrature

Reading

Day 09 - 10/26

Homework

Class material

  1. Condition numbers
  2. Python Iterators and Generators

Reading

Day 10 - 10/31

Homework

Class material

  1. Agent-based modeling
  2. Python Iterators and Generators
  3. Optimization

Reading

Day 11 - 11/02

Homework

Class Material

  1. Optimization

Day 12 - 11/07

Class Material

  1. Pandas
  2. Scikit Learn

Day 13 - 11/09

Homework

Class Material

Cancelled

Day 14 - 11/14

Homework

Class Material

  1. Distances
  2. Nearest Neighbor Queries
  3. Dimensionality Reduction, Plotly
  4. Linear Algebra in PyTorch

Day 15 - 11/16

Homework

Class Material

  1. Basic Neural Networks in PyTorch
  2. Scipy distributions
  3. Monte Carlo Methods

Day 16 - 11/28

Class Material

  1. Fast Multipole Method

Day 17 - 11/30

Homework

Class Material

  1. Fast Fourier Transform (FFT)
  2. Boundary Value Problems

Project

Groups finalized 10/19.

Project proposal due 10/31.

Midterm checkpoint due 11/14.

Final Project report due 12/7.

Finals Period

College reading period is 12/2-12/4