NUMERICAL METHODS & APPLIED PROGRAMMING - 2024/5

Module code: ENG2124

Module Overview

Engineers frequently have to solve engineering problems which are mathematically intractable by approximate numerical methods, normally using software involving some degree of programming. The module introduces the use of mathematical methods to solve complex engineering problems with appropriate IT tools, including Matlab. An introduction to the general, open programming language Python is also given and then applied to the solution of engineering problems.

Module provider

Mechanical Engineering Sciences

Module Leader

MARXEN Olaf (Mech Eng Sci)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 5

Module cap (Maximum number of students): N/A

Overall student workload

Independent Learning Hours: 80

Lecture Hours: 20

Tutorial Hours: 11

Guided Learning: 19

Captured Content: 20

Module Availability

Semester 2

Prerequisites / Co-requisites

N/A

Module content

Indicative content includes:

Numerical Methods:


  • Computer representation of numbers, rounding errors. Mathematical techniques relevant for numerical methods.

  • Solution of systems of linear equations: direct and iterative methods.

  • Roots of nonlinear equations: interval searching, bisection method, simple iteration, Newton-Raphson method.

  • Introduction to Machine Learning, Regression and Interpolation.

  • Numerical Differentiation and Integration: Finite differences, trapezoidal rule and Simpson's rule, errors and applications.

  • Solution of ordinary differential equations by explicit (Runge-Kutta) methods: derivation, errors, applications.



Applied Programming Skills


  • Consolidation of Matlab and developing of Python skills including those for data handling, manipulation and presentation, as they are essential to solve engineering problems.

  • Application of simple programming techniques to implement numerical methods using Matlab and Python


Assessment pattern

Assessment type Unit of assessment Weighting
School-timetabled exam/test Programming Class Test - 45mins 30
Examination Computer-based Exam (2 hours) 70

Alternative Assessment

N/A

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate their ability to choose and implement suitable numerical methods for the solution of engineering problems and know the limitations and possible sources of error, and to write computer code in Matlab and Python to implement such methods in efficient ways.

The class test will test the students' ability to understand the key concepts and syntax of programming tools required to implement numerical methods for engineering problems. The computer-based examination tests the students' knowledge and command of numerical solution techniques including their ability of writing computer code to correctly implement corresponding methods;

Thus, the summative assessment for this module consists of a Class Test [Learning outcome 2] and a Computer-based Examination [Learning outcome 1,3,4].

Formative assessment: Students will perform online quizzes for formative assessment.

Feedback:

Formative feedback is given throughout the semester in IT-Lab based tutorials by staff and/or PG assistants, and through example solutions and computer codes posted on the VLE. Likewise, feedback on the class test is formative, towards the examination.

Module aims

  • Provide students with the knowledge and experience of selection, implementation and application of common numerical methods in order to solve standard engineering problems.
  • Expose students to the experience of using Matlab and Python programming as a tool to solve standard engineering problems.

Learning outcomes

Attributes Developed
002 Apply computer programming in support of solutions to engineering problems; CPT
001 Use a range of standard numerical methods to solve common engineering problems; KC
003 Describe and analyze standard numerical methods to solve common engineering problems; KC
004 Implement numerical methods that can be run to solve standard engineering problems; CPT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Methods of Teaching / Learning

The learning and teaching strategy is designed to


  • introduce students to a range of numerical methods with their derivations and limitations;

  • consolidate students' programming skills with Matlab and extend these skills by introducing Python through the implementation of numerical methods taught.



The learning and teaching methods include:


  • lectures, including question and answer session;

  • captured content;

  • guided learning (such as electronic/online learning and multi-media resources);

  • IT-lab based tutorials, were practical programming skills are developed through several formative exercises.


Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

Reading list

https://readinglists.surrey.ac.uk
Upon accessing the reading list, please search for the module using the module code: ENG2124

Other information

The School of Mechanical Engineering Sciences is committed to developing graduates with strengths in Employability, Digital Capabilities, Global and Cultural Capabilities, Sustainability, and Resourcefulness and Resilience. This module is designed to allow students to develop knowledge, skills, and capabilities in the following area: 

Digital capabilities: Students will further develop data handling and programming skills specifically using mathematical formulae and standard numerical methods in Matlab and Python. Students will be introduced to Python. They will also be able to use specialist software (Matlab) to solve engineering problems.

Programmes this module appears in

Programme Semester Classification Qualifying conditions
Automotive Engineering (Dual degree with HIT) BEng (Hons) 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Mechanical Engineering BEng (Hons) 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Mechanical Engineering MEng 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Biomedical Engineering BEng (Hons) 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Biomedical Engineering MEng 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Automotive Engineering MEng 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Automotive Engineering BEng (Hons) 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Aerospace Engineering BEng (Hons) 2 Compulsory A weighted aggregate mark of 40% is required to pass the module
Aerospace Engineering MEng 2 Compulsory A weighted aggregate mark of 40% is required to pass the module

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2024/5 academic year.