Day 1

  • Functions.
  • Matplotlib
  • Flow Control
  • Arrays
  • Loops

Day 2

  • Accuracy and precision
  • Approximating Reality
  • Root Finding
  • Optimizing multi-dimensional functions

Day 3

  • Differentiation and Integration
  • Integration methods, scipy and numpy
  • np.meshgrid
  • Discretization
  • Grids, Numerical accuracy of integrators

Day 4

  • Discretization pt. 2
  • Eulers Method
  • Other ODE solvers (RK4)
  • Boundary Value Problems
  • SciPy Functions
  • Euler Solvers, Pendulums,

Day 5

  • Matrix approach to BVP
  • Partial Differential Equations
  • Parabolic Equations
  • Elliptic Equations
  • Temperature problems, Heat Diffusion, Potential over a grid, Laplace equation

Day 6

  • Wave Equations
  • Two dimensions, surface plots
  • Complex Numbers
  • Time-Dependent Schrodinger Eq.
  • Jacobi Method, Gauss-Seidel Method, Simple Overrelaxation method

Day 7

  • Interactions Between Particles
  • Small particles
    • Verlet integration scheme
    • Simulation Cells
  • Lennard-Jones potential
  • Inverse Quadratic interactions
  • Coarse Graining
  • Periodic boundary conditions

Day 8

  • Psuedo-random generation
  • Probability Distributions
    • Central Limit Theorem
    • Transformation Method
    • Rejection Method
  • Monte-Carlo method
  • Monte-Carlo simulations
    • Simulated Annealing
  • np.where

Day

  • Interpolation
  • Fourier Transforms
  • np.fft.fft / ifft