Schedule

CME 192 runs for eight lectures. This page lists weekly topics, suggested online prep, and materials.

Announcements

  • Course materials and announcements will be posted to the course website and course GitHub.
  • Assignments: two graded assignments (work individually or in teams).
  • Questions or concerns: email the instructor (winnicki@stanford.edu).

Schedule

  • Meeting time: Thursdays, 4:30–5:20 PM (PT)
  • Location: Hewlett Teaching Center 102
  • How to use this page: The “Online modules to complete” are short MathWorks tutorials and Onramps designed to help you prepare for each lecture. These modules are optional for students who already have familiarity with the relevant domain or applications. Students who are new to a topic are strongly encouraged to complete the suggested Onramps in advance, otherwise the lecture content may feel fast. Assignment due dates are highlighted in the schedule below.
</td>
Event Date In-class lecture Online modules to complete Materials and Assignments
Lecture 1 01/08 Topics: MATLAB Fundamentals (energy demand dataset)
  • MATLAB setup + workflow (Desktop vs. MATLAB Online, Live Scripts)
  • Core data types: numeric arrays, cell arrays, structs
  • Working with tables + categorical arrays
  • Functions and function handles (@)
Review if topic is unfamiliar: Recommended refreshers (MathWorks):
Lecture 2 01/15 Topics: Advanced plotting & visualizations (NHANES)
  • Placing data and pre-setting axes (clean figure scaffolding)
  • Loading and merging the core NHANES tables
  • Plotting defaults: readable figures by construction
  • Histograms + scatter plots (incl. coloring by a third variable)
  • 3D surfaces / response surfaces from scattered samples
  • Volume visualization (MRI example), exporting figures, and simple animations
Review if topic is unfamiliar: Optional (MathWorks):
  • Livescript
  • Slides
  • Lecture 3 01/22 Topics: Applied mathematics in MATLAB (NLA + ODE/PDE + Symbolic)
    • Numerical linear algebra demos: SVD/POD compression, sparse Poisson solves, eigenmodes (eigs), least squares + conditioning
    • ODE/PDE demos: diagnostics (vorticity/divergence), streamfunction Poisson solve, PDE Toolbox workflow, advection–diffusion time stepping
    • Symbolic Math: defining symbolic variables, manipulating expressions, and solving equations
    Review if topic is unfamiliar: Extra technical content (optional):
  • Livescript
  • Slides
  • Lecture 4 01/29 Topics: File I/O, big data, and MATLAB ↔ Python/C++ workflows
    • File manipulation + search path basics
    • Import/export: CSV/text, MAT-files; writing analysis results to tables (CSV/Excel)
    • Handling big data: memory hygiene, datastores + tall arrays, MapReduce, database workflows
    • Interoperability: calling Python from MATLAB, MATLAB from Python, and calling C/C++ (MEX / codegen)
    Review if topic is unfamiliar: Extra technical content (optional):
  • Livescript
  • Slides
  • Lecture 5 02/05 Topics: Statistics & machine learning in MATLAB (classic ML + deep learning)
    • Statistics and Machine Learning Toolbox: data preprocessing + feature engineering with tables
    • Unsupervised learning: PCA / dimension reduction + clustering (k-means, hierarchical clustering, GMM)
    • Example: grouping/clustering basketball players from tabular stats
    • Supervised ML: classification (heart disease demo) + regression basics
    • Model evaluation + improvement: train/test splits, confusion matrices, and hyperparameter tuning
    • Deep Learning Toolbox: pretrained CNNs, activations/feature extraction, and transfer learning (image classification demo)
    • Neural operators (FNO) demo: Python ↔ MATLAB workflow for PDE surrogate modeling
    Review if topic is unfamiliar: Optional (MathWorks): Extra technical content (optional):
  • Livescript
  • Slides
  • Lecture 6 02/12 Topics: Optimization & simulation/modeling (financial data demo)
    • Optimization basics: Jacobians, gradients, Hessians
    • Root finding and nonlinear solves (bisection/Newton intuition; fsolve)
    • Unconstrained optimization (fminunc) and constrained optimization (fmincon)
    • Linear, quadratic, and integer programming (linprog, quadprog, intlinprog)
    • Nonlinear least squares (Gauss–Newton / Levenberg–Marquardt)
    • Applied example: calibrating a simple Black–Scholes model via least squares
    Review if topic is unfamiliar: Extra technical content (optional):
  • Livescript
  • Slides
  • Assignment 1 (Due 02/23)
    Lecture 7 02/19 Topics: Image processing in MATLAB (Astronomy edition)
    • Dataset prep: SDSS “postage stamp” image cutouts (includes a Python download script)
    • Import, visualize, and compare images (imshow, montage, checkerboard)
    • Preprocessing: resize/crop borders, grayscale vs. color channels
    • Registration + difference imaging
    • Intensity profiles (“toy photometry”) and histograms
    • Contrast enhancement: imadjust, histeq, adapthisteq
    • First-pass source detection: thresholding + morphology + background subtraction
    • (Optional) Semantic segmentation (SOURCE vs SKY) with a small deep net
    Review if topic is unfamiliar: Optional (MathWorks): Extra technical content (optional):
  • Livescript
  • Slides
  • Lecture 8 02/26 Topics: Signal processing in MATLAB (earthquake + audio examples), Parallel Processing, Interactive Plotting
    • Signal Processing Toolbox overview and a practical signal processing “pipeline”
    • Working with time-stamped signals via timetables; aligning and synchronizing signals
    • Spectral analysis: power spectra with pspectrum and frequency-domain interpretation
    • Preprocessing: resampling, smoothing, detrending
    • Filtering and basic feature extraction (peaks, envelopes, changepoints, similarity)
    • Quick tour of related toolboxes (Audio Toolbox, DSP System Toolbox)
    Review if topic is unfamiliar: Optional (MathWorks): Extra technical content (optional):
  • Livescript
  • Slides
  • Assignment 2 (Due 03/13)