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

EQSANSDarkCurrentSubtraction v2

Summary

Perform EQSANS dark current subtraction.

Properties

Name

Direction

Type

Default

Description

InputWorkspace

Input

MatrixWorkspace

Mandatory

Filename

Input

string

Mandatory

The name of the input event Nexus file to load as dark current. Allowed extensions: [‘_event.nxs’]

OutputWorkspace

Output

MatrixWorkspace

Mandatory

PersistentCorrection

Input

boolean

True

If true, the algorithm will be persistent and re-used when other data sets are processed

ReductionProperties

Input

string

__sans_reduction_properties

OutputDarkCurrentWorkspace

Output

MatrixWorkspace

OutputMessage

Output

string

Description

Subtract the dark current from an EQSANS data set. This algorithm is rarely called directly. It is called by SANSReduction.

This workflow algorithm will:

  • Properly load the dark current data set

  • Normalize the dark current to the data taking period

  • Subtract the dark current from the input workspace

The dark current is subtracted pixel by pixel by normalizing the dark current data by counting time. The total number of dark current counts \(N_{dc}(i)\) for each pixel i is obtained by integrating over all time of flight bins. For a given pixel and wavelength bin, the corrected signal is given by:

\(I'(i,\lambda_j)=I_{data}(i,\lambda_j)-N_{dc}(i) \ \ \frac{T_{data}}{T_{dc}} \ \ \frac{t_{frame}-t^{low}_{cut} - t^{high}_{cut}}{t_{frame}} \ \ \frac{\Delta\lambda_j}{\lambda_{max}-\lambda_{min}}\)

where the T-values are the counting times for the data set and the dark current (dc). The \(t_{cut}\) values are the TOF cuts at the beginning and end of a frame. \(t_{frame}\) is the width of a frame. \(\Delta\lambda_j\) is the width of the wavelength bin we are considering.

Categories: AlgorithmIndex | Workflow\SANS\UsesPropertyManager

Source

C++ header: EQSANSDarkCurrentSubtraction2.h

C++ source: EQSANSDarkCurrentSubtraction2.cpp