01 · Work
Nuclear measurement, and the software that makes it defensible
I am a physics Ph.D. candidate at the University of Michigan, working in the Applied Nuclear Science Group and, since summer 2026, with the Low Energy Physics Group at Argonne National Laboratory. The measurements I work on are low-rate and background-limited: an ionization yield at a few hundred electron volts of nuclear recoil, a 68.75 keV transition sitting under a Compton continuum, an (α, n) cross section reconstructed from four digitizers that were never synchronised.
What those have in common is that the physics result is only as good as the chain that produced it. So I write that chain: binary readers that keep up with disk, waveform processing that is the same on every run, likelihood fits whose components are chosen by a search rather than by hand, and a build system that makes any of it reproducible on someone else’s machine a year later.
The code is open, documented, and pinned with Nix. The API references are generated from the same commit that builds the libraries, and the fleet that serves them is described in its own repository too.
02 · Projects
Software I build and maintain
Analysis code for nuclear measurement, the agent harness that runs beside it, and the Nix configuration that keeps all of it reproducible.
- 01 Active
Analysis-Utilities
The C++/ROOT library the rest of the analysis is written against: digitizer readers, waveform processing, and photopeak fits that run on the GPU.
C++ROOTCUDARooFitNix - 02 Active
MUSIC
Monorepo for the active-target ionization chamber at Argonne: one shared analysis tree, compiled separately against each experiment's configuration.
C++ROOTCUDATOMLNix - 03 Active
son-of-anton
An always-on agent you can talk to from a terminal or from Signal, with a separate research loop that runs generated code against real detector data in a sandbox.
PythonTextualNixuv2nixvLLM - 04 Active
NixOS
One flake describing ten machines: router, bastion, storage, inference hosts, workstations and a kiosk, all deployed from a single build host.
NixNixOSColmenaagenixCaddy
03 · Publications
Selected publications
Newest first. The full list, with presentations, teaching and awards, is on the CV.
Super-Lindhard Ionization from 254 eVnr Nuclear Recoils in Germanium
Digital Pulse Processing for Mixed-Field Ionizing Radiation Detection in Rare-Event Nuclear Experiments