An ideal spectrometer
The model assumes no temporal or spatial shifts and no other hardware defects.
What a Thomson parabola spectrometer measures, why its images are so hard to analyse, and how Oblisk turns them into species and spectra.
A pinhole picks a thin pencil of that beam. The magnetic field pushes ions sideways, the electric field pushes them up. Where they hit the detector depends on their charge-to-mass ratio and speed.
Faster ions arrive first and land closer to the zero point. Toggle species to see each parabola on its own.
Pick an ion and change its energy. The magnetic deflection falls with speed, the electric one with speed squared, so every ion with the same m/q lies on one curve.
Start from the textbook image and turn on what a real detector adds. Then try to say, by eye, where each parabola starts and which species it is.
Background noise can be as bright as the fainter parabolas.
The zero point is a saturated blob with a halo, and ghost spots sit right beside it.
The whole image is rotated, tilted and distorted, so traces don't follow the textbook formula in pixels.
Brightness wanders along each parabola: faint stretches, bright stretches, grainy everywhere.
Doing it carefully by hand can take hours for a single image.
A fine-tuned YOLO model finds the active detector and the zero-deflection spot. The brightest spot plus the overall “momentum” of bright pixels tells which way the parabolas open, so the image is rotated and flipped into a standard frame.
A U-Net trained on synthetic shots with ten kinds of noise strips the background while keeping faint traces. Morphological opening is available as a classical fallback.
Peaks are found row by row, linked into line candidates, filtered, and fragments of the same trace are merged by slope.
Tilts are grid-searched, then rotation and the common origin are fitted, with optional radial distortion. With those fixed, each line gets its own curvature a, which carries its m/q.
Curvatures are matched to the m/q ladder of your elements against a hydrogen reference. Intensity is sampled along each fitted track and mapped from position to energy.
The model never saw this shot. It learned what traces look like from a synthetic generator that varies geometry, intensity and noise, so it removes the background without erasing the faint, broken parts of a trace.
| Species | m/q fit | m/q ref | cutoff |
|---|---|---|---|
| H⁺ | 1.00 | 1.00 | 9.8 MeV |
| C⁶⁺/O⁸⁺ | 2.01 | 2.00 | 6.8 MeV |
| C⁴⁺ | 3.02 | 3.00 | 10.1 MeV |
| C³⁺/O⁴⁺ | 3.97 | 4.00 | 7.2 MeV |
| C²⁺ | 6.05 | 6.00 | 5.7 MeV |
| Si³⁺ | 9.21 | 9.33 | 12.1 MeV |
Illustrative values. Species with the same m/q share one label, as in real output. Runs export everything to res.json and CSV.
The model assumes no temporal or spatial shifts and no other hardware defects.
Amplitudes are detector-signal indicators, not calibrated ion yields. Reliable calibration exists only for hydrogen.
C⁶⁺ and O⁸⁺ both have m/q = 2 and draw the same parabola. No TPS geometry can separate them.
Or, if you have Thomson spectrometer data that breaks these assumptions, that's exactly what I'd like to see.