Module Information

Module Identifier
MA25220
Module Title
Introduction to Numerical Analysis and its applications
Academic Year
2018/2019
Co-ordinator
Semester
Semester 2 (Taught over 2 semesters)
Mutually Exclusive
Mutually Exclusive
Pre-Requisite
Other Staff

Course Delivery

Delivery Type Delivery length / details
Practical 5 x 2 Hour Practicals
Lecture 33 x 1 Hour Lectures
Practical 11 x 1 Hour Practicals
 

Assessment

Assessment Type Assessment length / details Proportion
Semester Exam 2 Hours   (Written Examination)  50%
Semester Assessment 2 x online tests in Semester 1  30%
Semester Assessment 2 assignments in Semester 2  20%
Supplementary Exam 2 Hours   (Written Examination)  100%

Learning Outcomes

On successful completion of this module students should be able to:

Demonstrate an ability to write short programs in Python

Demonstrate an awareness of good practice in developing computer programs for numerical computation

Construct a polynormial or a spline that interpolates a set of data

Derive and apply standard numerical methods for approximating an integral and analyse the errors of these methods

Determine the root(s) of a non-linear equation using standard numerical methods, and demonstrate an awareness of the order of convergence of these methods.

Compute numerical approximations to the solution of initial value problems using one-step methods, and demonstrate an awareness of the convergence and stability of these methods.

Aims

The semester 1 content on learning python has been adjusted slightly so that it is suitable for mathematics students with minimal programming experience.

Brief description

It is often impossible to find the exact solution of a mathematical problem using standard techniques. In these situations one has to resort to numerical techniques and the use of a computer. Numerical analysis is concerned with the development and analysis of methods for the numerical solution of practical problems. This course will provide an introduction to the Python programming language and, more broadly, the Scientific Python Stack. It will then introduce techniques for the numerical approximation of mathematical problems and the analysis of these techniques, using Python to provide practical application of the numerical methods.

Content

Semester 1:

1. INTRODUCTION TO PYTHON: Types, variables, if-statements, for- and while-loops. The interpreter and the evaluation of simple expressions. Editing, saving and loading code.
2. DATA STRUCTURES IN PYTHON: Lists and numpy arrays.
3. FUNCTIONS IN PYTHON. Function definition and function calling.
4. ORGANISING PYTHON CODE. Generating documentation, catching and handling exceptions, organising code into modules.
5. PLOTTING IN PYTHON: Manipulate data and plot results.

Semester 2:

1. POLYNOMIAL INTERPOLATION: Lagrange's formula. Newton's formula and divided differences. The forward difference formula. Interpolation error. Cubic spline interpolation.
2. NUMERICAL INTEGRATION: Trapezoidal rule, Simpson's rule. Composite integration rules. Quadrature errors. Romberg integration. Gaussian quadrature rules.
3. SOLUTION OF NONLINEAR EQUATION IN A SINGLE VARIABLE: Bisection method. Fixed point methods and contraction mappings. Newton's method. Order of convergence.
4. INITIAL VALUE PROBLEMS: Existence and uniqueness of solutions. Euler's method. Local truncation error. Consistency. Convergence. Stability. General one-step methods. Trapezoidal method. Predictor-corrector methods.

Module Skills

Skills Type Skills details
Application of Number Necessary throughout.
Communication Written answers to exercises and documenting of code must be clear and well-structured. Good listening skills are essential to successful progress in this course.
Improving own Learning and Performance Students will be expected to develop their own approach to time-management in their attitude to the completion of work on time, and in doing the necessary preparation between lectures and workshops. They should act on feedback, for example the in-practical feedback from demonstrators and from their marked work.
Information Technology Students will be set exercises in workshops that involve developing computer code. They will need to be able to use computers and library facilities throughout.
Personal Development and Career planning Completion of tasks (worksheets and problem sheets) to set deadlines will aid personal development. Students will develop highly sought after programming skills.
Problem solving Exercises will be set and marked. These will involve the derivation and implementation of numerical methods and their errors.
Research skills Using a computer. Searching the language and library documentation.
Subject Specific Skills Programming skills, debugging skills, numeracy skills, numerical analysis skills.
Team work No

Notes

This module is at CQFW Level 5