This page describes the topics covered in class and lists assigned videos for each week. It will be continually updated throughout the course. All video lectures can be found here. Note that for each week after Week 1, optional supplementary video lectures can be found at the bottom of the required videos page.
Week 1 - Introduction to MATLAB
This week will be a brief introduction to MATLAB, including basic programming concepts like loops and conditional statements as well as the use of matrices and vectors.
- Lecture 1: Vectors and Matrices
- Lecture 2: Logic, Loops, and Iterations
- Lecture 3: Plotting and Importing/Exporting Data
Week 2 - Linear Systems and Linear Algebra
This week we will discuss direct solution techniques for systems of equations of the form Ax = b. We will also introduce the notion of computational complexity and talk about how solution techniques scale with the size of the problem.
- Lecture 1: Linear Systems of Equations
- Lecture 2: Gaussian Elimination for Ax = b
- Lecture 3: LU Matrix Decomposition for Ax = b
Week 3 - Iterative Methods for Linear Systems
This week we will discuss iterative solution techniques for systems of equations of the form Ax = b. We will also talk about eigenvalues/eigenvectors and how they relate to stability and convergence.
- Lecture 1: Iterative Methods for Ax = b
- Lecture 2: Eigenvalues and Eigenvectors
- Lecture 3: Eigen-decompositions and Iterations
Week 4 - Curve Fitting
This week, we will discuss how to fit various types of curves to data sets and how to use these fits for extrapolation and interpolation. We will also discuss how to write/use our own functions. Note: the supplementary video on function handles is highly recommended!
- Lecture 1: Least-Square Fitting Methods
- Lecture 2: Polynomial Fits and Splines
- Lecture 3: Data Fitting with Matlab
Week 5 - Optimization
This week we will discuss how to maximize/minimize functions with various types of constraints. Note that the first listed "required video" is actually optional - there won't be any HW or exam questions about this material.
- Lecture 1: Unconstrained Optimization (Derivative-Free Methods) - this is OPTIONAL
- Lecture 2: Unconstrained Optimization (Derivative Methods)
- Lecture 3: Linear Programming and Genetic Algorithms
Week 6 - Numerical Integration and Differentiation
This week we will discuss how to approximate derivatives and integrals numerically. We will also review Taylor series.
- Lecture 1: Numerical Differentiation Methods
- Lecture 2: Higher-Order Accuracy Schemes for Differentiation and Integration
- Lecture 3: Higher-Order Integration Schemes
Week 7 - Differential Equations I
This week we will discuss methods for integrating ordinary differential equations. We will look at both boundary value problems and initial value problems.
- Lecture 1: Ordinary Differential Equations and Time-Stepping
- Lecture 2: Error and Stability of Time-Stepping Schemes
- Lecture 3: General Time-Stepping and Runge-Kutta Schemes
Week 8 - Differential Equations II
This week we will continue our discussion of ordinary differential equations and use the methods we have introduced to solve some interesting examples.
- Lecture 1: Application of Runge-Kutta to the Lorenz Equation
- Lecture 2: Vectorized Time-Step Integrators
- Lecture 3: Application of Runge-Kutta to Chaotic Dynamics and the Double Pendulum
Week 9 - Singular Value Decomposition
In this section we will discuss the SVD and some of its applications.
- Lecture 1: The Singular Value Decomposition
- Lecture 2: Principal Component Analysis (PCA)
- Lecture 3: PCA for Face Recognition
Week 10 - Fast Fourier Transform
In this section we will discuss the FFT and some of its applications.
- Lecture 1: Theory of the Fourier Transform
- Lecture 2: Discrete Fourier Transform (DFT)
- Lecture 3: FFT and Image Compression