Print Settings
 

CME 20Q: Computational Modeling for Future Leaders

Preference to sophomores. How can we harness and exploit the power of computational modeling? What responsibilities are there in developing and using computer models? In this course we will analyze fundamental issues inherent to computational modeling such as uncertainty, predictability, error, and resolution. We will furthermore examine the social context of computational modeling including the public perception of computational models, how computer modeling impacts politics and policy, and how politics and policy, in turn, influence computer modeling.
Terms: Aut | Units: 3
Instructors: ; Minion, M. (PI)

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: 10 units of AP credit (Calc BC with 4 or 5, or Calc AB with 5), or Math 41 and 42.
Terms: Aut, Spr | Units: 5 | UG Reqs: GER:DB-Math, WAY-FR

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, Win, Spr | Units: 6 | UG Reqs: GER:DB-Math, WAY-FR

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. Prerequisite: 10 units of AP credit (Calc BC with 4 or 5, or Calc AB with 5), or Math 41 and 42. Recommended: CME100.
Terms: Aut, Win, Spr, Sum | Units: 5 | UG Reqs: GER:DB-Math, WAY-FR

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:nhttps://engineering.stanford.edu/students/programs/engineering-diversity-programs/additional-calculus-engineers
Terms: Aut, Win, Spr | Units: 6 | UG Reqs: GER:DB-Math, WAY-FR

CME 103: Introduction to Matrix Methods (EE 103)

Introduction to applied linear algebra with emphasis on applications. Vectors, norm, and angle; linear independence and orthonormal sets; applications to document analysis. Clustering and the k-means algorithm. Matrices, left and right inverses, QR factorization. Least-squares and model fitting, regularization and cross-validation. Constrained and nonlinear least-squares. Applications include time-series prediction, tomography, optimal control, and portfolio optimization. Prerequisites:MATH 51 or CME 100, and basic knowledge of computing (CS 106A is more than enough, and can be taken concurrently). EE103/CME103 and Math 104 cover complementary topics in applied linear algebra. The focus of EE103 is on a few linear algebra concepts, and many applications; the focus of Math 104 is on algorithms and concepts.
Terms: Aut | Units: 3-5 | UG Reqs: GER:DB-Math, WAY-AQR, WAY-FR

CME 151: Introduction to Data Visualization

Bring your data to life with beautiful and interactive visualizations. This course is designed to provide practical experience on combining data science and graphic design to effectively communicate knowledge buried inside complex data. Each lecture will explore a different set of free industry-standard tools, for example d3.js, three.js, ggplots2, and processing; enabling students to think critically about how to architect their own interactive visualization for data exploration, web, presentations, and publications. Geared towards scientists and engineers, and with a particular emphasis on web, this course assumes an advanced background in programming methodology in multiple languages (particularly R and Javascript). Assignments are short and focus on visual experimentation with interesting data sets or the students' own data. Topics: data, visualization, web. Prerequisites: some experience with general programming is required to understand the lectures and assignments.
Terms: Aut | Units: 1
Instructors: ; Deriso, D. (PI)

CME 192: Introduction to MATLAB

This short course runs for the first eight weeks of the quarter and is offered each quarter during the academic year. It is highly recommended for students with no prior programming experience who are expected to use MATLAB in math, science, or engineering courses. It will consist of interactive lectures and application-based assignments.nThe goal of the short course is to make students fluent in MATLAB and to provide familiarity with its wide array of features. The course covers an introduction of basic programming concepts, data structures, and control/flow; and an introduction to scientific computing in MATLAB, scripts, functions, visualization, simulation, efficient algorithm implementation, toolboxes, and more.
Terms: Aut, Spr | Units: 1
Instructors: ; Craig, A. (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

CME 195: Introduction to R (STATS 195)

This short course runs for the first four weeks of the quarter 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 R programming. The goal of the short course is to familiarize students with R's tools for scientific computing. Lectures will be interactive with a focus on learning by example, and assignments will be application-driven. No prior programming experience is needed. Topics covered include basic data structures, File I/O, graphs, control structures, etc, and some useful packages in R.
Terms: Aut, Spr | Units: 1

CME 200: Linear Algebra with Application to Engineering Computations (ME 300A)

Computer based solution of systems of algebraic equations obtained from engineering problems and eigen-system analysis, Gaussian elimination, effect of round-off error, operation counts, banded matrices arising from discretization of differential equations, ill-conditioned matrices, matrix theory, least square solution of unsolvable systems, solution of non-linear algebraic equations, eigenvalues and eigenvectors, similar matrices, unitary and Hermitian matrices, positive definiteness, Cayley-Hamilton theory and function of a matrix and iterative methods. Prerequisite: familiarity with computer programming, and MATH51.
Terms: Aut | Units: 3

CME 207: Numerical Methods in Engineering and Applied Sciences (AA 214A, GEOPHYS 217)

Scientific computing and numerical analysis for physical sciences and engineering. Advanced version of CME206 that, apart from CME206 material, includes nonlinear PDEs, multidimensional interpolation and integration and an extended discussion of stability for initial boundary value problems. Recommended for students who have some prior numerical analysis experience. Topics include: 1D and multi-D interpolation, numerical integration in 1D and multi-D including adaptive quadrature, numerical solutions of ordinary differential equations (ODEs) including stability, numerical solutions of 1D and multi-D linear and nonlinear partial differential equations (PDEs) including concepts of stability and accuracy. Prerequisites: linear algebra, introductory numerical analysis (CME 108 or equivalent).
Terms: Aut | Units: 3

CME 211: Software Development for Scientists and Engineers (EARTH 211)

Basic usage of the Python and C/C++ programming languages are introduced and used to solve representative computational problems from various science and engineering disciplines. Software design principles including time and space complexity analysis, data structures, object-oriented design, decomposition, encapsulation, and modularity are emphasized. Usage of campus wide Linux compute resources: login, file system navigation, editing files, compiling and linking, file transfer, etc. Versioning and revision control, software build utilities, and the LaTeX typesetting software are introduced and used to help complete programming assignments. Prerequisite: introductory programming course equivalent to CS 106A or instructor consent.
Terms: Aut | Units: 3

CME 214: Software Design in Modern Fortran for Scientists and Engineers (EARTH 214)

This course introduces software design and development in modern Fortran. Course covers the functional, object-oriented-, and parallel programming features introduced in the Fortran 95, 2003, and 2008 standards, respectively, in the context of numerical approximations to ordinary and partial differential equations; introduces object-oriented design and design schematics based on the Unified Modeling Language (UML) structure, behavior, and interaction diagrams; cover the basic use of several open-source tools for software building, testing, documentation generation, and revision control. Recommended: Familiarity with programming in Fortran 90, basic numerical analysis and linear algebra, or instructor approval
Terms: Aut | Units: 3
Instructors: ; Rouson, D. (PI)

CME 238: Artificial Intelligence in Financial Technology (MS&E 446)

Survey the current Financial Technology landscape through the lens of Artificial Intelligence applications, with emphasis in 4 areas: Payments, Blockchain and Cryptocurrencies, Robo-Advisory, and Marketplace Lending. Students work in groups of 4 to develop an original financial technology project, research paper or product prototype within a chosen area. Final project posters to be presented to the class and posted online. Top posters to be selected and presented at the Stanford Financial Technology conference in January. Classes will alternate between industry speakers, lectures and scheduled group meetings with teaching team. Advanced undergraduates, graduate students, and students from other Schools are welcome to enroll. Prerequisites: Basic programming skills, knowledge of design process, introductory statistics. No formal finance experience required. Enrollment is capped at 32.
Terms: Aut | Units: 3 | Repeatable 6 times (up to 18 units total)

CME 242: Mathematical and Computational Finance Seminar (MS&E 446A, STATS 239)

Terms: Aut, Spr | Units: 1 | Repeatable for credit
Instructors: ; Jain, K. (PI)

CME 244: Project Course in Mathematical and Computational Finance

For graduate students in the MCF track; students will work individually or in groups on research projects.
Terms: Aut, Win, Spr, Sum | Units: 1-6
Instructors: ; Jain, K. (PI); Horel, E. (TA)

CME 245: Topics in Mathematical and Computational Finance

Description: Current topics for enrolled students in the MCF program: This course is an introduction to computational, statistical, and optimizations methods and their application to financial markets. Class will consist of lectures and real-time problem solving. Topics: Python & R programming, interest rates, Black-Scholes model, financial time series, capital asset pricing model (CAPM), options, optimization methods, and machine learning algorithms. Appropriate for anyone with a technical and solid applied math background interested in honing skills in quantitative finance. Prerequisite: basic statistics and exposure to programming.Can be repeated up to three times.
Terms: Aut, Win, Spr, Sum | Units: 1 | Repeatable 3 times (up to 3 units total)
Instructors: ; Jain, K. (PI); Sircar, K. (PI)

CME 250: Introduction to Machine Learning

A Short course presenting the principles behind when, why, and how to apply modern machine learning algorithms. We will discuss a framework for reasoning about when to apply various machine learning techniques, emphasizing questions of over-fitting/under-fitting, regularization, interpretability, supervised/unsupervised methods, and handling of missing data. The principles behind various algorithms--the why and how of using them--will be discussed, while some mathematical detail underlying the algorithms--including proofs--will not be discussed. Unsupervised machine learning algorithms presented will include k-means clustering, principal component analysis (PCA), and independent component analysis (ICA). Supervised machine learning algorithms presented will include support vector machines (SVM), classification and regression trees (CART), boosting, bagging, and random forests. Imputation, the lasso, and cross-validation concepts will also be covered. The R programming language will be used for examples, though students need not have prior exposure to R. Prerequisite: undergraduate-level linear algebra and statistics; basic programming experience (R/Matlab/Python).
Terms: Aut, Spr | Units: 1
Instructors: ; Maher, G. (PI)

CME 263: Introduction to Linear Dynamical Systems (EE 263)

Applied linear algebra and linear dynamical systems with applications to circuits, signal processing, communications, and control systems. Topics: least-squares approximations of over-determined equations, and least-norm solutions of underdetermined equations. Symmetric matrices, matrix norm, and singular-value decomposition. Eigenvalues, left and right eigenvectors, with dynamical interpretation. Matrix exponential, stability, and asymptotic behavior. Multi-input/multi-output systems, impulse and step matrices; convolution and transfer-matrix descriptions. Control, reachability, and state transfer; observability and least-squares state estimation. Prerequisites: linear algebra and matrices as in MATH104; differential equations and Laplace transforms as in EE102B.
Terms: Aut, Sum | Units: 3

CME 279: Computational Biology: Structure and Organization of Biomolecules and Cells (BIOE 279, BIOMEDIN 279, BIOPHYS 279, CS 279)

Computational techniques for investigating and designing the three-dimensional structure and dynamics of biomolecules and cells. These computational methods play an increasingly important role in drug discovery, medicine, bioengineering, and molecular biology. Course topics include protein structure prediction, protein design, drug screening, molecular simulation, cellular-level simulation, image analysis for microscopy, and methods for solving structures from crystallography and electron microscopy data. Prerequisites: elementary programming background (CS 106A or equivalent) and an introductory course in biology or biochemistry.
Terms: Aut | Units: 3

CME 292: Advanced MATLAB for Scientific Computing

Short course running first four weeks of the quarter (8 lectures) with interactive lectures and application based assignment. Students will be introduced to advanced MATLAB features, syntaxes, and toolboxes not traditionally found in introductory courses. Material will be reinforced with in-class examples, demos, and homework assignment involving topics from scientific computing. MATLAB topics will be drawn from: advanced graphics (2D/3D plotting, graphics handles, publication quality graphics, animation), MATLAB tools (debugger, profiler), code optimization (vectorization, memory management), object-oriented programming, compiled MATLAB (MEX files and MATLAB coder), interfacing with external programs, toolboxes (optimization, parallel computing, symbolic math, PDEs). Scientific computing topics will include: numerical linear algebra, numerical optimization, ODEs, and PDEs.
Terms: Aut, Spr | Units: 1
Instructors: ; Maddix, D. (PI)

CME 300: First Year Seminar Series

Required for first-year ICME Ph.D. students; recommended for first-year ICME M.S. students. Presentations about research at Stanford by faculty and researchers from Engineering, H&S, and organizations external to Stanford. May be repeated for credit.
Terms: Aut, Win, Spr | Units: 1 | Repeatable for credit
Instructors: ; Gerritsen, M. (PI)

CME 302: Numerical Linear Algebra

Solution of linear systems, accuracy, stability, LU, Cholesky, QR, least squares problems, singular value decomposition, eigenvalue computation, iterative methods, Krylov subspace, Lanczos and Arnoldi processes, conjugate gradient, GMRES, direct methods for sparse matrices. Prerequisites: CME 108, MATH 114, MATH 104.
Terms: Aut | Units: 3

CME 303: Partial Differential Equations of Applied Mathematics (MATH 220)

First-order partial differential equations; method of characteristics; weak solutions; elliptic, parabolic, and hyperbolic equations; Fourier transform; Fourier series; and eigenvalue problems. Prerequisite: Basic coursework in multivariable calculus and ordinary differential equations, and some prior experience with a proof-based treatment of the material as in Math 171 or Math 61CM (formerly Math 51H).
Terms: Aut | Units: 3
Instructors: ; Ryzhik, L. (PI); Liu, F. (TA)

CME 309: Randomized Algorithms and Probabilistic Analysis (CS 265)

Randomness pervades the natural processes around us, from the formation of networks, to genetic recombination, to quantum physics. Randomness is also a powerful tool that can be leveraged to create algorithms and data structures which, in many cases, are more efficient and simpler than their deterministic counterparts. This course covers the key tools of probabilistic analysis, and application of these tools to understand the behaviors of random processes and algorithms. Emphasis is on theoretical foundations, though we will apply this theory broadly, discussing applications in machine learning and data analysis, networking, and systems. Topics include tail bounds, the probabilistic method, Markov chains, and martingales, with applications to analyzing random graphs, metric embeddings, random walks, and a host of powerful and elegant randomized algorithms. Prerequisites: CS 161 and STAT 116, or equivalents and instructor consent.
Terms: Aut | Units: 3

CME 330: Applied Mathematics in the Chemical and Biological Sciences (CHEMENG 300)

Mathematical solution methods via applied problems including chemical reaction sequences, mass and heat transfer in chemical reactors, quantum mechanics, fluid mechanics of reacting systems, and chromatography. Topics include generalized vector space theory, linear operator theory with eigenvalue methods, phase plane methods, perturbation theory (regular and singular), solution of parabolic and elliptic partial differential equations, and transform methods (Laplace and Fourier). Prerequisites: CME 102/ENGR 155A and CME 104/ENGR 155B, or equivalents.
Terms: Aut | Units: 3

CME 390: Curricular Practical Training

Educational opportunities in high technology research and development labs in applied mathematics. Qualified ICME students engage in internship work and integrate that work into their academic program. Students register during the quarter they are employed and complete a research report outlining their work activity, problems investigated, results, and follow-on projects they expect to perform. May be repeated three times for credit.
Terms: Aut, Win, Spr, Sum | Units: 1 | Repeatable 3 times (up to 3 units total)

CME 399: Special Research Topics in Computational and Mathematical Engineering

Graduate-level research work not related to report, thesis, or dissertation. May be repeated for credit.
Terms: Aut, Win, Spr, Sum | Units: 1-15 | Repeatable 6 times (up to 30 units total)

CME 400: Ph.D. Research

Terms: Aut, Win, Spr, Sum | Units: 1-15 | Repeatable for credit
Instructors: ; Alonso, J. (PI); Athey, S. (PI); Bambos, N. (PI); Beroza, G. (PI); Biondi, B. (PI); Boahen, K. (PI); Boneh, D. (PI); Bosagh Zadeh, R. (PI); Boyd, S. (PI); Bustamante, C. (PI); Candes, E. (PI); Carlsson, G. (PI); Charikar, M. (PI); Darve, E. (PI); Delp, S. (PI); Diaconis, P. (PI); Donoho, D. (PI); Dror, R. (PI); Farhat, C. (PI); Fedkiw, R. (PI); Fringer, O. (PI); Genesereth, M. (PI); Gerritsen, M. (PI); Giesecke, K. (PI); Glynn, P. (PI); Goel, A. (PI); Gorle, C. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Hastie, T. (PI); Holmes, S. (PI); Hong, H. (PI); Iaccarino, G. (PI); James, D. (PI); Jameson, A. (PI); Johari, R. (PI); Kamvar, S. (PI); Khatib, O. (PI); Khayms, V. (PI); Kitanidis, P. (PI); Kosovichev, A. (PI); Kumar, S. (PI); Lai, T. (PI); Langley, P. (PI); Lee, P. (PI); Lele, S. (PI); Leskovec, J. (PI); Levinson, D. (PI); Levitt, M. (PI); Lew, A. (PI); Linder, C. (PI); Liu, T. (PI); Marsden, A. (PI); Moerner, W. (PI); Moin, P. (PI); Montanari, A. (PI); Motwani, R. (PI); Murray, W. (PI); Ng, A. (PI); Pande, V. (PI); Papanicolaou, G. (PI); Pitsch, H. (PI); Plevritis, S. (PI); Poulson, J. (PI); Rajagopal, R. (PI); Rajaratnam, B. (PI); Re, C. (PI); Reed, E. (PI); Roughgarden, T. (PI); Ryzhik, L. (PI); Saberi, A. (PI); Salisbury, J. (PI); Saunders, M. (PI); Shaqfeh, E. (PI); Sidford, A. (PI); Suckale, J. (PI); Taylor, C. (PI); Tchelepi, H. (PI); Tibshirani, R. (PI); Wein, L. (PI); Weissman, T. (PI); Wong, W. (PI); Xing, L. (PI); Ye, Y. (PI); Ying, L. (PI); Kanagawa, K. (GP)

CME 444: Computational Consulting

Advice by graduate students under supervision of ICME faculty. Weekly briefings with faculty adviser and associated faculty to discuss ongoing consultancy projects and evaluate solutions. May be repeated for credit.
Terms: Aut, Win, Spr | Units: 1-3 | Repeatable for credit

CME 500: Departmental Seminar

Weekly research lectures by doctoral students, experts from academia, national laboratories, and industry. May be repeated for credit. In autumn 2016 this seminar will primarily feature current graduate students talking about their research. In winter and spring 2016-17, this seminar will feature a mix of graduate students and other researchers.
Terms: Aut, Win, Spr | Units: 1 | Repeatable for credit

CME 510: Linear Algebra and Optimization Seminar

Recent developments in numerical linear algebra and numerical optimization. Guest speakers from other institutions and local industry. Goal is to bring together scientists from different theoretical and application fields to solve complex scientific computing problems. May be repeated for credit.
Terms: Aut, Win, Spr | Units: 1 | Repeatable for credit
Instructors: ; Saunders, M. (PI)
© Stanford University | Terms of Use | Copyright Complaints