Bragg coherent diffractive imaging is a lensless microscope. There is no objective, no eyepiece and no image sensor recording an image — only a detector counting photons far from the sample, and a computation that turns those counts back into a picture. This page explains what the measurement contains, what it is missing, and how that missing piece gets supplied.

1.The measurement

A coherent X-ray beam illuminates a single crystalline grain a few tens of nanometres across. Most of the beam passes through. A small fraction scatters, and because the grain is crystalline, that scattering is concentrated into sharp Bragg peaks at specific angles set by the lattice spacing.

Point a detector at one of those peaks and rock the sample through it, and you record not a single spot but a three-dimensional volume of intensity surrounding the peak. That surrounding structure — the fringes and speckle around the bright centre — is where the information about the individual grain lives. A perfect infinite crystal would give a mathematical point; a finite, imperfect, strained grain smears that point into a pattern that encodes its shape and its distortions.

The poster's Fig. 1 reproduces this geometry from Karpov & Fohtung, J. Appl. Phys. 125, 121101 (2019) — their Fig. 7 is the clearest published drawing of the setup, and worth opening alongside this page. Fig. 2 of the poster then shows three such measured volumes from a tungsten grain. Every reconstruction on this site was given exactly that: three intensity volumes and nothing else.

2.The phase problem

An X-ray detector counts photons. What it records at each pixel is proportional to |F(q)|² — the squared magnitude of the scattered wave. But the wave that arrived was complex: it had a magnitude and a phase, and the phase is destroyed the moment the photon is counted.

This matters because the phase is not a minor detail. The scattered amplitude from a set of atoms at positions rj is

F(q) = Σj exp(−2πi q·rj)

and inverting that sum to recover the rj requires the full complex F. Roughly half the information you need was thrown away by the detector. This is the phase problem, and every technique in coherent imaging is, at bottom, a strategy for getting the phase back.

Why it is solvable at all

Because the measurement is oversampled. The grain occupies a finite region of space and is surrounded by vacuum, and that constraint — knowing that the object is zero outside some boundary — is enough information to pin down the phase in most cases. Iterative algorithms exploit this by bouncing back and forth between real space, where they enforce the boundary, and reciprocal space, where they enforce the measured magnitudes. The classic version is error reduction, with hybrid input–output and shrinkwrap as the standard improvements.

3.What a Bragg peak knows about strain

Here is the property that makes Bragg CDI different from ordinary CDI, and it is worth following the algebra because it explains why three peaks are needed.

Split each atom's position into where it would sit in a perfect lattice, Rj, plus how far it has actually been displaced, uj:

rj = Rj + uj

Now evaluate F near a Bragg peak g. The ideal-lattice part contributes the peak itself, and what is left over — the phase of the reconstructed complex density — is

φ(r) = −2π g·u(r)

So the recovered phase at each point is one projection of the displacement vector onto the scattering vector. A single Bragg peak does not measure displacement; it measures the single component of displacement along its own direction. The other two components are invisible to it.

Three peaks, and they must not be coplanar

Displacement is a 3-vector, so you need three linearly independent g to recover it. If the three chosen peaks happen to be coplanar, one direction of displacement is never measured — and no amount of extra iterations, better potentials or finer sampling can recover it, because the information was never collected.

The pipeline therefore checks this before it starts, computing the normalised determinant of the three normalised g vectors: 1.0 means mutually orthogonal, 0.0 means coplanar, and anything below 0.3 is rejected outright. The three {110} peaks used throughout this work — (1,1,0), (1,0,1) and (0,1,1) — score 0.707. Comfortably independent. You can read that number printed on the measurement panel of every diagnostic sheet in the gallery.

4.Why tungsten hides half its peaks

Tungsten is body-centred cubic with a lattice parameter of 3.1652 Å, which means two atoms per conventional cubic cell rather than one. Those two atoms interfere, and for some reflections they interfere destructively and cancel exactly. The surviving condition is simple:

h + k + l  must be EVEN

So {110}, {200} and {211} are available, while {111} is forbidden — it is extinct in BCC. This is worth stating explicitly because {111} is the workhorse reflection of face-centred cubic materials like aluminium, copper and gold, which is most of the published BCDI literature. Moving to a BCC first-wall material means the familiar peak set is simply not there, and {110} takes its place. The archive's peak selection rule is unit-tested against the structure factor of the BCC motif rather than against a hard-coded list, so a mistake here would fail the test suite rather than quietly produce a reconstruction of nothing.

5.The twin ambiguity

One more thing intensity cannot tell you. Because only |F|² is measured, an object and its point-inverted, complex-conjugated copy produce exactly the same diffraction pattern. They are indistinguishable in principle, not merely in practice, and a phase-retrieval algorithm is free to return either. This is the twin, and it is a standard feature of the field rather than a bug in any particular code.

For an atomic model the consequence is concrete: a reconstruction may come out correct but inverted through its own centre. If you then score it against the truth without checking, you compare a structure against a mirror of itself and conclude, wrongly, that the reconstruction failed — two clean but oppositely-oriented atom clouds, drawn on top of each other, look like noise.

How the figures handle it

Every score and every atom overlay on this site is twin-resolved: both signs are tested, the better one is used consistently for the numbers and for the drawing, and the sign that was chosen is printed in the quality panel of each diagnostic sheet as twin sign used. If you see that line read -1, the reconstruction came back inverted and was flipped for display.

6.Where conventional phase retrieval stops

Run error reduction, hybrid input–output and shrinkwrap on the three measured volumes and you get a genuine three-dimensional reconstruction — a complex electron density whose magnitude gives the grain's shape and whose phase gives the displacement field. The poster's Fig. 3 shows one. Every diagnostic sheet in the gallery shows one, in the panel labelled PHASED |rho|.

And it is a blob. Recognisably the right shape, useful for measuring average strain, and nowhere near atomic resolution. Two things limit it. First, resolution in a diffraction experiment is set by how far from the Bragg peak you collected signal, and the useful signal falls off quickly. Second, the algorithm is unconstrained between voxels: it will happily return a smooth density that no arrangement of actual atoms could produce.

Error reduction is also, mathematically, a form of gradient descent, which means it gets stuck in local minima. Hybrid input–output and shrinkwrap help it escape, but only so far.

7.PRAMMol: adding physics as the missing constraint

The insight behind PRAMMol — Phase Retrieval with Atomic Modeling and Molecular Dynamics — is that we know something about tungsten that the phase-retrieval algorithm does not. Real tungsten is made of discrete atoms. Those atoms interact through a known interatomic potential. They cannot overlap, cannot sit at arbitrary spacings, and cannot occupy energetically impossible configurations.

Feeding that knowledge into the loop shrinks the search space enormously. Instead of searching over all possible smooth densities, the solver searches over physically realisable atomic configurations. The loop, drawn as Fig. 4 on the poster:

  1. Phase. Conventional error reduction on the measured intensities yields a low-resolution complex density and, from it, a support — the region the grain occupies.
  2. Seed. Fill that support with an ideal BCC tungsten lattice. This is the starting model: right material, right shape, right lattice, and completely wrong in every detail that matters. It contains no defects at all.
  3. Simulate. Compute the diffraction the current model would produce, and compare it against what was actually measured.
  4. Move. Shift atoms to reduce the mismatch, following the gradient of the fit with respect to every atomic coordinate.
  5. Relax. Run molecular dynamics to pull the model back onto a physically possible configuration. Anything the fit step proposed that tungsten would not tolerate gets undone here.
  6. Add and remove. Propose new atoms where the residual suggests missing density, delete atoms that are not earning their place, and keep whichever changes improve the fit. This is the step that makes the atom count a free parameter, and it is what lets the method find a vacancy or an interstitial rather than assuming a perfect lattice.
  7. Repeat until the fit stops improving.

Step 6 is the part with no analogue in conventional phase retrieval, and it is why the method can report “this grain has 26,067 atoms” rather than “this grain has roughly this much density”. It is also the step that misbehaves when a run fails: a stuck reconstruction adds and removes atoms forever without improving.

8.The noise floor, and why a bare R-factor means nothing

The natural way to judge a reconstruction is to ask how well its computed diffraction matches the measurement. The usual summary is the R-factor — roughly, mean absolute disagreement divided by mean intensity. Lower is better, and zero would be perfect.

Except that zero is not achievable, and not even desirable. The measurement contains photon shot noise. Feed the exact true structure back through the same comparison and it does not score zero either — it scores whatever the noise happens to be. That value is the noise floor: the residual you would get if you already knew the answer perfectly.

The one number to read

Every run on this site reports χ²/floor: its own goodness of fit divided by the goodness of fit achieved by the truth. A value near 1 means the model explains everything in the data except the shot noise — there is no structure left to find. A value of 1,000 means the model is missing something real and large.

The crucial property is that the floor can be estimated without knowing the answer, because photon statistics are a property of the measurement rather than of the sample. That is what makes this a usable criterion on real experimental data, and it is the basis of the truth-free run selection described on the convergence page.

A fit that lands below its floor is over-fitting — absorbing shot noise into atomic positions — and the pipeline flags that case separately rather than celebrating it.

Where to go next

How to read these figures →

Every panel of the diagnostic sheets, explained — including which one to look at first if you only have ten seconds.

Convergence & failure →

What convergence looks like, the two distinct ways these reconstructions fail, and the statistics over all 513 scored runs.

Back to the gallery →

Eight reconstructions in detail: four that reached the noise floor and four that did not.

References

  1. Robinson, I. & Harder, R. “Coherent X-ray diffraction imaging of strain at the nanoscale.” Nature Materials 8, 291–298 (2009). doi:10.1038/nmat2400
  2. Karpov, D. & Fohtung, E. “Bragg coherent diffractive imaging of strain at the nanoscale.” Journal of Applied Physics 125, 121101 (2019). doi:10.1063/1.5054294 — source of the measurement-geometry diagram described in §1.
  3. Meziere, J. et al. “Atomic resolution coherent x-ray imaging with physics-based phase retrieval.” npj Computational Materials 10, 167 (2024). doi:10.1038/s41524-024-01340-4 — the method this work builds on.
  4. Fienup, J. R. “Phase retrieval algorithms: a comparison.” Applied Optics 21, 2758–2769 (1982). doi:10.1364/AO.21.002758