\(\renewcommand\AA{\unicode{x212B}}\)

Absorption and Multiple Scattering Corrections

Introduction

To discuss sample corrections, specifically the absorption and multiple scattering, we must first define terms pertinent to the calculations of these corrections.

Total cross section (\(\sigma_t\))

First, we define the total cross section per atom, which for the majority of elements, is equal to the sum of the element’s scattering and absorption cross sections:

(1)\[\sigma_t (\lambda) = \sigma_s (\lambda) + \sigma_a (\lambda)\]

where \(\lambda\) is the neutron wavelength, \(\sigma_s = \int_{\Omega} \frac{d\sigma}{d\Omega} \left( \lambda, 2\theta \right) d\Omega\), and \(\frac{d\sigma}{d\Omega} \left( \lambda, 2\theta \right)\) is the differential cross-section which is the cross-section (\(\sigma\)) per solid angle (\(d\Omega\)).

Scattering cross section (\(\sigma_s\) )

Typically, the scattering cross section is directly found from tabulated single atom values [1] and with good approximation, assumed independent of wavelength. If we observe the equation above for \(\sigma_s\), we have that it is equal to the integration of the differential cross section. Yet, for the typical diffraction experiment, the differential cross-section is exactly the quantity we wish to measure. Thus, to proceed one could chose from the following:

  1. Measure the sample and integrate over all \(d\Omega\) (very difficult to do exactly since instruments typically cannot cover all \(4 \pi\) of \(\Omega\)).

  2. Perform a transmission measurement to directly measure \(\sigma_t\) and subtract a known value for \(\sigma_a\) (also not typical).

  3. Use tabulated single atom values for \(\sigma_s\) [1] (bingo!).

For the energies used to measure structure of materials, \(\sigma_s\) is to reasonable approximation independent of \(\lambda\). However, exceptions include nuclear resonances, strong Bragg scattering as in beryllium, and significant inelastic effects. [2]

Absorption cross section (\(\sigma_a\))

For the absorption cross section, again typically the cross section is used from the same tabulated single atom values [1] but is only valid for the reference wavelength, 1.7982 \(\AA\), at which it was measured at. Thus, we can look up the value of \(\sigma_a (1.7982 \AA)\). Yet, the absorption cross section is a linear function of wavelength (away from nuclear resonances). Thus, we can calculate the absorption cross section at other wavelengths from:

(2)\[ \sigma_a (\lambda) = \sigma_a (1.7982 \AA) \left( \frac{\lambda}{1.7982} \right)\]

NOTE: In Mantid, the reference wavelength is defined as a variable ReferenceLambda in NeutronAtom.cpp [3]. This variable should be used for consistency in all sample correction algorithms that calculate \(\sigma_a (\lambda)\) from this reference wavelength.

Attenuation Length (\(\mu\))

The attenuation length is defined as:

(3)\[ \mu = \rho \sigma_t = \rho \left( \sigma_s + \sigma_a \right)\]

where \(\rho\) is the atomic number density of the sample. Note that \(\rho\) is not the crystallographic or microscopic density of a unit cell but the macroscopic density of the bulk sample. If one were to measure a powder sample, the powder would not pack perfectly and thus there would be a given packing fraction, \(f\). Then, if the microscopic density is given as \(\rho_{micro}\), it is related to \(\rho\) via:

(4)\[ \rho = f * \rho_{micro}\]

The definition of \(\rho\) is used throughout the rest of this documentation.

Techniques for Calculating Corrections

Methods for calculating the absorption corrections (and also the multiple scattering) generally fall into these categories:

  1. Analytical solutions. For some simple situations it is possible to do an exact, analytical integration to produce a formula for the absorption correction based on parameters of the sample

  • Very fast.

  • Results are often stored in look up tables.

  • Use often involves interpolating between tabulated results.

  • Implemented in Mantid

  1. Numerical integration

  • Generally provides quicker solutions than Monte Carlo methods.

  • Some assumptions are included: sample geometries and the scattering processes.

  • Less flexible than the Monte Carlo integration or ray-tracing for tackling different problems.

  • Implemented in Mantid

  1. Monte Carlo integration

  • Monte Carlo is used for the numerical integration technique.

  • The performance relative to classical numerical integration depends on the number of dimensions in the integration. Monte Carlo integration is faster for a large number of dimensions

  • Relaxation of most assumptions needed by analytical solutions.

  • More flexible than the analytical techniques for shapes, beam profiles, and mixed number of scattering processes.

  • Implemented in Mantid

  1. Monte Carlo ray tracing

  • Most general solution in that it is a virtual neutron experiment with all neutron histories kept. Slowest to solution.

  • Relatively no assumptions needed. Can simulate mixed numbers of scattering, complex scattering processes (ie scattering sample to sample environment back to sample then to detector), moderator and guides included.

  • Most flexible but mainly a tool for designing new instruments than for calculating sample corrections.

  • Typically calculated in another program specific to ray tracing and then imported into Mantid.

  • Some ray tracing solutions reduce the cost of simulating neutrons that never reach a detector by forcing neutrons into certain trajectories and assigning weights. This type of enhanced ray tracing approach is very similar to a Monte Carlo integration

The analytical and numerical integration methods generally provide a quicker solution, but at the expense of having to make assumptions about sample geometries and scattering processes that make them less flexible than the Monte Carlo techniques (integration and ray-tracing). However, in many cases analytical and numerical integration solutions are satisfactory and allow much more efficient analysis of results.

Absorption

(Source code, png, hires.png, pdf)

../_images/AbsorptionAndMultipleScattering_plot_abs.png

Comparison of absorption methods with the assumptions of elastic scattering and isotropic scattering for in-plane detectors. The sample is Vanadium rod 4cm tall with 0.25cm diameter with standard number density. Algorithms compared are MayersSampleCorrection, CarpenterSampleCorrection, AbsorptionCorrection (numerical integration), and MonteCarloAbsorption.

Introduction

Determination of the structure and/or dynamics of samples depends on the analysis of single scattering data. Overall, the absorption correction is a factor, \(A\), such that 0 < \(A\) < 1 . It is a factor that accounts for the loss of intensity from single scattering in the sample (or other component in the instrument). due to both scattering and capture events in the sample. The factor \(A\) is divided by the measured intensity. Thus, the absorption correction has an overall multiplicative enhancement of the measured intensity.

Basic Sample Absorption Theory

The figure shows how a general single scattering process might occur. The neutron travels a certain distance \(l_1\) through the sample before a single scattering event occurs in the volume element \(dV\) of the sample. Then, the neutron travels a final length \(l_2\) before leaving the sample and being picked up by a detector.

AbsorptionVolume.png

To formulate the absorption sample correction, first, we assume we have a homogeneous sample of a given shape that is fully illuminated by the incident beam. Then, the number of neutrons per unit solid angle scattered once by a volume element \(dV\) of the sample and seen by a detector is given by:

(5)\[dI_1(\theta) = J_0 \rho \frac{d\sigma}{d\Omega} \left( \theta \right) exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_2) l_2 \right] dV\]

where \(J_0\) is the incident flux, \(\rho\) is the atomic number density, \(\frac{d\sigma}{d\Omega} \left( \theta \right)\) is the differential cross-section, \(l_1\) and \(l_2\) are the path lengths for incident neutrons to \(dV\) and from \(dV\) to the detector, respectively, and \(\lambda_1\) and \(\lambda_2\) are the incident and scattered wavelength, respectively.

Yet, this is only the contribution from a single volume element, or voxel, of the sample volume that contributes to a detector. Thus, if we integrate over the entire sample volume (all the voxels), we arrive at the total intensity of neutrons scattered once through an angle \(\theta\) and then leaving the sample without further scattering, given as:

(6)\[\begin{split}I_1(\theta) &= \int_V dI_1 \\ &= J_0 \rho \frac{d\sigma}{d\Omega} \left( \theta \right) \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] dV \\ &= J_0 \rho \frac{d\sigma}{d\Omega} \left( \theta \right) A V\end{split}\]

In the last part of the equation for \(I_1(\theta)\), we have introduced the term \(A\), given as:

(7)\[ A = \frac{1}{V} \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] dV\]

This is the basic absorption correction for a single sample volume (i.e. no container included, no partial correction factors, no partial illumination, etc.). NOTE: In some references, this term \(A\) is instead defined as the inverse \(A^{-1}\). Some references use the notation here: [2] [4] [5] [7] [8] and [10], while others use the inverse notation: [6].

For elastic scattering, \(\lambda_1\) = \(\lambda_2\) = \(\lambda\) and we can simplify to:

(8)\[ A_{elastic} = \frac{1}{V} \int_{V} exp \left[ -\mu (\lambda) \left( l_1 + l_2 \right) \right] dV\]

Partial Absorption Correction Factors: Paalman and Pings Formalism

When the scattering of a sample (liquid, powder, gas, etc.) is measured, the sample is often held in a thick sample container. This container contributes significantly to the measured neutron beam. Often the empty container is measured and the signal from the container (\(C\)) subtracted from the signal of sample plus container (\(S+C\)).

The Paalman-Pings formalism (PPF) [4] provides a framework for correcting for individual component absorption contributions, or the partial absorption correction factors, when a sample is measured in a container and, possibly, one or more sample environments. PPF builds on the earlier work of Ritter [5], who described a graphical approach of accounting for partial absorption correction factors. The PPF goes beyond the work of Ritter in two important ways

  • The graphical approach is formulated instead using numerical integration.

  • The contribution from the sample/container correlation region, or the interface, where the density of each is affected due to their inter-material interactions.

In their analysis, Paalman and Pings show that the latter point is not generally of consequence since this region only exists for a few angstroms in most materials, but the ability to account for it is re-assuring. The sample/container interaction could be of significant importance in cases where the container and sample are single crystal or poly-crystalline.

Generally, the container measurement (neglecting multiple scattering and inelastic effects) is written:

(9)\[ I^E_{C} = I_C A_{C,C}\]
  • \(I^E_C\) experimental intensity from the isolated container.

  • \(I_C\) theoretical intensity from the isolated container.

  • \(A_{C,C}\) is the absorption factor for scattering in the container region and absorption in the container.

The full PPF for the sample and container measurement (neglecting multiple scattering and inelastic effects) is written:

(10)\[ I^E_{S+C} = I_SA_{S,SC} + I_CA_{C,SC} + I_{SC}A_{SC,SC}\]
  • \(I^E_{S+C}\) experimentally measured intensity from \(S+C\).

  • \(I_S\) theoretical intensity from the isolated sample.

  • \(I_C\) theoretical intensity from the isolated container.

  • \(I_{SC}\) theoretical intensity from the correlated sample and container interface.

  • \(A_{S,SC}\) is the absorption factor for scattering in the sample region and absorption by the sample and container.

  • \(A_{C,SC}\) is the absorption factor for scattering in the container region and absorption by the sample and container.

  • \(A_{SC,SC}\) is the absorption factor for scattering in the correlated sample and container interface and absorption by the sample and container.

As discussed above, the final term in this expression is generally neglected.

General Notes

Integration Methods

The numerical and Monte Carlo integration approaches can be further extended in a number of ways:

  1. The beam profile (and similarly the detector visibility of the sample) can also be included to accommodate partial illumination of the sample by the beam by means of a convolution function for the shape of the profile. [10] The beam profile and detector profile can be defined as a function of the volume element \(dV\) as \(P(dV)\) and \(D(dV)\), respectively. These can then be included into Eq. (7) as:

(11)\[A = \frac{1}{V'} \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] P(dV) D(dV) dV\]

where \(V = \int_V P(dV) D(dV) dV\) is the effective volume of the cylinder in the beam.

  1. Building on (1), the PPF can also be generalized to include the beam and detector profiles. [10]

Legends for Absorption Correction Algorithms in Mantid Table

Indicates the energy modes that the algorithm can accommodate:

Legend for Energy Mode

E

Elastic

D

Direct

I

Indirect

Indicates the technique used for calculating the absorption correction:

Legend for Technique

A

Analytical

NI

Numerical Integration

MC

Monte Carlo

Due to the overlap between the Monte Carlo integration and Monte Carlo ray tracing techniques a single classification of “Monte Carlo” is used

Options that describe what functions the algorithm is capable of and the output types:

Legend for Functions

L

Loads correction from file

MS

Multiple scattering correction calculated

FI

Full illumination of sample by beam

PI

Full or partial illumination of sample by beam

W

Outputs a corrected sample workspace

A

Absorption correction calculated

A+

Calculates both sample and container absorption corrections (\(A_{s,s}\), \(A_{c,c}\))

A++

Calculates full set of partial absorption corrections (\(A_{s,s}\), \(A_{s,sc}\), \(A_{c,c}\), \(A_{c,sc}\))

Absorption Correction Algorithms in Mantid Table

Algorithm

Energy Mode

Technique

Geometry

Input Units

Functions

Notes

AbsorptionCorrection

E,D,I

NI

Any Shape

Wavelength

A,PI

Approximates sample shape using cuboid mesh of given element size
Base class: AbsorptionCorrection

AnnularRingAbsorption

E,D,I

MC

Annular / Hollow Cylinder

Wavelength

A,PI

Wrapper for MonteCarloAbsorption for hollow cylindrical sample

AnvredCorrection

E

A

Sphere

Wavelength or TOF

A,FI,W

Absorption for spheres with additional corrections in ANVRED program from ISAW:
- weight factors for pixels of instrument
- correct for the slant path through the scintillator glass and scale factors

ApplyPaalmanPingsCorrection

E,D,I

Cylinder or Flat Plate / Slab

Wavelength

W

Simply applies the correction workspaces from other Paalman-Pings-style algorithms
Can also apply shift and scale factors to container workspaces

CalculateCarpenterSampleCorrection

E

A

Cylinder

Wavelength

A,MS,FI

Only applicable to Vanadium
In-plane only

CalculateMonteCarloAbsorption

E,D,I

MC

Cylinder or
Flat Plate / Slab or
Annular / Hollow Cylinder

Wavelength

A+,PI

Uses multiple calls to SimpleShapeMonteCarloAbsorption to calculate
sample and container correction workspaces
(Deprecated)

CarpenterSampleCorrection

E

A

Cylinder

Wavelength

A,MS,FI,W

Calls CalculateCarpenterSampleCorrection

CuboidGaugeVolumeAbsorption

E,D,I

NI

Cuboid section in Any Shape sample

Wavelength

A,PI

Base class: AbsorptionCorrection via wrapping via wrapping FlatPlateAbsorption

CylinderAbsorption

E,D,I

NI

Cylinder

Wavelength

A,FI

Base class: AbsorptionCorrection

CylinderPaalmanPingsCorrection

E,D,I

NI

Cylinder

Wavelength

A++,PI

in-plane only

FlatPlateAbsorption

E,D,I

NI

Flat Plate / Slab

Wavelength

A,FI

Base class: AbsorptionCorrection

FlatPlatePaalmanPingsCorrection

E,D,I

NI

Flat Plate / Slab

Wavelength

A++,FI

HRPDSlabCanAbsorption

E

NI

HRPD aluminium flat plate only

with HRPD vanadium windows
with HRPD vanadium windows

Wavelength

A+*,FI

Only for HRPD via hard-coded dimensions.
Uses FlatPlateAbsorption for sample.
Uses slightly different analytical formula for aluminium holder and vanadium windows
for the HRPD instrument.
*Outputs a single correction workspace with both sample and container corrections

IndirectAnnulusAbsorption

I

MC

Annular / Hollow Cylinder for
both sample and container

Wavelength

A+,W

Workflow algorithm specific to Indirect geometry spectrometers.
Uses MonteCarloAbsorption for sample and container.
Will apply calculated absorption corrections and subtract container from sample.

IndirectCylinderAbsorption

I

MC

Cylinder for sample and
Annular / Hollow Cylinder
for container

Wavelength

A+,W

Workflow algorithm specific to Indirect geometry spectrometers.
Uses MonteCarloAbsorption for sample and container.
Will apply calculated absorption corrections and subtract container from sample.

IndirectFlatPlateAbsorption

I

MC

Flat Plate / Slab for both
sample and container

Wavelength

A+,W

Workflow algorithm specific to Indirect geometry spectrometers.
Uses MonteCarloAbsorption for sample and container.
Will apply calculated absorption corrections and subtract container from sample.

MayersSampleCorrection

E

NI

Cylinder

TOF

A,MS,FI,W

MonteCarloAbsorption

E,D,I

MC

Any Shape

Wavelength

A+*,PI

“Workhorse” of the MC-based algorithms
*Outputs a single correction workspace with both sample and container corrections

MultipleScatteringCorrection

E, EI


PaalmanPingsAbsorptionCorrection

E

NI

Any Shape
Wavelength

A++,PI

Calculates Paalman Pings partial absorption factors based on AbsorptionCorrection

PaalmanPingsMonteCarloAbsorption

E,D,I

MC

Cylinder or
Flat Plate / Slab or
Annular / Hollow Cylinder
Wavelength
Energy Transfer
Momentum Transfer

A++,PI

Calculates Paalman Pings partial absorption factors using MonteCarloAbsorption


PearlMCAbsorption

E

MC

Any Shape

N/A

L

Simply reads in pre-computed \(\mu\) values for PEARL instrument from an
external Monte Carlo program. Uses LoadAscii

SimpleShapeMonteCarloAbsorption

E,D,I

MC

Cylinder or
Flat Plate / Slab or
Annular / Hollow Cylinder

Wavelength

A,PI

Wrapper for MonteCarloAbsorption for 3 shape types


SphericalAbsorption

E

NI

Sphere

Wavelength

A,FI,W

Wrapper around AnvredCorrection

Multiple Scattering

(Source code, png, hires.png, pdf)

../_images/AbsorptionAndMultipleScattering_plot_ms.png

Comparison of multiple scattering methods with the assumptions of elastic scattering and isotropic scattering for in-plane detectors. The sample is Vanadium rod 4cm tall with 0.25cm diameter with standard number density. Algorithms compared are MayersSampleCorrection, CarpenterSampleCorrection, MultipleScatteringCorrection (numerical integration), and DiscusMultipleScatteringCorrection.

Introduction

Determination of the structure and/or dynamics of samples depends on the analysis of single scattering data. Small but unwanted higher-order scattering is always present although in many typical experiments multiple scattering effects are negligible. However, in some cases the data may contain a significant contribution from multiple scattering. In neutron scattering, the absorption cross-section is often much smaller than the scattering cross-section. For this reason it is necessary to account for multiple scattering events. Using the PPF notation from previously, the measured beam from \(S+C\) (neglecting multiple scattering and inelastic effects) is given as:

(12)\[ I^E_{S+C} = [I_SA_{S,SC} + I_CA_{C,SC} + I_{m,S+C}]\]

Thus, the multiple scattering is a parasitic signal that needs to be subtracted from the experimentally measured \(I^E\) intensity. To get an idea of when and why multiple scattering corrections are needed, let us define \(\sigma_n\) as the likelihood of a neutron being scattered \(n\) times. Then it is possible to show [6] that:

(13)\[ \sigma_m \sim (\frac{\sigma_s}{\sigma_t})^m\]

Where practical, the shape and thickness of a sample are carefully chosen to minimize as much unwanted multiple. This may be achieved by using a sample that is either [7]

  • Small in comparison with its mean free path.

  • Strongly absorbing (the absorption cross section is much greater than the scattering cross section. Usually this means the dimensions of a sample are chosen to ensure that between 10% and 20% of incident neutrons end up being scattered [8] ).

Increasing the absorption cross section is not always attainable - due to the type of material in question - or desirable, due to the accompanying intensity losses becoming overly prohibitive.

Theory

The figure shows how a general double scattering process might occur. The neutron travels a certain distance \(l_1\) through the sample before the first scattering event in the volume element \(dV_1\). The second scattering occurs in another volume element \(dV_2\) after a distance \(l_{12}\) has been traversed following which the neutron travels a final length \(l_2\) before leaving the sample and being picked up by a detector.

MultipleScatteringVolume.png

We define the multiple scattering intensity, \(I_m\), in terms of the total scattering intensity, \(I_{total}\), from \(n\) number of orders of scattering intensity, \(I_n\), as:

(14)\[\begin{split} I_{total} &= I_1 + I_2 + I_3 + ... + I_n \\ &= I_1 + \sum_{i=2}^{n} I_i \\ &= I_1 + I_m\end{split}\]

Then, we see that to compute the multiple scattering, we must compute \(n-1\) scattering intensity terms to subtract from the total, \(I_{total}\).

Let us first just consider the secondary scattering term, \(I_2\). We again assume we have a homogeneous sample of a given shape that is fully illuminated by the incident beam. Then, extending from Eq. (5), we have that the number of neutrons per unit solid angle scattered once by a volume element \(dV_1\) and then a second time by a volume element \(dV_2\) of the sample and seen by a detector is given by:

(15)\[dI_2(\theta_s) = J_0 \rho^2 \frac{d\sigma}{d\Omega} \left( \theta_1 \right) \frac{d\sigma}{d\Omega} \left( \theta_2 \right) \frac{exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_{12}) l_{12} + - \mu (\lambda_2) l_2 \right]}{l_{12}^2} dV dV\]

where \(\theta_1\) is the angle between the incident path and scatter path from \(dV_1\), \(\theta_2\) is the angle between scatter path from \(dV_1\) and scatter path from dV_2, \(\theta_s\) is the angle between the incident path and scatter path from \(dV_2\) to the detector, \(\mu_{12}\) is the scattered wavelength from volume element \(dV_1\), and the \(l_12\) term is due to the inverse square law (that as the distance increases between \(dV_1\) and \(dV_2\), the solid angle subtended by \(dV_2\) at \(dV_1\) decreases as the inverse square of \(l_{12}\)).

And the total secondary scattering intensity seen by a detector is:

(16)\[\begin{split}I_2(\theta_s) &= \int_{V} \int_{V} dI_2 \\ &= J_0 \rho^2 \frac{d\sigma}{d\Omega} \left( \theta_1 \right) \frac{d\sigma}{d\Omega} \left( \theta_2 \right) \int_{V} \int_{V} \frac{exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_{12}) l_{12} + - \mu (\lambda_2) l_2 \right]}{l_{12}^2} dV dV\end{split}\]

We can generalize this for \(i^{th}\) order of scatter terms as:

(17)\[dI_i(\theta_s) = J_0 \rho^n \prod_{j=1}^{i} \frac{d\sigma}{d\Omega} \left( \theta_j \right) \frac{exp \left[ -\mu (\lambda_1) l_1 + - \sum_{j=1}^{i-1} \mu (\lambda_{j,j+1}) l_{j,j+1} + - \mu (\lambda_i) l_i \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\]

and

(18)\[\begin{split}I_i(\theta_s) &= \int_V ... \int_V dI_i \\ &= J_0 \rho^n \prod_{j=1}^{i} \frac{d\sigma}{d\Omega} \left( \theta_j \right) \int_V ... \int_V \frac{exp \left[ -\mu (\lambda_1) l_1 + - \sum_{j=1}^{i-1} \mu (\lambda_{j,j+1}) l_{j,j+1} + - \mu (\lambda_i) l_i \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\end{split}\]

Which then the multiple scattering up to the \(n\) order scattering term is given as:

(19)\[\begin{split}I_m &= \sum_{i=2}^n I_i \\ &= \sum_{i=2}^{n} \int_V ... \int_V dI_i \\ &= \sum_{i=2}^{n} J_0 \rho^i \prod_{j=1}^{i} \frac{d\sigma}{d\Omega} \left( \theta_j \right) \int_V ... \int_V \frac{exp \left[ -\mu (\lambda_1) l_1 + - \sum_{j=1}^{i-1} \mu (\lambda_{j,j+1}) l_{j,j+1} + - \mu (\lambda_i) l_i \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\end{split}\]

Thus, some of the difficulties in correcting multiple scattering arises from:

  1. For each \(i^{th}\) order of scattering we must perform \(i\) volume integrals \(dV^{i}\) over the sample (although these terms tend to zero as explained in the introduction).

  2. Without the elastic scattering assumption, we need to know each emerging \(\lambda_i\) due to energy transfer of the \(i^{th}\) scattering event.

  3. Without the isotropic approximation, we need to know each \(\frac{d\sigma}{d\Omega} \left( \theta_i \right)\) of the \(i^{th}\) scattering event. This requires knowledge of \(\frac{d\sigma}{d\Omega}\), which is exactly what we are usually trying to measure (for diffraction)!

  4. It is arbitrary at which \(n^{th}\) order of scatter should the correction be cutoff.

  5. This kind of calculation is difficult for all but the simplest of geometries (i.e. cylindrical, planar and spherical) although Monte Carlo integration methods may be utilized for the multiple scattering calculations of more general shapes.

Assumptions

Elastic Scattering

To address (2) above, we can assume elastic scattering and then Eq. (19) becomes:

(20)\[ I_{m,elastic} = \sum_{i=2}^{n} J_0 \rho^i \prod_{j=1}^{i} \frac{d\sigma}{d\Omega} \left( \theta_j \right) \int_V ... \int_V \frac{exp \left[ -\mu (\lambda) \left( l_1 + \sum_{j=1}^{i-1} l_{j,j+1} + l_i \right) \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\]

Isotropic Scattering

To address (3) above, we can assume isotropic scattering and then Eq. (19) becomes:

(21)\[ I_{m,isotropic} = \sum_{i=2}^{n} J_0 \rho^i \left( \frac{\sigma}{4\pi} \right)^i \int_V ... \int_V \frac{exp \left[ -\mu (\lambda_1) l_1 + - \sum_{j=1}^{i-1} \mu (\lambda_{j,j+1}) l_{j,j+1} + - \mu (\lambda_i) l_i \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\]

Elastic + Isotropic Scattering

Combining both the elastic and isotropic assumptions, we have:

(22)\[ I_{m,elastic+isotropic} = \sum_{i=2}^{n} J_0 \rho^i \left( \frac{\sigma}{4\pi} \right)^i \int_V ... \int_V \frac{exp \left[ -\mu (\lambda) \left( l_1 + \sum_{j=1}^{i-1} l_{j,j+1} + l_i \right) \right]}{ \prod_{j=1}^{i-1} l_{j,j+1}^2} dV^{i}\]

Constant Ratio for \(\frac{I_n}{I_{n-1}} = \Delta\)

To address (4), a typical assumption in the analytical method [6] [9] approaches is to assume that the ratio \(\frac{I_n}{I_{n-1}}\) is a constant, \(\Delta\), thus:

(23)\[\frac{I_n}{I_{n-1}} = \frac{I_2}{I_1} = \Delta\]

Then, with the assumption that \(\Delta < 1\), Eq. (19) can be manipulated into a geometric series:

(24)\[\begin{split}I_m &= \sum_{i=2}^n I_i = \sum_{i=2}^n I_i \prod_{j=1}^{i-1} \frac{I_{j}}{I_{j}} = \sum_{i=2}^n I_i \frac{I_1}{I_{i-1}} \prod_{j=2}^{i-1} \frac{I_{j}}{I_{j-1}} \\ &= \sum_{i=2}^n I_1 \prod_{j=2}^{i} \frac{I_{j}}{I_{j-1}} = \sum_{i=2}^n I_1 \prod_{j=2}^{i} \Delta \\ &= I_1 \sum_{i=2}^n \Delta^{i-1}\end{split}\]

Similarly:

(25)\[I_m \Delta = I_1 \Delta \sum_{i=2}^n \Delta^{i-1} = I_1 \sum_{i=2}^n \Delta^{i}\]

Subtracting Eq. (25) from Eq. (24), we have:

(26)\[\begin{split} I_m - I_m \Delta &= I_1 \sum_{i=2}^n \Delta^{i-1} - I_1 \sum_{i=2}^n \Delta^{i} \\ &= I_1 (\Delta - \Delta^{n})\end{split}\]

Which, solving for \(I_m\) and based on the assumption \(\Delta < 1\), implying \(\Delta^n << \Delta\), we arrive at:

(27)\[\begin{split} I_m &= I_1 \frac{\Delta - \Delta^{n}}{1 - \Delta} \\ &\approx I_1 \frac{\Delta }{1 - \Delta}\end{split}\]

NOTE: Sears arrived at a separate equation for \(I_m\) based on flat plate samples but supposedly general enough for any shape sample: \(I_{m,Sears} = I_1 \left( \frac{exp(2\delta)-1}{2\delta} - 1 \right)\). However, comparisons of both equations for cylinders show that Eq. (27) is more accurate solution. [10]

From Eq. (27), we are left with calculating \(\Delta\):

(28)\[\begin{split} \Delta &= \frac{I_n}{I_{n-1}} = \frac{I_2}{I_1} \\ &= \frac{ J_0 \rho^2 \frac{d\sigma}{d\Omega} \left( \theta_1 \right) \frac{d\sigma}{d\Omega} \left( \theta_2 \right) \int_{V} \int_{V} \frac{exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_{12}) l_{12} + - \mu (\lambda_2) l_2 \right]}{l_{12}^2} dV dV } { J_0 \rho \frac{d\sigma}{d\Omega} \left( \theta_s \right) \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] dV } \\ &= \frac{ \rho \frac{d\sigma}{d\Omega} \left( \theta_1 \right) \frac{d\sigma}{d\Omega} \left( \theta_2 \right) \int_{V} \int_{V} \frac{exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_{12}) l_{12} + - \mu (\lambda_2) l_2 \right]}{l_{12}^2} dV dV } { \frac{d\sigma}{d\Omega} \left( \theta_s \right) \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] dV }\end{split}\]

Using the isotropic approximation, we arrive at:

(29)\[\begin{split} \Delta_{elastic} &= \frac{ \rho \left( \frac{\sigma_s}{4 \pi} \right)^2 \int_{V} \int_{V} \frac{exp \left[ -\mu (\lambda_1) l_1 + - \mu (\lambda_{12}) l_{12} + - \mu (\lambda_2) l_2 \right]}{l_{12}^2} dV dV } { \frac{\sigma_s}{4 \pi} \int_{V} exp \left[ -\mu (\lambda_1) l_1 + -\mu (\lambda_2) l_2 \right] dV } \\ &= \frac{ \rho \sigma_s A_2 }{ 4 \pi A_1 }\end{split}\]

where \(A_2\) is the secondary scattering absorption factor and \(A_1\) is the single scattering absorption factor, equivalent to \(A\) in Eq. (7). The absorption factors can be further simplified by using the elastic scattering assumption from Eq. (8).

We can now begin to solve for \(I_m\) by taking Eq. (27) and substituting this into Eq. (14):

(30)\[\begin{split}I_{total} &= I_1 + I_m \\ &= I_1 + I_1 \frac{\Delta }{1 - \Delta} \\ &= I_1 \left( 1 + \frac{\Delta }{1 - \Delta} \right) \\ &= I_1 \left( \frac{1}{1 - \Delta} \right) \\\end{split}\]

Solving this for \(I_1\), we see that:

(31)\[\begin{split}I_1 &= I_{total} \left( 1 - \Delta \right) \\ &= I_{total} - I_{total} \Delta\end{split}\]

Thus, comparing Eq. (31) and Eq. (29) with Eq. (14), we see that:

(32)\[\begin{split}I_m &= I_{total} \Delta \\ &= I_{total} \frac{ \rho V \sigma_s A_2 }{ 4 \pi A_1 }\end{split}\]

General Notes

Analytical Methods

The analytical approach has been further extended in a number of ways:

  1. The beam profile (and similarly the detector visibility of the sample) can also be included to accommodate partial illumination of the sample by the beam by means of a convolution function for the shape of the profile. [10]

  2. The isotropic approximation can be relaxed, giving anisotropic scattering for the single scattering term \(I_1\) in Eq. (21). This can be realized by either producing a solvable equation for \(\frac{d\sigma}{d\Omega}\) [6] or by using a model equation for \(\frac{d\sigma}{d\Omega}\). [11]

  3. The constant ratio assumption can be tested by computing the higher orders of scattering terms with comparison to Monte Carlo (for flat plate and cylinder comparisons to Monte Carlo, see [12]).

Monte Carlo Methods

Monte Carlo approaches are a “brute force” technique that does require more computational time than the analytical approaches yet does not suffer many of the drawbacks to the analytical approach. Such drawbacks included assumptions of isotropic scattering required to formulate the solvable equations, not being able to include the intermediate energy transfers for scattering, and easier flexibility to handle complicated shapes for sample, container, and/or sample environments.

In the Monte Carlo ray tracing technique, a virtual experiment is performed such that individual neutrons are put on a trajectory through a model of the instrument with scattering kernels defined for samples, containers, and other components of the instrument. Neutron histories are recorded so there is a clear distinction between single and multiple scattered neutrons and the multiple scattering correction is easily obtained from the result.

Small Angle Scattering

In some areas, such as small angle scattering, there may be useful approximations that can be applied that are not present for the more general wide angle scattering case. Again matters may become complicated, as for example small angle scatter followed by incoherent scatter from hydrogen can be more significant in blurring sharp features than double small angle scatter. For early considerations of multiple small angle scattering see for example [13] [14].

Legends for Multiple Scattering Correction Algorithms in Mantid Table

Indicates the energy modes that the algorithm can accommodate:

Legend for Energy Mode

E

Elastic

D

Direct

I

Indirect

Indicates the technique used for calculating the absorption correction:

Legend for Technique

NI

Numerical Integration

MC

Monte Carlo

Options that describe what functions the algorithm is capable of, assumptions, and the output types:

Functions

L

Loads correction from file

FI

Full illumination of sample by beam

PI

Full or partial illumination of sample by beam

W

Outputs a corrected sample workspace

IA

Isotropic assumption is used for all orders of scattering

EA

Elastic scattering assumption is used

Multiple Scattering Correction Algorithms in Mantid Table

Algorithm

Energy Mode

Technique

Geometry

Input Units

Functions

Notes

CalculateCarpenterSampleCorrection

E

A

Cylinder

Wavelength

IA,EA,FI

Only applicable to Vanadium
In-plane only

CarpenterSampleCorrection

E

A

Cylinder

Wavelength

IA,EA,FI,W

Only applicable to Vanadium
In-plane only

DiscusMultipleScatteringCorrection

E,D,I

MC

Any Shape

Momentum (elastic) DeltaE (inelastic)

FI

Based on Monte Carlo program DISCUS [16] (or MINUS). [17]
This algorithm shares a similar heritage to MuscatData\MuscatFunc (see below)
It has been ported to C++ and integrated in to the Mantid framework featuring:
- Mantid geometry (mesh\CSG shape descriptions)
- multi-threading for reduced run times
- spatial interpolation and wavelength interpolation

LoadMcStas

E,D,I

MC

Any Shape

L

Loads McStas [15] v2.1 histogram or event data files.
Can extract multiple scattering and subtract from scattering in Mantid

LoadMcStasNexus

E,D,I

MC

Any Shape

L

Loads McStas [15] v2.0 histogram data files.
Can extract multiple scattering and subtract from scattering in Mantid

MayersSampleCorrection

E

NI+MC

Cylinder

TOF

IA,EA,FI,W

Uses Monte Carlo integration to evaluate the analytical integral.

MultipleScatteringCorrection

E

NI

Any shape

Wavelength

FI,IA,EA

MuscatData

I

MC

Cylinder or Flat Plate / Slab

\(S(Q,\omega)\)

FI

Uses an input \(S(Q,\omega)\) workspace created by SofQW
Based on Monte Carlo program DISCUS [16] (or MINUS) written in FORTRAN. [17]
Pre-compiled and imported into Mantid via f2py (only for Windows, NumPy=1.9.3)

MuscatFunc

I

MC

Cylinder or Flat Plate / Slab

\(S(Q,\omega)\)

FI

Uses special functions to represent \(S(Q,\omega)\)
Based on Monte Carlo program DISCUS [16] (or MINUS) written in FORTRAN. [17]
Pre-compiled and imported into Mantid via f2py (only for Windows, NumPy=1.9.3)

VesuvioCalculateMS

I

MC

Flat Plate / Slab

TOF

FI

Monte Carlo ray tracing algorithm for deep inelastic neutron scattering.
Calculates both total and multiple scattering output workspaces. Specific to
Vesuvio but possibly general.

References

Category: Concepts