BS6221 Numerical Methods in Python
Summary of course content
This course aims to equip you with the practical skills and theoretical understanding needed to apply numerical methods using Python to solve complex engineering and scientific problems. Designed for students, it provides a hands-on approach to numerical techniques such as root-finding, interpolation, numerical integration, and differential equations. By the end of the course, you will strengthen your programming proficiency, also develop the ability to analyse and implement efficient computational solutions.
Syllabus
1. Introduction to Numerical Methods
- Overview and applications of numerical methods in science and engineering
2. Linear Algebra Basics
- Vectors, matrices, and operations (addition, multiplication)
- Linear transformations and their geometric interpretations
3. Solving Systems of Linear Equations
- Gaussian elimination and LU decomposition
- Methods for solving systems of linear equations
4. Matrix Inversion
- Mathematical foundations of matrix inversion
- Techniques for computing matrix inverses
5. Eigenvalues and Eigenvectors
- Power Method and QR Method for computing eigenvalues
- Understanding and calculating eigenvalues and eigenvectors
6. Least Squares Regression – Linear Models
- Linear regression derivation using Linear Algebra and Multivariable Calculus
- Applying least squares regression to fit data
7. Least Squares Regression – Nonlinear Models
- Curve fitting for nonlinear functions
- Extending regression methods to handle nonlinear relationships
8. Interpolation
- Linear, cubic spline, Lagrange, and Newton interpolation
- Techniques for estimating values between known data points
9. Series Approximations and Error Analysis
- Expressing and approximating functions using Taylor series
- Analyzing errors and understanding the accuracy of approximations
10. Root Finding Algorithms
- Bisection Method and Newton-Raphson Method
- Techniques for locating roots of equations
11. Numerical Differentiation
- Finite difference methods for first and higher-order derivatives
- Approximating derivatives and handling noisy data
12. Numerical Integration
- Riemann’s sum, Trapezoid Rule, and Simpson’s Rule
- Methods for approximating definite integrals
13. Ordinary Differential Equations (ODEs)
- Initial-value and boundary-value problems
- Numerical techniques for solving differential equations
14. Fourier Transforms
- Discrete Fourier Transform (DFT) and Fast Fourier Transform (FFT)
- Analyzing periodic functions and transforming signals
15. Student Presentation and Project
- Presenting a real-world application of a numerical method
Assessment
| Test/Quiz (MCQ) | Individual | 50% |
| Class Participation | Individual | 5% |
| Individual Assignment 1 | Individual | 15% |
| Individual Assignment 2 | Individual | 15% |
| Individual Assignment 3 | Individual | 15% |
| 100% |