Computational mathematics fulfils two distinct purposes within Mathematics. On the one hand the computer is a mathematician's laboratory in which to model problems too hard for analytical treatment and to test existing theories; on the other hand, computational needs both require and inspire the development of new mathematics. Computational methods are an essential part of the tool box of any mathematician. This unit will introduce you to a suite of computational methods and highlight the fruitful interplay between analytical understanding and computational practice. In particular, you will learn both the theory and use of numerical methods to simulate partial differential equations, how numerical schemes determine the stability of your method and how to assure stability when simulating Hamiltonian systems, how to simulate stochastic differential equations, as well as modern approaches to distilling relevant information from data using machine learning. By doing this unit you will develop a broad knowledge of advanced methods and techniques in computational applied mathematics and know how to use these in practice. This will provide a strong foundation for research or further study.
lecture 3 hrs/week, computer lab/tutorial 1 hr/week
3 x homework assignments (total 60%), final exam (40%)
A thorough knowledge of vector calculus (e.g., MATH2X21) and of linear algebra (e.g., MATH2X22). Some familiarity with partial differential equations (e.g., MATH3X78) and mathematical computing (e.g., MATH3X76) would be useful.