|Unit level:||Level 4|
|Teaching period(s):||Semester 2|
|Offered by||School of Mathematics|
|Available as a free choice unit?:||N
- MATH49111 - Scientific Computing (Compulsory)
Additional RequirementsMATH40082 pre-requisites
The unit aims to introduce students to scientific computing (specifically computational finance) by means of a variety of numerical techniques, through the use of high-level computing languages. Students will use a combination of writing their own codes, together with the use of scientific libraries (such as NAG).
To familiarise students with modern numerical approaches and techniques (and capabilities).
The course will be continually assessed via a series of miniprojects. The project material will cover a range of topics including the solution of nonlinear ODE's, SDEs, lattice (tree) methods, to the solution of the nonlinear partial differential equations, and will require students to write a series of computer programs to solve a specified problem.
Students should be able to (i) translate mathematical problems (well defined systems of mathematical equations) into computational tasks (ii) to assess the accuracy of any numerical approximations, through numerical experimentation (and, when possible, by comparison with analytic solution) (iii) to process numerical results into a comprehensible form (including the use of standard graphical plotting packages), for presentation in a report, (iv) to be able to give a critical assessment of the integrity of numerical methods and results.
Assessment Further Information
The students will be required to submit written reports on the projects to be handed in on set deadlines and the reports will be marked. There will be no written examination for this course. Dates for submission, length and weighting of reports will be confirmed at the beginning of the term.
- Introduction to numerical computation. Numerical approximation and different methodologies. Discussion of errors, roundoff, truncation, discretisation.
- Introduction to numerical solution of ODE's using multi-step methods. Implicit/explicit schemes. Euler and Runge-Kutta methods. Newton linearisation. Solution using library routines. Treatment of initial and boundary value problems.
- Monte Carlo simulations; generation of random numbers (including use of antithetic variables). Pricing of European/Vanilla call/put options. Simple path-dependency options (but NO early exercise examples). Assessment of advantages and disadvantages of simulation approach.
- Binomial tree valuation of European/Vanilla call/put options. Assessment (and improvement) of accuracy. Application to early-exercise put options.
- Introduction to solution of PDE's using finite-difference methods. Discussion of stability, consistency and convergence. Brief introduction to error analysis. Methods for parabolicequations. CFL condition. Discussion of methods of solution including iterative methods: Jacobi, Gauss-Seidel, SOR, Line relaxation and PSOR methods. Solution of European call/put options using Crank-Nicolson method. Solution of early exercise put options (using PSOR).
- Advanced techniques: quadrature methods, body-fitted (free-boundary) coordinate systems.
G.D. Smith, 'Numerical Solution of Partial Differential Equations', Clarendon Press, Oxford, 1978.
P. Wilmott, S. Howison & J. Dewynne, 'The mathematics of financial derivatives', Cambridge 1995.
J.C. Hull, 'Options, Futures, and Other Derivatives', Sixth Edition, Prentice Hall 2005.
D.J. Higham, 'An introduction to financial option valuation', Cambridge 2004.
Feedback tutorials will provide an opportunity for students' work to be discussed and provide feedback on their understanding. Coursework or in-class tests (where applicable) also provide an opportunity for students to receive feedback. Students can also get feedback on their understanding directly from the lecturer, for example during the lecturer's office hour.
- Lectures - 33 hours
- Tutorials - 11 hours
- Independent study hours - 106 hours