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 ( )¶
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:
where
Scattering cross section ( )¶
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
Measure the sample and integrate over all
(very difficult to do exactly since instruments typically cannot cover all of ).Perform a transmission measurement to directly measure
and subtract a known value for (also not typical).Use tabulated single atom values for
[1] (bingo!).
For the energies used to measure structure of materials,
Absorption cross section ( )¶
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
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
Attenuation Length ( )¶
The attenuation length is defined as:
where
The definition of
Techniques for Calculating Corrections¶
Methods for calculating the absorption corrections (and also the multiple scattering) generally fall into these categories:
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
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
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
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¶

Enable :plots: using DOCS_PLOTDIRECTIVE in CMake¶
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,
Basic Sample Absorption Theory¶
The figure shows how a general single scattering process might occur. The neutron travels
a certain distance

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
where
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
In the last part of the equation for
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
For elastic scattering,
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 (
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:
experimental intensity from the isolated container. theoretical intensity from the isolated container. 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:
experimentally measured intensity from . theoretical intensity from the isolated sample. theoretical intensity from the isolated container. theoretical intensity from the correlated sample and container interface. is the absorption factor for scattering in the sample region and absorption by the sample and container. is the absorption factor for scattering in the container region and absorption by the sample and container. 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:
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
as and , respectively. These can then be included into Eq. (7) as:
where
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++ |
Calculates full set of partial absorption corrections ( |
Absorption Correction Algorithms in Mantid Table¶
Algorithm |
Energy Mode |
Technique |
Geometry |
Input Units |
Functions |
Notes |
---|---|---|---|---|---|---|
E,D,I |
NI |
Any Shape |
Wavelength |
A,PI |
Approximates sample shape using cuboid mesh of given element size
Base class: AbsorptionCorrection
|
|
E,D,I |
MC |
Annular / Hollow Cylinder |
Wavelength |
A,PI |
Wrapper for MonteCarloAbsorption for hollow cylindrical sample |
|
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
|
|
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
|
||
E |
A |
Cylinder |
Wavelength |
A,MS,FI |
Only applicable to Vanadium
In-plane only
|
|
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)
|
|
E |
A |
Cylinder |
Wavelength |
A,MS,FI,W |
Calls CalculateCarpenterSampleCorrection
|
|
E,D,I |
NI |
Cuboid section in Any Shape sample |
Wavelength |
A,PI |
Base class: AbsorptionCorrection via wrapping via wrapping FlatPlateAbsorption |
|
E,D,I |
NI |
Cylinder |
Wavelength |
A,FI |
Base class: AbsorptionCorrection |
|
E,D,I |
NI |
Cylinder |
Wavelength |
A++,PI |
in-plane only |
|
E,D,I |
NI |
Flat Plate / Slab |
Wavelength |
A,FI |
Base class: AbsorptionCorrection |
|
E,D,I |
NI |
Flat Plate / Slab |
Wavelength |
A++,FI |
||
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
|
|
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.
|
|
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.
|
|
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.
|
|
E |
NI |
Cylinder |
TOF |
A,MS,FI,W |
||
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
|
|
E, EI |
||||||
E |
NI |
Any Shape
|
Wavelength
|
A++,PI |
Calculates Paalman Pings partial absorption factors based on AbsorptionCorrection
|
|
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
|
|
E |
MC |
Any Shape |
N/A |
L |
Simply reads in pre-computed
external Monte Carlo program. Uses LoadAscii
|
|
E,D,I |
MC |
Cylinder or
Flat Plate / Slab or
Annular / Hollow Cylinder
|
Wavelength |
A,PI |
Wrapper for MonteCarloAbsorption for 3 shape types
|
|
E |
NI |
Sphere |
Wavelength |
A,FI,W |
Wrapper around AnvredCorrection |
Multiple Scattering¶

Enable :plots: using DOCS_PLOTDIRECTIVE in CMake¶
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
Thus, the multiple scattering is a parasitic signal that needs to be subtracted from the experimentally measured
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

We define the multiple scattering intensity,
Then, we see that to compute the multiple scattering, we must compute
Let us first just consider the secondary scattering term,
where
And the total secondary scattering intensity seen by a detector is:
We can generalize this for
and
Which then the multiple scattering up to the
Thus, some of the difficulties in correcting multiple scattering arises from:
For each
order of scattering we must perform volume integrals over the sample (although these terms tend to zero as explained in the introduction).Without the elastic scattering assumption, we need to know each emerging
due to energy transfer of the scattering event.Without the isotropic approximation, we need to know each
of the scattering event. This requires knowledge of , which is exactly what we are usually trying to measure (for diffraction)!It is arbitrary at which
order of scatter should the correction be cutoff.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:
Isotropic Scattering¶
To address (3) above, we can assume isotropic scattering and then Eq. (19) becomes:
Elastic + Isotropic Scattering¶
Combining both the elastic and isotropic assumptions, we have:
Constant Ratio for ¶
To address (4), a typical assumption in the analytical method [6] [9] approaches is to assume that the ratio
Then, with the assumption that
Similarly:
Subtracting Eq. (25) from Eq. (24), we have:
Which, solving for
NOTE: Sears arrived at a separate equation for
From Eq. (27), we are left with calculating
Using the isotropic approximation, we arrive at:
where
We can now begin to solve for
Solving this for
Thus, comparing Eq. (31) and Eq. (29) with Eq. (14), we see that:
General Notes¶
Analytical Methods¶
The analytical approach has been further extended in a number of ways:
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 isotropic approximation can be relaxed, giving anisotropic scattering for the single scattering term
in Eq. (21). This can be realized by either producing a solvable equation for [6] or by using a model equation for . [11]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 |
---|---|---|---|---|---|---|
E |
A |
Cylinder |
Wavelength |
IA,EA,FI |
Only applicable to Vanadium
In-plane only
|
|
E |
A |
Cylinder |
Wavelength |
IA,EA,FI,W |
Only applicable to Vanadium
In-plane only
|
|
E,D,I |
MC |
Any Shape |
Momentum (elastic) DeltaE (inelastic) |
PI |
Based on Monte Carlo program DISCUS [16] (or MINUS).
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
|
|
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
|
||
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
|
||
E |
NI+MC |
Cylinder |
TOF |
IA,EA,FI,W |
Uses Monte Carlo integration to evaluate the analytical integral. |
|
E |
NI |
Any shape |
Wavelength |
FI,IA,EA |
||
I |
MC |
Flat Plate / Slab |
TOF |
IA,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