List of Algorithms
Candidate algorithms for the topics under CLO 1: Numerical Methods. Each is tagged with how important it is that the course cover it.
Linear Algebraic Equations
- Gaussian elimination [Essential]
- LU decomposition [Essential]
- Cramer’s rule (as an example of a “bad” algorithm with exponential complexity) [Somewhat Desirable]
Nonlinear Algebraic Equations
- Bracketing methods (e.g. bisection) [Essential]
- Fixed-point iteration [Essential]
- Newton’s method [Essential]
- Muller’s method [Somewhat Desirable]
Ordinary Differential Equations (ODEs)
- Euler’s method [Essential]
- Runge-Kutta methods [Essential]
- Adaptive Runge-Kutta (Runge-Kutta-Fehlberg) [Highly Desirable]
- Multistep methods [Somewhat Desirable]
- Shooting method for boundary-value problems [Highly Desirable]
- Finite difference method for boundary-value problems [Highly Desirable]
Numerical Optimization
- Fixed step size gradient descent [Essential]
- Descent with line search [Highly Desirable]
- Newton’s method [Highly Desirable]
- Quasi-Newton, conjugate gradient, etc. [Somewhat Desirable]
- Momentum, Adam, etc. [Highly Desirable]
Regression
- Linear least squares with linear basis functions [Essential]
- Linear least squares with nonlinear basis functions [Highly Desirable]
- Nonlinear regression [Highly Desirable]
- Neural network regression [Highly Desirable]