mantidproject / mantidimaging

Graphical toolkit for neutron imaging.
https://mantidproject.github.io/mantidimaging
GNU General Public License v3.0
13 stars 6 forks source link

Overlap Correction #2115

Open JackEAllen opened 7 months ago

JackEAllen commented 7 months ago

Desired Behaviour

Experiments using a pulsed neutron source, for example, require coverage of a wide range of energies and event overlaps can alter the measured transmission spectrum.

Where the intensity variation within each individual shutter of the cyclic process is possible i.e. the intensity distribution of incoming flux repeats for the shutters within a repetitive process, overlap correction is possible.

The main advantage gained from using overlap correction, is that experiments are not required to decrease the intensity of incoming flux, nor split the acquisition into multiple intervals which would cause unavoidable dead time between them as overlaps will be tolerated and corrected for.

Overlap correction is a post-experimental data correction performed when the input fluxes are periodic, accurately restoring the input flux up to a very large fraction of pixels (up to ~90%) occupied by the end of the acquisition shutter which leads to large distortions of measured timing characteristics of the input flux.

For TimePix detectors such as the MCP where the input signal is periodic, overlap correction can be applied.

Reconstruction of the input signal in an experiment with high event overlap rates will involve some compromise: high input rates with lower dead times can be detected, but detection efficiency of acquisition gradually degrades for the events coming at the latter part of acquisition shutter.

Overlap correction is required by IMAT for all experiments using the MCP detector unless wishing to just view frames in raw data.

Calculating Overlap Correction

Parameters:

Timepix data saved with some histogrammed distribution of incoming intensity $N(t_i)$, where $(t_i)$ is the time within the shutter or time relative to the trigger synchronised to the cycle start time. The probability $P(t_i)$ that a Timepix pixel is already occupied processing an event, and cannot detect any other incoming events until the frame is read out can be calculated using the following equation for the m-th shutter within the cycle only in this example, within a sequence of n-shutters cycle:

$$ P(ti) = \frac{\sum{j=0}^{j=i}N(t_j)}{S^m}, i > 1; P(t_0) = 0 $$

The probability of the event detection for the time $(t_i)$ is then $(1 - P(t_i))$. The number of events $n'(t_i)$ which should have been detected if the Timepix was capable of multiple events per shutter can be calculated from:

$$ N'(t_i) = \frac{N(t_i)}{(1 - P(t_i))}, i > 1; N'(t_0) = N(t_0) $$

There will be an apparent reduction of detection efficiency $QE'(t_i)$ towards the end of the acquisition shutter as pixels will get occupied by the previous events:

$$ QE'(t_i) = QE(t_i) (1 - P(t_i)), i > 1 $$

PLEASE NOTE: Users will need to optimise shutter for each experiment to cater for reduction for detection efficiency.

Out of Scope

In Scope

Current Behaviour

Mantid Imaging does not support overlap correction. An implementation of overlap correction written in C++ is used by IMAT. This code was not written by ISIS and is not supported.

Additional Resources

Located in Sharepoint Example Data within the folder Overlap_correction:

References

Overlap Correction Algorithm taken from: Optimization of Timepix count rate capabilities for the applications with a periodic input signal - doi:10.1088/1748-0221/9/05/C05026

JackEAllen commented 23 hours ago

IMAT seem to be happy with #2332 Now we need to decide how we load log files as part of incorporating the standalone script more permanently into MI