ACM20030 Computational Science

Academic Year 2022/2023

Most problems in Applied Mathematics are modelled using a set of equations that can be written down but cannot be solved analytically. In this module we examine numerical methods that can be used to solve such problems with a computer. Practical computer lab sessions will cover the implementation of these methods using mathematical software (Python). No previous knowledge of computing is assumed.

Topics and techniques discussed include but are not limited to the following list:

- The programming environment: installing and running Python, version control with Git
- Introduction to programming: functions, loops, logical statements, arrays, floating-point arithmetic, data storage, debugging code, documentation
- Visualising results and datasets: plotting using Matplotlib and other visualisation software
- Interpolation: Lagrange polynomials, Newton's divided-difference. Linear least squares
- Root-finding for single-variable functions: Bracketing and Bisection, Newton–Raphson method. Error and reliability analyses for the Newton–Raphson method.
- Solving ordinary differential equations (ODEs): Euler Method, Runge–Kutta method. Shooting methods. Error analysis.
- Numerical integration: Midpoint, Trapezoidal and Simpson methods. Error analysis.
- Matrices: condition numbers, inversion

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

On completion of this module students should be able to

- Run Python code via interactive Jupyter notebooks
- Use version control software
- Write simple programs involving input/output, plotting, loops, conditionals and functions
- Describe and implement different methods for interpolation.
- Describe and implement elementary root-finding procedures.
- Solve ODEs numerically using standard algorithms, analyse their accuracy and stability, and implement them numerically.
- Describe elementary numerical integration integration schemes, analyse their accuracy, and implement them.
- Describe elementary numerical algorithms for computing properties of matrices

Student Effort Hours: 
Student Effort Type Hours


Computer Aided Lab


Specified Learning Activities


Autonomous Student Learning




Approaches to Teaching and Learning:
Lectures, tutorials, enquiry and problem-based learning 
Requirements, Exclusions and Recommendations
Learning Recommendations:

Students are recommended to have successfully completed level one courses in calculus and algebra, along the lines of the following module pairs:

1. MATH10300 - Calculus in the Mathematical Sciences and MATH10270 - Linear Algebra in the Mathematical Sciences

2. MATH10330 - Calculus in the Phy Sciences and MATH10280 - Linear Algebra in the Physical Sciences

Module Requisites and Incompatibles
Not applicable to this module.
Assessment Strategy  
Description Timing Open Book Exam Component Scale Must Pass Component % of Final Grade
Examination: end of trimester exam 2 hour End of Trimester Exam No Standard conversion grade scale 40% No


Continuous Assessment: over the trimester assignments and coding assessments Varies over the Trimester n/a Standard conversion grade scale 40% No


Carry forward of passed components
Resit In Terminal Exam
Spring Yes - 2 Hour
Please see Student Jargon Buster for more information about remediation types and timing. 
Feedback Strategy/Strategies

• Group/class feedback, post-assessment

How will my Feedback be Delivered?

Not yet recorded.

Name Role
Mr Kevin Cunningham Tutor
Mr Chris Devitt Tutor
Mr Kevin Kiely Tutor
Ms Tatjana Kokina Tutor
Timetabling information is displayed only for guidance purposes, relates to the current Academic Year only and is subject to change.
Lecture Offering 1 Week(s) - Autumn: All Weeks Mon 17:00 - 17:50
Lecture Offering 1 Week(s) - Autumn: All Weeks Wed 13:00 - 13:50
Computer Aided Lab Offering 1 Week(s) - Autumn: All Weeks Fri 15:00 - 15:50
Computer Aided Lab Offering 1 Week(s) - Autumn: All Weeks Mon 11:00 - 11:50
Computer Aided Lab Offering 2 Week(s) - Autumn: All Weeks Fri 10:00 - 10:50
Computer Aided Lab Offering 2 Week(s) - Autumn: All Weeks Tues 13:00 - 13:50