Scientific Computing


Group overview

Mathematical models can be written that describe systems of interest in many fields: engineering, fundamental science, finance, biology and medicine. Analytic investigation of these models can give tremendous insights into the original applications. However, some specific information about the systems often cannot be found using analytical methods. In these cases, the models must be approximated numerically. The numerical computations must be done accurately and, for large-scale problems, efficiently. Numerical approximation is used by many researchers, and so there is significant interest in developing and improving the accuracy and efficiency of these methods. This is the field of Scientific Computing.

There is a strong group of researchers in this field in several departments at UBC, collected in the Institute of Applied Mathematics. Some of these researchers are more interested in the numerical analysis (accuracy, efficiency) of general methods, whereas others have developed improved methods for computations in their application field of interest. Many of the group members are part of the SCAIM (Scientific Computation and Applied & Industrial Mathematics) group and of the Computer Science-based Scientific Computing Laboratory.

CORE Faculty

The Scientific Computing Group is composed of several core IAM faculty who are actively involved in the IAM activities and supervise IAM students or postdoctoral fellows. Prospective students interested in a research project in Scientific Computing in the IAM are encouraged to contact one or more of the core faculty as potential supervisors and let them know of their interests. For potential supervisors outside of Mathematics, please consult the Scientific Computing group page of the IAM.


We teach undergraduate and graduate courses in scientific computing, listed below. Graduate students can receive degrees (Master's and PhD) as members of the UBC Institute of Applied Mathematics. Graduate students in the IAM can be registered as Mathematics Department students but have supervisors in other departments. We are interested to hear from potential graduate students and postdoctoral fellows. We recruit from many different backgrounds, including mathematics, computer science, physics, and engineering.

Preliminary and Foundational Courses
CPSC 302: Numerical Computation for Algebraic Problems
CPSC 303: Numerical Approximation and Discretization
CPSC 406: Numerical Optimization
CPSC 542G: Scientific Computing
MATH 405/607E: Numerical Methods for Differential Equations

Scientific Computing Courses
CPSC 520: Numerical Methods for Time-Dependent PDEs
MATH 521: Numerical Analysis of PDEs
MECH 510: Computational Methods in Transport Phenomena I

Further Options (Special Topics)
CPSC 517: Sparse Matrix Computations
CPSC 546: Numerical Optimization
MECH 511: Computational Methods in Transport Phenomena II


Faculty Research Interests
Philip Loewen Optimization, Control, Applications
Colin Macdonald Numerical computing on general domains such as curved surfaces, particularly the Closest Point Method. Level set methods and associated numerical techniques such as WENO spatial discretizations and interpolants.
Christoph Ortner Molecular simulation, Physics-inspired machine learning for coarse-graining and multi-scale methods, Materials and material defects, Numerical analysis, PDEs
Brian Wetton Scientific Computation, Industrial Mathematics, Materials Science, Electrochemical Systems
Graduate Students Research Interests
Maricela Best McKay