Capstone · three to four weeks
Everything in the course was preparation for one experiment: does pretraining on related physics reduce the data needed for new physics, measured against a control that makes the answer falsifiable. The deliverable is a transfer map with seeds, splits, invariants, and whatever negative results it produces.
Two of the five steps are already done, which needs saying plainly, because the remaining three are the interesting ones and it would be easy to spend the whole capstone rebuilding what exists.
Step 01 of the kit asks for the smallest honest baseline, and Lab 01 run B is it: an FNO on 1D viscous Burgers at the paper's specification, trained at 64 points and tested at 64, 128, 256 and 1024, with a checked solver, a fixed seed and a results file (Module 2). The kit asked for normalized \(L^2\), rollout error, runtime and seed. Everything but the rollout is recorded, and Module 7's lab specifies the missing piece.
Lab 02 supplies the target that makes this a semiconductor project: a checked steady thermal solver for a 10 mm die with random power maps, plus an FNO baseline on it with peak and hot-spot metrics (Module 6). You also start with a known defect to watch for, which is more useful than it sounds. Both labs degrade at unseen grids, and Modules 2 and 6 traced the degradation to a grid-scale artefact and not to a general loss of accuracy. Any transfer result you get will sit on top of that artefact, so it has to be measured with the banded metrics of Module 8 and not with a bulk error alone.
Every row below is a way a transfer experiment can produce a number that means nothing. The third column matters: these controls are not aspirations, they are already implemented in code you can read.
| Control | Rule | Where it is already implemented |
|---|---|---|
| Solver fidelity | every generator runs a check that halts the script on failure | Lab 01 halves \(\Delta t\) to \(1.9\times10^{-12}\) and requires the norm to decrease; Lab 02 matches an analytic sine load to \(1.25\times10^{-5}\) |
| Seeds | at least 3 per cell, reporting mean and range | both labs fix seed 0 and record it. Run A's two runs differ by 0.0004 from CUDA nondeterminism alone, so a single seed is not a result |
| Splits | by initial-condition family and coefficient regime, never random frames from one trajectory | both labs split by sample index before any subsampling, and the generators expose the coefficient ranges |
| Resolution against time | test 64 to 128 and 256 separately from rollout; they are different questions | Lab 01 run B is the resolution test; Module 7's rollout lab is separate by construction |
| Physics diagnostics | the conserved mean of \(u\) for periodic Burgers, boundary error, banded spectral error, hot-spot error | Module 8 defines all four on both labs, and spectrum_b_m16.npz already exists |
| Equal capacity | same parameter count, same step budget, same normalization across every arm | count_model_params is recorded in every results file |
One page, called the transfer map. A grid whose rows are targets, Burgers at ν = 0.02 and the thermal die, whose columns are data fractions, and whose cells read "C beat A by x percent", "no gain", or "C worse", each with its seed range. Below it, the one-dimension-at-a-time table from step 5 for every cell that failed. Beside it, the error-against-fraction plot with all four arms and seed bands. Attach the results files.
The standard to hold yourself to is the one this course has applied to everybody else. A negative transfer map with these controls in place is a result to keep and to publish. A positive one without them is not a result at all, because you cannot tell it apart from a bigger model, an easier split, or a lucky seed.
What not to submit. A single final-time image, which hides everything Module 8 exists to find. A speed-up without the reference solver's hardware and resolution, and without the break-even count of Module 12. A super-resolution claim without the output spectrum, which is how the Nyquist artefact went unnoticed until Module 2 looked. And any sentence of the form "the model learns physics", which is not a claim with a test attached.
The kit's semiconductor path continues in the direction Module 6 laid out, adding one difficulty at a time. Move from the square die to irregular geometry, first a die with a heat spreader, then a package with vias. Tie the coefficients to real materials, which turns \(k\) into a field and makes the operator nonlinear in the coefficient exactly as Darcy is. Then inverse design: place the blocks to minimize the peak temperature, which is Module 12's seismic pattern of differentiating through the operator, and the point at which the break-even arithmetic starts strongly favouring a surrogate, since an optimization loop makes thousands of forward calls.
The right tools at that point are a mesh model of Module 6's kind and a finite element solver. On Windows, FEniCSx means Docker or WSL2 (research_notes/repos.md:216). The physics after thermal is drift-diffusion, a coupled nonlinear system, and then EUV mask diffraction, which is Maxwell's equations on nanometre features and has two public papers whose arXiv identifiers Module 12 flags as unverified and which must be checked before either is cited (lineage.md:329).
The course started from a podcast making three claims, and it ends with you able to test the third of them on your own hardware, with your own data, using controls that most published work in the field does not use.