4. Intensities¶
4.1. The species scattering factor¶
Source: rietx.crystallography.dispersion
\(f_0\) is the angle-dependent, wavelength-independent elastic form factor;
\(f'\) and \(f''\) are the angle-independent, wavelength-dependent dispersion
corrections. The split is physical: \(f_0\) probes the whole electron density
and is therefore keyed by ion (La3+), while \(f'/f''\) are core-level
resonance effects, essentially independent of valence, keyed by element
(La). \(f'' \ge 0\) in this convention.
\(f_0\) uses the five-Gaussian parameterisation of Waasmaier & Kirfel [WK95]:
Source: rietx.crystallography.scattering
\(f'/f''\) come from the Cromer-Liberman tabulation
[CL70, CL81] — the crystallographic reference calculation
(what [Pri04] §4.2.6 tabulates), chosen so that a disagreement with
another Rietveld code is attributable rather than mysterious — with the
Kissel & Pratt high-energy-limit correction [KP90], which
reaches −1.3 e at uranium. Absorption edges are never interpolated across
(\(f''\) jumps by nearly an order of magnitude across one grid interval at the
Fe K edge), and within 50.0 eV of an edge the request is
refused outright: there the true \(f''\) is the XANES of the compound,
which no atomic table knows. Measured overrides can be supplied instead.
Dispersion is applied by default (it was opt-in through v0.6, so every number
recorded in docs/milestones/ up to and including that milestone was measured
without it). Setting source.dispersion = None declines it and reproduces
those numbers bit-identically; DISPERSION_NEGLECTED then says so, because
having declined a correction that needs nothing but the species and the
wavelength is a modelling statement rather than a silence.
4.2. The structure factor¶
Source: rietx.crystallography.structure_factor
where the inner sum runs over a per-atom subset of symmetry operations, chosen once per stage so special-position images are not double counted (the subset is frozen — discrete — while the positions it produces remain smooth functions of the refined coordinates). Intensities use \(|F|^2\) with the reflection multiplicity applied separately [Rie69]; multiplicities are computed by explicit orbit counting under the Laue group, so \(\pm\mathbf{h}\) are always merged into one orbit.
4.3. Debye-Waller factors and ADP representations¶
Isotropic sites take \(T = \exp(-B_j k^2)\) with \(B_{\mathrm{iso}} = 8\pi^2 U_{\mathrm{iso}}\) (Ų) [Pri04], identical for every image, so it factors out of the orbit sum. Anisotropic sites do not factor:
Source: rietx.crystallography.structure_factor
Three representations of the same tensor appear in the literature, named explicitly here per the IUCr nomenclature report [TBurgiB+96]:
\(U^{ij}\) (Ų) — the CIF
_atom_site_aniso_U_ijconvention, defined by \(T(\mathbf{h}) = \exp(-2\pi^2 \sum_{ij} U^{ij} h_i h_j a^*_i a^*_j)\); what is stored, so what goes into a CIF is what came out of one.\(U^*\) (dimensionless) — \(U^*_{ij} = U^{ij} a^*_i a^*_j\), the mean-square displacement tensor in fractional coordinates. \(U^*\) is what transforms as \(U^* \to R\,U^* R^\top\), which makes evaluating the image atom’s factor at \(\mathbf{h}\) identically the parent’s at \(R^\top\mathbf{h}\) — the reciprocal-space action again. This is the form the structure factor uses; working in \(U^*\) makes the identity exact rather than contingent.
\(U_{\mathrm{cart}}\) (Ų) — eigenvalues are the physical mean-square displacements along the ellipsoid axes, and \(U_{\mathrm{eq}} = \operatorname{tr}(U_{\mathrm{cart}})/3\) [FT88].
Positive-definiteness is a property of \(U_{\mathrm{cart}}\), but the three
are congruent, so by Sylvester’s law of inertia the signs of the
eigenvalues can be tested in any representation. A non-positive-definite
tensor raises an ADP_NOT_POSITIVE_DEFINITE diagnostic — the Debye-Waller
factor diverges at high \(Q\), so this is not cosmetic — and it is a
diagnostic rather than a bound because the constraint couples all six
components. Component order throughout is \((U_{11}, U_{22}, U_{33}, U_{12},
U_{13}, U_{23})\). Site-symmetry constraints on both coordinates and ADPs
are covered in Parameterisation and constraints.
4.4. Anomalous scattering and the powder average¶
With dispersion on, Friedel’s law dies in a non-centrosymmetric group: \(|F(\mathbf{h})|^2 \ne |F(-\mathbf{h})|^2\). A powder cannot resolve the pair — \(d(\mathbf{h}) = d(-\mathbf{h})\), both land in one peak — so the model must return the orbit average, not one representative’s value. Splitting the species factor into real and imaginary parts,
gives \(F = A + iB\), and since \(T\) is real, \(F(-\mathbf{h}) = \overline{A - iB}\), so
Source: rietx.crystallography.structure_factor
exactly, over the same orbit sums — no second orbit pass and no centro/non-centro case split (in a centrosymmetric group \(A\) and \(B\) share one common phase, so the cross term vanishes identically). \(f'' = 0\) makes \(B \equiv 0\) and recovers \(|F|^2\) bit-identically, so a structure without a dispersion block is unchanged. Merging \(\pm\mathbf{h}\) is therefore exact with or without anomalous scattering — but for two different reasons, and (4.6) is what keeps one representative per Laue orbit the correct thing to enumerate, not an approximation.