18.S191 | Fall 2022 | Undergraduate

Introduction to Computational Thinking

Calendar

Module 1: Images, Transformations, Abstractions

   1.1 Images as Data and Arrays 
   1.2 Abstraction 
        Homework 1: Images and Arrays 
   1.3 Automatic Differentiation 
   1.4 Transformations with Images 
         Homework 2: Convolutions 
   1.5 Transformations II: Composability, Linearity and Nonlinearity 
   1.6 The Newton Method 
         Homework 3: Structure and language 
   1.7 Dynamic Programming 
   1.8 Seam Carving 
   1.9 Taking Advantage of Structure 
         Homework 4: Dynamic programming

Module 2: Social Science & Data Science

   2.1 Principal Component Analysis 
   2.2 Sampling and Random Variables 
          Homework 5: Structure 
   2.3 Modeling with Stochastic Simulation 
          Homework 6: Probability distributions 
   2.4 Random Variables as Types 
   2.5 Random Walks 
   2.6 Random Walks II 
   2.7 Discrete and Continuous 
         Homework 7: Epidemic modeling I 
   2.8 Linear Model, Data Science, & Simulations 
   2.9 Optimization 
          Homework 8: Epidemic modeling II

Module 3: Climate Science

   3.1 Time stepping 
         Homework 9: Epidemic modeling III 
   3.2 ODEs and parameterized types 
   3.3 Why we can’t predict the weather 
   3.4 Our first climate model 
   3.5 GitHub & Open Source Software 
   3.6 Snowball Earth and hysteresis 
   3.7 Advection and diffusion in 1D 
         Homework 10: Climate modeling I 
   3.8 Resistors, stencils and climate models 
   3.9 Advection and diffusion in 2D 
   3.10 Climate Economics 
   3.11 Solving inverse problems