About Course
This Scientific Computing course will provide an introduction to the use of computers in solving problems arising in the physical, biological, and engineering sciences.
Various computational approaches commonly used to solve mathematical problems (including systems of linear equations, optimization, curve fitting, integration, and differential equations) will be presented. Both the theory and application of each numerical method will be demonstrated.
You should gain mathematical judgment in selecting tools to solve scientific problems through inclass examples and programming homework assignments.
MATLAB will be used as the primary environment for numerical computation. No previous coding experience is required; an overview of MATLAB’s syntax, code structure, and algorithms will be given.
Although the subject matter of scientific computing has many aspects that can be made rather difficult, the material in this course is meant to be an introduction and will therefore be presented in as simple a way as possible. Theoretical aspects will be mentioned throughout the course, but more complicated issues such as rigorous proofs will not be presented. Applications will be emphasized.
Course Content
Scientific Computing

Lecture: Higherorder Integration Schemes
00:00 
Lecture: Ordinary Differential Equations and Timestepping
00:00 
Lecture: Data Fitting with Matlab
00:00 
Lecture: Linear Programming and Genetic Algorithms
00:00 
Lecture: Numerical Differentiation Methods
00:00 
Lecture: Eigenvalues and Eigenvectors
00:00 
Lecture: Unconstrained Optimization (Derivative Methods)
00:00 
Lecture: Iteration Methods for Axb
00:00 
Lecture: LU Matrix Decomposition for Ax=b
00:00 
Lecture: Gaussian Elimination for Ax=b
00:00 
Supplement: Using ODE45 & RungeKutta methods
00:00 
Lecture: PCA for Face Recognition
00:00 
Lecture: Eigendecompositions and Iterations
00:00 
Lecture: LeastSquares Fitting Methods
00:00 
Lecture: Polynomial Fits and Splines
00:00 
Lecture: Higherorder Accuracy Schemes for Differentiation and Integration
00:00 
Lecture: Unconstrained Optimization (DerivativeFree Methods)
00:00 
Lecture: Error and Stability of Timestepping Schemes
00:00 
Lecture: FFT and Image Compression
00:00 
Lecture: General Timestepping and RungeKutta Schemes
00:00 
Lecture: Theory of the Fourier Transform
00:00 
Lecture: Discrete Fourier Transform (DFT) and the Fast Fourier Transform (FFT)
00:00 
Lecture: The Singular Value Decomposition (SVD)
00:00 
Lecture: Principal Componenet Analysis (PCA)
00:00 
Supplement: Big systems of ODEs
00:00 
Supplement: Indexing equations
00:00 
Supplement: Discrete Fourier Transform
00:00 
Supplement: Mean Value Theorem
00:00 
Lecture: Application of RungeKutta to Lorenz Equation
00:00 
Lecture: Vectorized Timestep Integrators
00:00 
Lecture: Application of RungeKutta to Chaotic Dynamics and the Double Pendulum
00:00 
Supplement: Vector fields and phaseplanes
00:00 
Lecture: Vectors & Matrices
00:00 
Lecture: Logic, Loops, and Iterations
00:00 
Lecture: Vectors & Matrices
00:00 
Lecture: Linear Systems of Equations
00:00