Dissemination of IT for the Promotion of Materials Science (DoITPoMS)


Calculating diffraction patterns

The physics of diffraction is reasonably complicated, and the algebra required to calculate diffraction patterns is lengthy. Despite this, the derivations that follow should not be beyond an interested student who is confident with mathematics.

Consider a one-dimensional object extending in the x direction. A beam of coherent monochromatic light is incident on the object and it is diffracted away from its original trajectory to produce a scattered beam. We can use unit vectors to record the direction of the incident beam and the scattered beam. The incident beam is parallel to the vector s0 and the scattered beam is parallel to the vector s. Two points on the object at O and X are joined by the vector x. At each point, scattering of the incident beam occurs isotropically (i.e. through all angles). We will consider the beam scattered through an angle 2θ from the original beam direction.

We can describe the object in terms of its scattering density. The scattering density is represented by a function ρ(x) which varies along the dimension of the object. If the amplitude of the incident beam is A0, then the amplitude scattered from the infinitesimal point at X is proportional to A0ρ(x)δx, where x is the magnitude of the vector x and δx represents the infinitesimal length of the point.

Maxima and minima in the diffraction pattern arise due to differences in the phase of the beams scattered from each point along the object. We need to take this into account to calculate the diffraction pattern.

The diagram above shows that the path difference between two rays scattered at an angle 2θ from O and X is xs - xs0. It is useful to define the scattering vector S = s - s0, so that the path difference is simply xS.

The magnitude of the scattering vector S can be calculated as follows:

|S|2 = SS = (s - s0)•(s - s0) = ss + s0s0 - 2(ss0)

Since the magnitude of s and s0 are unity, ss = s0s0 = 1, and so:

|S|2 = 2 - 2 cos 2θ = 4 sin2θ

|S| = 2 sinθ

Diagram specifying vectors and angles

The phase difference between the two rays is (2π/λ)xS.

Now consider the diffracted amplitude at angle 2θ. The contribution from the scattering point at X is proportional to A0ρ(x)δx, as we saw before, but we must include a term that takes into account the phase difference between the scattered rays from O and X. This second term must go to zero when the rays are π radians out-of-phase, i.e. when the path difference is nλ/2 (n integer), and it should be a maximum when the rays are in phase, i.e. when the path difference is a whole number of wavelengths. A complex exponential function fulfils these criteria. The full expression for the contribution to the diffracted amplitude at angle 2θ from the element at X is:

$$\delta {\rm{A}} = {{\rm{A}}_0}\rho ({\rm{x}})\delta {\rm{x}}\exp \left( {2\pi {\rm{i}}{{{\bf{x}} \cdot {\bf{S}}} \over \lambda }} \right)$$

To find the total diffracted amplitude at angle 2θ we must sum the contributions from all elements making up the object. This is done by integrating:

$${\rm{A(}}{\bf{S}}{\rm{)}} = {{\rm{A}}_0}\int\limits_{ - \infty }^\infty {\rho ({\rm{x}})\exp \left( {2\pi {\rm{i}}{{{\bf{x}} \cdot {\bf{S}}} \over \lambda }} \right){\rm{d}}x} $$

This form is familiar: the scattered amplitude A(S) is the Fourier transform of the scattering density ρ(x). Note that the information about the angle 2θ is contained within the scattering vector S.

Example 1: Scattering from a single slit

Example 2: Scattering from a pair of infinitely narrow slits