There are six (6) core courses: Scientific Computing I & II (AMSC660 & AMSC661), Introduction to Parallel Computing (CMSC616), and a selection of advanced scientific computing courses (AMSC714, AMSC715, AMSC808N, AMSC763, and AMSC764).

Scientific Computing I & Scientific Computing II will cover fundamental topics in computational methods for discrete systems, linear and nonlinear systems, optimization, ODEs, Fourier and wavelet transforms, and elliptic and time-dependent PDEs. 

CMSC 616 covers the foundations of parallel computing. Topics include programming for shared memory and distributed memory parallel architectures, and fundamental issues in design, development and analysis of parallel programs. 

Students complete their remaining core course requirements by selecting from this list: 

AMSC 714: Numerical Methods for Stationary Partial Differential Equations
In-depth study of the finite element method for computing the numerical solution to partial differential equations, including its formulation, stability and convergence properties, fast solvers, and connection to finite difference methods.

AMSC 715: Numerical Methods for Evolution Partial Differential Equations
Study of the numerical solution of time-dependent partial differential equations, including the heat and wave equations: maximum principle, energy methods and Sobolev spaces, finite difference and finite element methods, von Neumann analysis, stability and error estimates.

AMSC 763:  Advanced Linear Numerical Analysis
Contemporary topics in numerical linear algebra, including iterative algorithms for sparse linear systems of equations, fast direct methods, numerical methods for solving eigenvalue problems, and probabilistic methods in linear algebra.

AMSC 764:  Advanced Numerical Optimization
Survey of optimization from both a computational and theoretical perspective, with emphasis on scalable methods with applications in machine learning, model fitting, and image processing.  Topics include convex analysis, duality, rates of convergence, and advanced topics in linear algebra,. gradient methods, splitting methods, interior point methods, linear programming, and methods for large matrices.

AMSC 808N: Numerical Methods for Data Science and Machine Learning
Topics include optimization (fundamentals of constrained and unconstrained optimization, algorithms for large-scale problems, Tikhonov and lasso regularization), matrix data and latent factor models (Ky-Fan norms, nonlinear matrix factorization, CUR decomposition, applications), dimension reduction for data visualization and organization (PCA, MDS, isomap, LLE, t-SNE, diffusion maps), graph data analysis.