Module Overview

Introduction to Ordinary Differential Equations through Python

This module introduces the learner to ordinary differential equations in problems from mathematical physics through scientific Python. The module will build on the learner's prior knowledge of Python to develop a phenomenelogical perspective of mathematical models described by ordinary differential equations.  No prior knowledge of ODEs is required. This module lays the foundation for advanced scientific programming in Python for models described by systems of PDEs.

Module Code

MATH 2812

ECTS Credits


*Curricular information is subject to change

Review of Python programming

Variables, strings, lists, tuples, loops, functions, modules, errors and exceptions.

Effective scientific program design

Sample input and output, user interface, pseudo-code, assessing available modules.

Introduction to object-orentied programming and classes


NumPy library

Array handing, meshes.

SciPy library

Scientific constants, functions, integration.

Verification of codes

Use of Matplotlib to present visualization of solution.

Solving first- and second-order linear equations

Eg. reaction equations, equations of motion, electrical circuits; plotting results.

Nonlinear systems and phenomena and stability

Eg. predator-prey models, nonlinear mechanical models, dynamical systems and chaos.

The module will be delivered through a combination of lectures and tutorials. Learning will be supported through provided sample programs and laboratory sessions.

Module Content & Assessment
Assessment Breakdown %
Formal Examination30
Other Assessment(s)70