All learning pathsJAX learning path

Simulate and discover

Simulate physical dynamics, check numerical and derivative accuracy, and recover unknown parameters with held-out evidence. Build a reusable CPU inverse-problem audit before extending to adaptive solvers or accelerators.

Who this path is for

Scientists and engineers with a domain model to test; calculus is introduced in the shared math lessons.

Preparation

Shared foundations and calculus

Your first useful artifact

A cooling simulator with a convergence table and an independent sensitivity check.

How to study

Work from the cooling model through batched trajectories, sensitivities and parameter fitting. At each step compare against the analytic solution before changing the physical rate or time grid. Use the deeper linear algebra and curvature lessons when parameters are hard to identify. Finish the inverse-problem project, then attempt the two-compartment assessment with its independent conservation check.

Course phases and lessons

  1. Setup & first steps

    Run a saved program and explain its environment, array output and device placement. Start on one CPU, practice sharding on four logical CPU devices, and learn how to get a TPU running, launch a TPU job, and run course experiments on TPU in parallel from Phase 00 onward.

  2. Arrays & pure functions

    Treat every axis as part of a contract. Work through normalization, broadcasting and immutable updates, then diagnose mistakes that still return plausible numbers.

  3. JAX transformations

    Begin with a scalar function, then differentiate it, batch it and compile it. Compare each transformed result with a simple reference so you can explain what changed.

  4. State, randomness & control flow

    Make randomness, parameters and loop state explicit. Learn how to repeat an experiment without accidentally reusing randomness or mutating a caller’s state.

  5. Math & optimization

    Connect geometry and probability to the updates in a training loop. Begin with linear algebra, gradient checks and gradient descent, then investigate conditioning, curvature, likelihoods, regularization and optimizer behavior.

  6. Scientific computing

    Build and differentiate a physical simulator, recover a positive rate from observations, and separate numerical accuracy, identifiability and measured execution cost.

Audit a differentiable scientific inverse problem

A guided project is available for this route.

Complete the staged project contracts and the changed-condition synthesis assessment with independent calculations, observed outputs, and failure diagnosis.

Read the portfolio project guide

Work through the synthesis assessment

Use this path in your learning workspace