## CME 100: Vector Calculus for Engineers (ENGR 154)

Computation and visualization using MATLAB. Differential vector calculus: analytic geometry in space, functions of several variables, partial derivatives, gradient, unconstrained maxima and minima, Lagrange multipliers. Introduction to linear algebra: matrix operations, systems of algebraic equations, methods of solution and applications. Integral vector calculus: multiple integrals in Cartesian, cylindrical, and spherical coordinates, line integrals, scalar potential, surface integrals, Green's, divergence, and Stokes' theorems. Examples and applications drawn from various engineering fields. Prerequisites: knowledge of single-variable calculus equivalent to the content of
Math 19-21 (e.g., 5 on Calc BC, 4 on Calc BC with
Math 21, 5 on Calc AB with
Math21). Placement diagnostic (recommendation non binding) at:(
https://exploredegrees.stanford.edu/undergraduatedegreesandprograms/#aptext).

Terms: Aut, Spr
| Units: 5
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Khayms, V. (PI)
;
Le, H. (PI)

## CME 100A: Vector Calculus for Engineers, ACE

Students attend
CME100/ENGR154 lectures with additional recitation sessions; two to four hours per week, emphasizing engineering mathematical applications and collaboration methods. Enrollment by department permission only. Prerequisite: must be enrolled in the regular
CME100-01 or 02. Application at:
https://engineering.stanford.edu/students/programs/engineering-diversity-programs/additional-calculus-engineers

Terms: Aut, Spr
| Units: 6
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Khayms, V. (PI)
;
Le, H. (PI)

## CME 102: Ordinary Differential Equations for Engineers (ENGR 155A)

Analytical and numerical methods for solving ordinary differential equations arising in engineering applications: Solution of initial and boundary value problems, series solutions, Laplace transforms, and nonlinear equations; numerical methods for solving ordinary differential equations, accuracy of numerical methods, linear stability theory, finite differences. Introduction to MATLAB programming as a basic tool kit for computations. Problems from various engineering fields.Prerequisites: knowledge of single-variable calculus equivalent to the content of
Math 19-21 (e.g., 5 on Calc BC, 4 on Calc BC with
Math 21, 5 on Calc AB with
Math21). Placement diagnostic (recommendation non binding) at:(
https://exploredegrees.stanford.edu/undergraduatedegreesandprograms/#aptext). Recommended:
CME100.

Terms: Aut, Win, Spr, Sum
| Units: 5
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Le, H. (PI)

## CME 102A: Ordinary Differential Equations for Engineers, ACE

Students attend
CME102/ENGR155A lectures with additional recitation sessions; two to four hours per week, emphasizing engineering mathematical applications and collaboration methods. Prerequisite: students must be enrolled in the regular section (
CME102) prior to submitting application at:n
https://engineering.stanford.edu/students/programs/engineering-diversity-programs/additional-calculus-engineers

Terms: Aut, Win, Spr
| Units: 6
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Le, H. (PI)

## CME 104: Linear Algebra and Partial Differential Equations for Engineers (ENGR 155B)

Linear algebra: matrix operations, systems of algebraic equations, Gaussian elimination, undetermined and overdetermined systems, coupled systems of ordinary differential equations, eigensystem analysis, normal modes. Fourier series with applications, partial differential equations arising in science and engineering, analytical solutions of partial differential equations. Numerical methods for solution of partial differential equations: iterative techniques, stability and convergence, time advancement, implicit methods, von Neumann stability analysis. Examples and applications from various engineering fields. Prerequisite:
CME 102/
ENGR 155A.

Terms: Spr
| Units: 5
| UG Reqs: GER:DB-Math, WAY-FR

## CME 104A: Linear Algebra and Partial Differential Equations for Engineers, ACE

Students attend
CME104/ENGR155B lectures with additional recitation sessions; two to four hours per week, emphasizing engineering mathematical applications and collaboration methods. Prerequisite: students must be enrolled in the regular section (
CME104) prior to submitting application at:
https://engineering.stanford.edu/students/programs/engineering-diversity-programs/additional-calculus-engineers

Terms: Spr
| Units: 6
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Khayms, V. (PI)

## CME 193: Introduction to Scientific Python

This short course runs for the first four weeks of the quarter. It is recommended for students who are familiar with programming at least at the level of CS106A and want to translate their programming knowledge to Python with the goal of becoming proficient in the scientific computing and data science stack. Lectures will be interactive with a focus on real world applications of scientific computing. Technologies covered include Numpy, SciPy, Pandas, Scikit-learn, and others. Topics will be chosen from Linear Algebra, Optimization, Machine Learning, and Data Science. Prior knowledge of programming will be assumed, and some familiarity with Python is helpful, but not mandatory.

Terms: Aut, Win, Spr
| Units: 1

Instructors:
Dwaraknath, A. (PI)

## CME 195: Introduction to R (STATS 195)

This short course runs for four weeks and is offered in fall and spring. It is recommended for students who want to use R in statistics, science or engineering courses, and for students who want to learn the basics of data science with R. The goal of the short course is to familiarize students with some of the most important R tools for data analysis. Lectures will focus on learning by example and assignments will be application-driven. No prior programming experience is assumed.

Terms: Spr
| Units: 1

## CME 206: Introduction to Numerical Methods for Engineering (ME 300C)

Numerical methods from a user's point of view. Lagrange interpolation, splines. Integration: trapezoid, Romberg, Gauss, adaptive quadrature; numerical solution of ordinary differential equations: explicit and implicit methods, multistep methods, Runge-Kutta and predictor-corrector methods, boundary value problems, eigenvalue problems; systems of differential equations, stiffness. Emphasis is on analysis of numerical methods for accuracy, stability, and convergence. Introduction to numerical solutions of partial differential equations; Von Neumann stability analysis; alternating direction implicit methods and nonlinear equations. Prerequisites:
CME 200/
ME 300A,
CME 204/
ME 300B.

Terms: Spr
| Units: 3

Instructors:
Mani, A. (PI)

## CME 216: Machine Learning in Computational Engineering (ME 343)

Linear and kernel support vector machines, deep learning, deep neural networks, generative adversarial networks, physics-based machine learning, forward and reverse mode automatic differentiation, optimization algorithms for machine learning, TensorFlow, PyTorch.

Terms: Spr
| Units: 3

Instructors:
Darve, E. (PI)

Filter Results: