Selected Course Descriptions

CAAM 30900 Mathematical Computation I: Matrix Computation Course

Course Description: This is an introductory course on numerical linear algebra, which is quite different from linear algebra. We will be much less interested in algebraic results that follow from axiomatic definitions of fields and vector spaces but much more interested in analytic results that hold only over the real and complex fields. The main objects of interest are real- or complex-valued matrices, which may come from differential operators, integral transforms, bilinear and quadratic forms, boundary and coboundary maps, Markov chains, correlations, DNA microarray measurements, movie ratings by viewers, friendship relations in social networks, etc. Numerical linear algebra provides the mathematical and algorithmic tools for analyzing these matrices. Topics covered: basic matrix decompositions LU, QR, SVD; Gaussian elimination and LU/LDU decompositions; backward error analysis, Gram-Schmidt orthogonalization and QR/complete orthogonal decompositions; solving linear systems, least squares, and total least squares problem; low-rank matrix approximations and matrix completion. We shall also include a brief overview of stationary and Krylov subspace iterative methods; eigenvalue and singular value problems; and sparse linear algebra.

100 Units

CAAM 31430 Applied Linear Algebra

Course Description: This course will provide a review and development of topics in linear algebra aimed toward preparing students for further graduate coursework in Computational and Applied Mathematics. Topics will include discussion of matrix factorizations (including diagonalization, the spectral theorem for normal matrices, the singular value decomposition, and the Schur and polar decompositions), and an overview of classical direct and iterative approaches to numerical methods for problems formulated in the language of linear algebra (including the conjugate gradient method). Additional topics will be included depending on student interests.

100 Units

CAAM 31020 Mathematical Computation IIB: Nonlinear Optimization

Course Description: This course covers the fundamentals of continuous optimization with an emphasis on algorithmic and computational issues. The course starts with the study of optimality conditions and techniques for unconstrained optimization, covering line search and trust region approaches, and addressing both factorization-based and iterative methods for solving the subproblems. The Karush-Kuhn-Tucker conditions for general constrained and nonconvex optimization are then discussed and used to define algorithms for constrained optimization including augmented Lagrangian, interior-point and (if time permits) sequential quadratic programming. Iterative methods for large sparse problems, with an emphasis on projected gradient methods, will be presented. Several substantial programming projects (using MATLAB and aiming at both data-intensive and physical sciences applications) are completed during the course.

100 Units

CAAM 31015 Mathematical Computation IIA: Convex Optimization

Course Description: The course will cover techniques in unconstrained and constrained convex optimization and a practical introduction to convex duality. The course will focus on (1) formulating and understanding convex optimization problems and studying their properties; (2) understanding and using the dual; and (3) presenting and understanding optimization approaches, including interior point methods and first order methods for non-smooth problems. Examples will be mostly from data fitting, statistics and machine learning.

100 Units

CAAM 37710 Machine Learning

Course Description: This course provides hands-on experience with a range of contemporary machine learning algorithms, as well as an introduction to the theoretical aspects of the subject. Topics covered include: the PAC framework, Bayesian learning, graphical models, clustering, dimensionality reduction, kernel methods including SVMs, matrix completion, neural networks, and an introduction to statistical learning theory.

100 Units

CAAM 31050 Applied Approximation Theory

Course Description: This course covers a range of introductory topics in applied approximation theory, the study of how and when functions can be approximated by linear combinations of other functions. The course will start with classical topics including polynomial and Fourier approximation and convergence, as well as more general theory on bases and approximability. We will also look at algorithms and applications in function compression, interpolation, quadrature, denoising, compressive sensing, finite-element methods, spectral methods, and iterative algorithms.

100 Units

CAAM 31410 Applied Dynamical Systems

Course Description: This course is an introduction to dynamical systems for analysis of nonlinear ordinary differential equations. The focus is on methods of bifurcation theory, canonical examples of forced nonlinear oscillators, fast-slow systems, and chaos. Examples will be drawn from mathematical modeling of physical and biological systems. While geometric perspectives will be emphasized, assignments will also introduce asymptotic methods for analysis and use numerical simulation as an exploratory tool. This course assumes students have a background in ordinary differential equations and linear algebra at the undergraduate level and an interest in mathematical modeling for applications.

100 Units

CAAM 31440 Applied Analysis

Course Description: This course provides an overview of fundamentals of mathematical analysis with an eye towards developing the toolkit of graduate students in applied mathematics. Topics covered include metric spaces and basic topological notions, aspects of mathematical analysis in several variables, and an introduction to measure and integration.

100 Units

CAAM 31210 Applied Functional Analysis

Course Description: This course will cover classical topics of applied functional analysis: description of functional spaces such as Banach spaces and Hilbert spaces; properties of linear operators acting on such spaces, compactness and spectral decomposition of compact operators; and applications to ordinary and partial differential equations.

100 Units

CAAM 31220 Partial Differential Equations

Course Description: This is an introduction to the theory of partial differential equations covering representation formulas and regularity theory for elliptic, parabolic, and hyperbolic equations; the method of characteristics; variational formulations for second-order linear elliptic equations; and the calculus of variations.

100 Units

CAAM 37830 Scientific Computing with Python

Course Description: This course is an introduction to scientific computing using the Python programming language intended to prepare students for further computational work in courses, research, and industry. Students will learn to design, implement, and test code in Python. The course will draw examples from numerical and discrete algorithms commonly encountered in scientific computing with an emphasis on design and performance considerations. Topics will include numerical linear algebra, optimization, graph theory, data analysis, and physical simulations. The course will also introduce students to a variety of practical topics such as the use of remote resources, version control with git, commonly used libraries for scientific computing and data analysis, and using and contributing to open source and collaborative projects.

100 Units

CAAM 31450 Applied Partial Differential Equations

Course Description: Partial differential equations (PDEs) are used to model applications in a wide variety of fields: fluid dynamics, optics, atomic and plasma physics, elasticity, chemical reactions, climate modeling, stock markets, etc. The study of their mathematical structure and solution methods remains at the forefront of applied mathematics. The course concentrates on deriving an important set of examples of PDEs from simple physical models, which are often closely related to those describing more complex physical systems. The course will also cover analytical methods and tools for solving these PDEs; such as separation of variables, Fourier series and transforms, Sturm-Liouville theory, and Green’s functions. The course is suitable for graduate students and advanced undergraduates in science, engineering, and applied mathematics.

100 Units

CAAM 31460 Applied Fourier Analysis

Course Description: Decompositions of functions into frequency components via the Fourier transform, and related sparse representations, are fundamental tools in applied mathematics. These ideas have been important in applications to signal processing, imaging, and the quantitative and qualitative analysis of a broad range of mathematical models of data (including modern approaches to machine learning) and physical systems. Topics to be covered in this course include an overview of classical ideas related to Fourier series and the Fourier transform, wavelet representations of functions and the framework of multiresolution analysis, and applications throughout computational and applied mathematics.

100 Units

CAAM 31150 Inverse Problems and Data Assimilation

Course Description: This class provides an introduction to Bayesian Inverse Problems and Data Assimilation, emphasizing the theoretical and algorithmic inter-relations between both subjects. We will study Gaussian approximations and optimization and sampling algorithms, including a variety of Kalman-based and particle filters as well as Markov chain Monte Carlo schemes designed for high-dimensional inverse problems.

100 Units

CAAM 31151 Inverse Problems and Data Assimilation: A Machine Learning Approach

Course Description: This course demonstrates the potential for ideas in machine learning to impact on the fields of inverse problems and data assimilation. The course is primarily aimed at researchers in inverse problems and data assimilation interested in a succinct and mathematical presentation of various topics in machine learning as it pertains to their fields. Grading will be based on a computational project and on oral presentations of research papers.

Prerequisite: CAAM 31150

100 Units

CAAM 31511 Monte Carlo Simulation

Course Description: This class primarily concerns the design and analysis of Monte Carlo sampling techniques for the estimation of averages with respect to high dimensional probability distributions. Standard simulation tools such as importance sampling, Metropolis-Hastings, Langevin dynamics, and hybrid Monte Carlo will be introduced along with basic theoretical concepts regarding their convergence to equilibrium. The class will explore applications of these methods in Bayesian statistics and machine learning as well as to other simulation problems arising in the physical and biological sciences. Particular attention will be paid to the major complicating issues like conditioning (with analogies to optimization) and rare events and methods to address them.

100 Units

CAAM 31100 Mathematical Computation III: Numerical Methods for PDEs

Course Description: The first part of this course introduces basic properties of PDE’s; finite difference discretizations; and stability, consistency, convergence, and Lax’s equivalence theorem. We also cover examples of finite difference schemes; simple stability analysis; convergence analysis and order of accuracy; consistency analysis and errors (i.e., dissipative and dispersive errors); and unconditional stability and implicit schemes. The second part of this course includes solution of stiff systems in 1, 2, and 3D; direct vs. iterative methods (i.e., banded and sparse LU factorizations); and Jacobi, Gauss-Seidel, multigrid, conjugate gradient, and GMRES iterations.

100 Units

CAAM 31190 Fast Algorithms

Course Description: This course will introduce students to several classes of computational methods broadly referred to as “fast analysis-based algorithms” which exploit information about structure and symmetry to obtain more favorable computational complexity. Examples which will be discussed are butterfly algorithms, fast multipole methods, fast direct solvers, and hierarchical matrix compression. Though many of these algorithms first arose in physical applications such as simulating the motion of stars or the propagation of light and sound, they have subsequently found many fruitful applications in signal processing and data science.

100 Units

CAAM 31120 Numerical Methods for Stochastic Differential Equations

Course Description: The numerical analysis of SDE differs significantly from that of ODE due to the peculiarities of stochastic calculus. This course starts with a brief review of stochastic calculus and stochastic differential equations, then emphasizing the numerical methods needed to solve such equations. The stochastic Taylor expansion provides the basis for the discrete-time numerical methods for differential equations. The course presents many results on high-order methods for strong sample path approximations and for weak functional approximations. To help with developing an intuitive understanding of the underlying mathematics and hand-on numerical skills, examples and exercises on PC are included.

100 Units

CAAM 35420 Stochastic Processes in Gene Regulation

Course Description: This didactic course covers the fundamentals of stochastic chemical processes as they arise in the study of gene regulation. The central object of study is the Chemical Master Equation and its coarse-grainings at the Langevin/Fokker-Planck, linear noise, and deterministic levels. We will consider both mathematical and computational approaches in contexts where there are both single and multiple deterministic limits.

100 Units

CAAM 31240 Variational Methods in Image Processing

Course Description: This course discusses mathematical models arising in image processing. Topics covered will include an overview of tools from the calculus of variations and partial differential equations, applications to the design of numerical methods for image denoising, deblurring, and segmentation, and the study of convergence properties of the associated models. Students will gain an exposure to the theoretical basis for these methods as well as their practical application in numerical computations.

100 Units

CAAM 31310 Foundations of Computational Dynamics

Course Description: This course provides an introduction to dynamical systems and ergodic theory with a view toward developing and understanding computational methods for studying and engineering complex dynamics. Some topics include hyperbolic dynamics, Oseledets theory, operator learning, and stochastic differential equations.

100 Units

CAAM 31230 Inverse Problems in Imaging

Course Description: This course focuses on the mathematical description of many inverse problems that appear in geophysical and medical imaging: X-ray tomography, ultrasound tomography and seismic imaging, optical and electrical tomography, as well as more recent imaging modalities such as elastography and photo-acoustic tomography. Seen as reconstructions of constitutive parameters in differential equations from redundant boundary measurements, these continuous models tell us which parameters may or may not be reconstructed, and with which stability with respect to measurement errors. Time-permitting, we will also consider general methodologies to perform such reconstructions (regularization, optimization, Bayesian framework). Some knowledge of PDE and Fourier transforms is recommended.

100 Units

CAAM 38520 Topics in Random Matrix Theory

Course Description: Random matrix theory (RMT) is among the most prominent subjects in modern probability theory, with applications in a wide range of disciplines (including physics, statistics, engineering, and finance). The purpose of this course is to study a broad sample of the most prominent research programs in RMT as well as their motivating applications. Main topics will include (time permitting) the moment method in RMT and its connection to combinatorics, universality, operator limits, and matrix concentration.

100 Units

CAAM 37782 Algorithms for Massive Datasets

Course Description: This course will focus on using elements of randomness for the analysis of massive datasets. It will cover randomized algorithms for matrix (tensor) decompositions, stochastic optimization algorithms, and the interplay between randomness and sparse recovery.

100 Units

CAAM 37783 Solving PDEs with Machine Learning

Course Description: In this class, we discuss approaches based on machine learning for PDEs. We start with the solution of elliptic and parabolic PDE with machine learning. We first discuss approaches based on numerical discretization and particle methods. We then discuss how these classical approaches can also be realized by machine learning in a high-dimensional setting.

100 Units

STAT 39000 Stochastic Calculus

Course Description: The course starts with a quick introduction to martingales in discrete time, and then Brownian motion and the Ito integral are defined carefully. The main tools of stochastic calculus (Ito’s formula, Feynman-Kac formula, Girsanov theorem, etc.) are developed. The treatment includes discussions of simulation and the relationship with partial differential equations. Some applications are given to option pricing, but much more on this is done in other courses. The course ends with an introduction to jump process (Levy processes) and the corresponding integration theory.

100 Units

STAT 38100 Measure Theoretic Probability I

Course Description: This course provides a detailed, rigorous treatment of probability from the point of view of measure theory, as well as existence theorems, integration and expected values, characteristic functions, moment problems, limit laws, Radon-Nikodym derivatives, and conditional probabilities.

Prerequisite: STAT 30400 or instructor consent.

100 Units

STAT 38300 Measure Theoretic Probability III

Course Description: This course continues material covered in STAT 38100, with topics that include Lp spaces, Radon-Nikodym theorem, conditional expectation, and martingale theory.

100 Units