Scientific Computing

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 MSU, 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 UKAAM faculty who are actively involved in the UKAAM activities and supervise UKAAM students or postdoctoral fellows. Prospective students interested in a research project in Scientific Computing in the UKAAM are encouraged to contact one or more of the core faculty as potential supervisors and let them know of their interests.

Uri AscherUri is a Professor of Computer Science and a former Director of the UKAAM (1993-98). The focus of his work is the investigation and promotion of novel, efficient and reliable methods in scientific computation, particularly for approximation problems involving differential equations with constraints. He has contributed to a wide variety of applications and has also written several textbooks on numerical analysis published by SUKAAM.
Robert BridsonRobert’s work revolves around numerical and geometric algorithms for solving problems in fluid and solid mechanics, including iterative methods for linear systems, discretisation of PDEs in space and time, mesh generation, and collision and contact handling. He often works closely with film studios in applying these algorithms to problems in physics-based animation.
Michael FriedlanderMichael’s research is primarily in developing numerical methods for large-scale optimisation. He is especially interested in issues of convergence analysis, robust software implementation, and applications in signal and image processing, and machine learning.
Chen GreifChen is interested in numerical linear algebra, and in particular in sparse matrix computations. His main interests include iterative solvers for large and sparse linear systems and preconditioning techniques, especially for saddle point systems. He is also interested in eigenvalue problems related to Markov chains, including the PageRank problem.
Eldad HaberEldad is a Professor of Mathematics and of Earth and Ocean Sciences. His main field of interest is the development of computational methods for inverse problems with applications to geophysical and medical imaging. The field is interdisciplinary by nature and includes numerical discretisation of partial differential equations, numerical optimisation and robust statistics. Eldad is an NSERC Industrial Research Chair in Computational Geoscience.
Ian MitchellIan is interested in numerical methods and software for solving ordinary and partial differential equations in the areas of control, robotics and verification. For example, the Toolbox of Level Set Methods is a Matlab software package which can be used for dynamic implicit surfaces in graphics, animation and fluid simulations as well as the Hamilton-Jacobi equation in control and verification.
Carl Ollivier-GoochCarl is a Professor in the Department of Mechanical Engineering. His research is in numerical methods using unstructured meshes, with a particular interest in computational aerodynamics. His group also develops algorithms for unstructured mesh generation and studies the interaction of unstructured mesh quality and solution accuracy.
Anthony PeirceAnthony’s principal areas of research expertise are in the application of asymptotic and numerical analysis to industrial problems. Research topics have included optimal control of molecular motion, stability of reactive fronts propagating in layered porous media, analysis of the regularisation effect of microstructure on localisation phenomena in elasto-plastic models, and development of multipole expansion techniques for boundary integral models of large-scale fracture interactions. His most recent research efforts are focussing on the analysis of hydraulic fracture propagation, which is of considerable importance in the oil, gas, and mining industries. Anthony was an IAM Director from 1999 to 2000.
Anthony WachsAnthony is an Associate Professor of Mathematics and of Chemical and Biological Engineering. His research focusses on multiphase flows, non-Newtonian fluid mechanics and computational methods to solve fluid mechanics PDE problems on large supercomputers. His primary interest is on the modelling and parallel computing of particle-laden flows with heat and mass transfer. Examples of application include sediment transport in rivers, fluidized bed in biomass gasification and blood flow in the human body. Anthony’s group develops in-house parallel codes both on fixed and adaptive grids and is a big user of Compute Canada and UBC computing resources.
Brian WettonBrian’s major research area is the numerical analysis of various continuum mechanics and materials science problems. He had a long industrial collaboration with Ballard Power Systems, developing simulation tools to aid in the design of hydrogen fuel cells. He has an ongoing interest in electrochemical systems and is pursuing other industrial projects.

Recommended Courses

Adaptive grid to resolve boundary and internal layers

Students interested in Scientific Computing in the UKAAM are advised to take the following preliminary, core and optional courses.

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