**APMA0160. Introduction to Scientific Computing
**For students in any discipline that may involve numerical computations. Includes instruction for programming in MATLAB. Applications discussed include solution of linear equations (with vectors and matrices) and nonlinear equations (by bisection, iteration, and Newton’s method),interpolation, and curve-fitting, difference equations, iterated maps, numerical differentiation and integration, and differential equations.

*Prerequisites: MATH0100 or its equivalent*

**APMA1170. Introduction to Computational Linear Algebra
**Focuses on fundamental algorithms in computational linear algebra with relevance to all science concentrators. Basic linear algebra and matrix decompositions (Cholesky, LU, QR, etc.), round-off errors and numerical analysis of errors and convergence. Iterative methods and conjugate gradient techniques. Computation of eigenvalues and eigenvectors, and an introduction to least squares methods.

*Prerequisites: MATH0100 or its equivalent. MATH0520 and APMA0160 recommended.*

**APMA1180. Introduction to Numerical Solution of Differential Equations
**Fundamental numerical techniques for solving ordinary and partial differential equations. Overview of techniques for approximation and integration of functions. Development of multistep and multistage methods, error analysis, step-size control for ordinary differential equations. Solution of two-point boundary value problems, introduction to methods for solving linear partial differential equations. Introduction to Matlab is given but some programming experience is expected.

*Prerequisites: APMA 0330, 0340, or 0350, 0360, AM 1170 is recommended, not required.*

**APMA2550. Numerical Solution of Partial Differential Equations I
**Finite difference methods for solving time-dependent initial value problems of partial differential equations. Fundamental concepts of consistency, accuracy, stability and convergence of finite difference methods will be covered. Associated well-posedness theory for linear time-dependent PDEs will also be covered. Some knowledge of computer programming expected.

**APMA 2560. Numerical Solution of Partial Differential Equations II**

An introduction to weighted residual methods, specifically spectral, finite element and spectral element methods. Topics include a review of variational calculus, the Rayleigh-Ritz method, approximation properties of spectral end finite element methods, and solution techniques. Homework will include both theoretical and computational problems.

**APMA 2570. Numerical Solution of Partial Differential Equations III**

We will cover advanced topics rotating between spectral methods, theory of finite element methods, and discontinuous Galerkin methods for partial differential equations. Algorithm formulation, analysis, and efficient implementation issues will be addressed. See Banner for current course description. APMA 2550/APMA 2560 or equivalent knowledge in numerical methods will be a prerequisite.

**APMA 2580. Computational Fluid Dynamics**

We rotate topics between incompressible and compressible fluid dynamics from one year to the next. See Banner for the most current course description. Prerequisite: APMA 2550/APMA 2560 or equivalent knowledge in numerical methods.

**APMA 2811/APMA 2821. Special Topics
**Each year this course focuses on advanced topics and changes each year according to the specific research interests of the professor instructing it. Recent topics include discontinuous Galerkin methods, domain decomposition, multigrid methods, and algorithms for high-performance computing. See Banner for the most current description of the course. Prerequisite: APMA 2550/APMA 2560 or equivalent knowledge in numerical methods.