Research area
Reading scattering curves at scale
Guinier, Kratky and P(r) explained from computed scattering, plus the trained model and confidence rule behind automated SAXS analysis.
Small-angle X-ray scattering gives you the size and shape of something in solution without crystallising it. What it does not give you is an unambiguous answer. Between the raw curve and a reported radius of gyration sit a series of judgement calls, and different analysts make them differently.
An experienced person handles this well, at a rate of a few profiles an hour, and two experienced people will not produce identical numbers. Once a high-throughput campaign is generating hundreds of profiles, both facts become blocking.
What the detector actually sees
Particles tumbling freely in solution scatter isotropically, so the two-dimensional pattern is a set of concentric rings. The dark bands are not noise. They are the minima of the particle's form factor, and their spacing is what encodes its size.
Show the numbers
| Feature | Meaning |
|---|---|
| Central disc | Beamstop: the direct beam is blocked |
| Radius | Increasing q, so decreasing length scale |
| Bright rings | Maxima of the form factor |
| Dark rings | Minima: their positions fix the particle radius |
| First minimum | q ≈ 4.493 / R for a sphere |
Computed Rendered from the same computed I(q) as the curves above, for a 30 Å sphere. The ring positions are the real form-factor minima, not decoration.
Three views of one measurement
The figures below are computed rather than measured. Each is generated from the geometry of a model body by Monte-Carlo sampling its pair distance distribution and transforming that to a scattering profile by the Debye relation. Because Rg and Dmax come from the same distribution as the curves, the three plots agree with one another the way a real measurement does, and the recovered Rg can be checked against the exact analytical value.
Guinier: where the straight line stops being straight
Plot ln I(q) against q² and the low-q data falls on a line whose slope is −Rg²/3. The approximation only holds while q·Rg stays small, and choosing where to cut it is one of the judgement calls the pipeline has to make explicit.
- Computed I(q)
- Guinier approximation
Show the numbers
| Quantity | Value |
|---|---|
| Model body | Sphere, R = 30 Å |
| Rg from p(r) | 23.26 Å |
| Exact Rg = R√(3/5) | 23.24 Å |
| Guinier limit q²max = 1.5/Rg² | 0.00277 Å⁻² |
| Equivalent q·Rg | 1.22 |
Computed Computed for this page from the Debye relation, not measured. The q²max = 1.5/Rg² limit is the criterion used in the paper. The recovered Rg matches the exact value for a sphere (23.26 Å against 23.24 Å), which is the check that the calculation is right.
Kratky: shape, read off the curve
q²I(q) against q. A compact body gives a clear peak that falls away; as a particle becomes elongated or splits into domains the curve broadens and the decay softens. This is the plot the clustering step turns from an impression into a probability.
- Globular (sphere, R = 30 Å)
- Elongated (prolate, 16 × 16 × 62 Å)
- Two-domain (2 × R = 20 Å, 52 Å apart)
Note the ratio Dmax/Rg in the table: 2.56 for the sphere, against the exact value of 2.58 for a solid sphere. Elongation pushes it to 4.14. That single ratio carries much of what the shape classification is picking up on.
Show the numbers
| Body | Rg (Å) | Dmax (Å) | Dmax / Rg |
|---|---|---|---|
| Globular (sphere, R = 30 Å) | 23.3 | 60 | 2.56 |
| Elongated (prolate, 16 × 16 × 62 Å) | 29.5 | 122 | 4.14 |
| Two-domain (2 × R = 20 Å, 52 Å apart) | 30.2 | 90 | 2.99 |
Computed All three curves come from one calculation per body: Monte-Carlo p(r), then I(q) by the Debye relation. Because Rg and Dmax are derived from the same p(r), the three figures on this page are mutually consistent the way a real measurement would be.
P(r): the histogram of distances inside the particle
Every pair of points in the body contributes one distance. The longest of them is Dmax, and estimating it reliably from noisy data is the step the model was trained to assist with.
- Globular (sphere, R = 30 Å)
- Elongated (prolate, 16 × 16 × 62 Å)
- Two-domain (2 × R = 20 Å, 52 Å apart)
Show the numbers
| Body | Shape of p(r) | Dmax (Å) |
|---|---|---|
| Globular (sphere, R = 30 Å) | Single symmetric peak | 60 |
| Elongated (prolate, 16 × 16 × 62 Å) | Skewed, long tail to high r | 122 |
| Two-domain (2 × R = 20 Å, 52 Å apart) | Bimodal: within-domain then between-domain | 90 |
Computed Monte-Carlo sampled from the geometry of each body, 300,000 point pairs per body, fixed seed, smoothed with three passes of a 3-point kernel.
Where the model comes in
Choosing Dmax is the call that most resists automation: pick it too small and you truncate real structure, too large and you invent oscillation that is not there. The approach taken in the paper is to train on how the field already makes that call, using 1,940 experimental profiles from the Small Angle Scattering Biological Data Bank, not idealised simulations.
experimental files from the SASBDB
hidden layers × units, ReLU
on held-out data
on maximum particle dimension
The regressor
A small, deliberately unglamorous network: four hidden layers of 32 units, trained only on experimental profiles so that it learns how practitioners actually make this call.
Show the numbers
| Hyperparameter | Value |
|---|---|
| Model | Multilayer perceptron regressor |
| Hidden layers | 4, each of 32 units |
| Activation | ReLU |
| Solver | Adam |
| Alpha (L2 penalty) | 1 × 10⁻³ |
| Maximum iterations | 1,000 |
| Random state | 42 |
| Training set | 1,940 SASBDB profiles |
| Analysis q-range | 0.005–0.25 Å⁻¹ |
| Collection q-range | 0.005–3.13 Å⁻¹ |
| Detectors | Pilatus 1M (SAXS), Pilatus 900K (WAXS) |
Reported Architecture and hyperparameters as published.
Knowing when to stop
There are two independent routes to a radius of gyration: the Guinier approximation at low q, and integration of the pair distance distribution. On a well-measured dataset they agree. When they diverge, something is wrong: with the measurement, the buffer subtraction, or the assumption of monodispersity. Using that agreement as a built-in gate gives the tool a basis for declining to answer.
The rule that lets the pipeline decline to answer
The model's predicted Dmax is compared against the value from the BIFT fit. Agree within 20% and it is reported in green; disagree by more and it is shown in red rather than quietly returned.
This is the part worth copying. An automated analysis that always returns a plausible-looking number is worse than none; the useful property is knowing when to stop.
Show the numbers
| Deviation from BIFT Dmax | Outcome |
|---|---|
| Within ±20% | Accepted, shown green |
| More than ±20% | Flagged as low confidence, shown red |
Reported The ±20% threshold and the red/green reporting are as described in the paper.
Shape classification works the same way. An unsupervised Gaussian mixture model was fitted over SASBDB entries, with AIC and BIC evaluated for up to nine clusters and the Kratky plots of high-confidence samples used to check that the clusters were actually separating shapes. Of 3,328 samples, six were excluded as extreme outliers. The output is a probability that a sample resembles a known class, not a claim to have solved a structure.
The paper behind this page
SAXS Assistant: Automated SAXS analysis for structural discovery in biologics and polymeric nanoparticles
Ramirez, Mare, Byrnes et al., Biophysical Journal, 2025.
doi:10.1016/j.bpj.2025.09.034