Description
Outline and Aims:
The module aims to introduce students to the use of modern computer packages for the solution, by both analytic and numerical methods, of a wide range of problems in applied mathematics and science.
It is based on a state-of-the-art high-level programming language and computing environment, for both symbolic and numerical computations, frequently used by the international theoretical physics community and beyond, and will introduce related key foundation concepts in such computing.Ìý
Teaching and Learning Methodology:
The module is based on interactive sessions formed from a mixture of lectures and practical problem solving and programming.
In addition to timetabled sessions, it is expected that students engage in self-study in order to master the material. This can take the form, for example, of practicing example questions and further reading in textbooks and online.
Indicative Topics:
- 'Computer Algebra’ systems in general and Mathematica© in particular. Basic algebra, differential and integral calculus. Power expansions of functions. Limits.
- Mathematica©’s structures (especially lists) and their relationship with mathematical structures. Operations on lists. Lists as sets. Inner and outer products. Lists of data.
- Rules and how to apply them. Mathematica©’s pattern constructions. Rules as returned when solving equations. Manipulating expressions with rules. More general pattern-matching; sequences, types, criteria and defaults. RepeatReplace and delayed rules.
- Defining functions. Overloading of functions. Modules. Pure (unnamed) functions. Functions that remember or redefine themselves. Recursive procedures. Loops and control structures.
- Graphics: basic line graphs, contour and surface plots. Controlling graph layouts, combining and animating graphs.
- Numerical solutions of algebraic equations using FindRoot and using graphs to control the process. Methods of root-finding by bisection and the Newton-Raphson method
- Numerical solution of differential equations by finite difference methods, including simple stability analysis. Use of NDSolve.
- Repeated operations without loops: Nest, While, FixedPoint, Through, Compositions.
- Series solution of differential equations. Boundary value problems (multiple shooting). Brief treatment of partial differential equations.
- Analysis of data: linear and non-linear fitting; Fourier smoothing of data. Reading and writing external files. Simple imageÌý processing (pixellisation; edge enhancement).
Module deliveries for 2024/25 academic year
Last updated
This module description was last updated on 19th August 2024.
Ìý