Module overview
Computational techniques in mathematics, and mathematical approaches to computing, are central to advances across scientific fields. This module will introduce fundamental techniques in optimisation and numerical linear algebra, together with the computational essentials needed for mathematical study.
Aims and Objectives
Learning Outcomes
Learning Outcomes
Having successfully completed this module you will be able to:
- Understanding of numerical optimisation methods
- Demonstrate fundamental IT skills for mathematics
- An understanding of the singular value decomposition
- Code simple mathematical algorithms in a programming language (such as Python), analyze the computational behavior of such algorithms, and describe them in writing.
- An understanding of the simplex method for linear programming problems
Syllabus
• Key examples (such as gradient descent, Simplex method, Singular Value Decomposition)
• Linear programming
• Feasible regions, constraints, optimality, geometric interpretations
• Tableau form, one and two phase simplex method
• Steepest descent
• Iterative methods for linear problems; Jacobi method
• Complexity analysis
• Stability and spectral radius
• Accuracy and condition number
• Image compression, reduced order models, SVD
• Applications of SVD (for example, image compression)
Introduction to Python and software
• Variables: Definition, naming conventions and using sensible names. Integer, float, strings, printing.
• Loops: Concept of iteration, using for and while loops, range function. Semantic whitespace in Python.
• Control flow: Logical statements and boolean variables. if/elif/else.
• Functions: Concept and procedural programming. Definition in Python: def and return keywords. Docstrings and help. Script files, import, packages.
• Data structures: Lists, tuples, dictionaries and sets. Vectors and arrays through numpy.
• LaTeX: Basic environments and sections. Packages such as amsmath. BibTeX and reference managers. Creating long documents.
• Excel: advanced data analysis and presentation. Linking to other packages (eg Python via openpyxl).
Learning and Teaching
Teaching and learning methods
Lectures, problem classes, workshops, computer labs, private study
Type | Hours |
---|---|
Supervised time in studio/workshop | 11 |
Independent Study | 103 |
Tutorial | 12 |
Lecture | 24 |
Total study time | 150 |
Resources & Reading list
Textbooks
Dimitrios Mitsotakis. Computational Mathematics.
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Coursework | 20% |
Exam | 40% |
Coursework | 40% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Exam | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Exam | 100% |
Repeat Information
Repeat type: Internal & External