Each nanorobot claims an empty site somewhere in a stack of lattice layers, travels to it, and places a unit. Placement is never perfect: nanoscale pick-and-place is limited by thermal drift and actuator precision, so the placement error is modelled as independent Gaussian noise on each of three axes, whose spread grows with how fast the bot works:
σ(v) = σ₀ · (v / v₀)^1.6
error ~ N(0, σ(v)) on x, y, z [nm-equivalent]
defect if |error vector| > tolerance
This 2D adaptation stacks the lattice's layers vertically as separate panels — because the quality-control scanner in the original line sweeps along exactly that layer axis, this view lets you watch the sweep directly instead of losing it to a 3D camera angle. One correction made here: the source line mapped the tolerance slider to 0.5–3.0 nm-equivalent, but at those values a numerical check (20,000-sample Monte Carlo per setting) showed the defect rate stayed at 0% for almost the entire tolerance range — only the bottom sliver near 0.5 ever produced a reject, so the slider looked inert. This build remaps the same slider to 0.17–1.0, which the same check confirmed gives a smooth, continuous defect-rate gradient (0%→~85%) across the full speed × tolerance grid, matching the "tighter tolerance trades yield for purity" behaviour the theory actually describes.
- Fleet size — how many nanobots work the stack in parallel; more bots raise raw throughput but don't change per-placement accuracy.
- Assembly speed — the shared cycle rate of every bot; raising it shortens time-to-fill but widens σ, so more placements land outside tolerance.
- QC tolerance — the scanner's acceptance window. A tighter tolerance rejects (and re-queues) more marginal placements.
- Product lattice — site count per layer (N×N) and layer count (⌈N·⅔⌉, same formula as the source line). A bigger product means more total placement attempts.
- QC scan speed — how fast the scanning band sweeps up and down the layer stack; a faster sweep catches defects and confirms good units sooner, raising apparent throughput.
Drag inside the layer-stack view to pan through layers that don't fit on screen at once — the same way you'd tilt a camera through a 3D lattice.