BS6221 Numerical Methods in Python

Summary of co​urse 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)Individual50%
Class Participation​Individual5%
Individual Assignment 1Individual15%
Individual Assignment 2Individual15%
Individual Assignment 3Individual15%
  100%