\(\renewcommand\AA{\unicode{x212B}}\)
UnwrapMonitor v1¶
Summary¶
Takes an input workspace that contains ‘raw’ data, unwraps the data according to the reference flightpath provided and converts the units to wavelength.The output workspace will have common bins in the maximum theoretical wavelength range.
See Also¶
Properties¶
Name 
Direction 
Type 
Default 
Description 

InputWorkspace 
Input 
Mandatory 
A workspace with x values in units of TOF and y values in counts 

OutputWorkspace 
Output 
Mandatory 
The name of the workspace to be created as the output of the algorithm 

LRef 
Input 
number 
Mandatory 
The length of the reference flight path (in metres) 
JoinWavelength 
Output 
number 
Description¶
This algorithm is for use with whitebeam instruments with choppers. The chopper cuts the range of wavelengths, so all detectors (including monitors) should be reduced to the same wavelength range. This is done using a “reference” flightpath, \(L_{ref}\), which is (usually, see below) the flightpath of the farthest detectors.
If \(T_{min}\) and \(T_{max}\) are the beginning and end of the frame, for each detector \(D\) at total flightpath \(L_d\) the following times are defined:
Thus if \(L_d < L_{ref}\) then \(T_1 > T_2\)
Neutron velocities (and hence wavelengths) for the detector \(D\) are calculated in the following way:
For \(T_{min} < T < T_2\), velocities are calculated in the usual way, i.e. \(v = \frac{L_d}{T}\)
Data in the range \(T_2 < T < T_1\) are ignored (i.e. they are not used in the wavelengthconverted histograms)
For \(T_1 < T < T_{max}\), velocities are calculated using the formula \(v = \frac{L_d}{T  T_{max} + T_{min}}\)
Note that the minimum and maximum velocities for the points that are actually used are:
and \(v_{min} = \frac{L_d}{T_2} = \frac{L_{ref}}{T_{max}}\)
In other words, these velocities are the same for all detectors, so the wavelength range in the transformed histogram will correspondingly be the same and this algorithm rebins the data into common bins in this range.
Occasionally, it may be that some detectors (typically downstream monitors) may be at a *longer* flightpath than \(L_{ref}\). This depends entirely on the chopper aperture/setting. These detectors are “frameoverlapped”  in other words, there is an ambiguity in the definition of the wavelength for certain points, which should therefore be excluded. These points are at the very beginning and at the very end of the frame for a range \(Dt\) (equal on both sides) given by
In other words, points between \(T_{min}\) and \(T_{min} + D_t\) and between \(T_{max}  D_t\) and \(T_{max}\) should be excluded. For all other points, velocities and wavelengths are calculated in the normal way.
Note that since we are dealing with histogrammed data, the cutoff values above will almost certainly not fall exactly on a bin boundary. The approach taken by this algorithm is that if any part of a bin has a value that should be excluded, then the entire bin is excluded. What this means in practice is that the edge bins will possibly have a reduced number of counts.
Restrictions on the Input Workspace¶
The input workspace must contain histogram data where the X unit is timeofflight and the Y data is raw counts. The instrument associated with the workspace must be fully defined because detector, source & sample position are needed.
Child Algorithms Used¶
If the input workspace contains more than a single spectrum, Unwrap makes use of the rebin algorithm to set the bins on the output workspace to common values which cover the maximum theoretically accessible wavelength range.
Usage¶
Example  unwrapping a raw workspace.
# Create a raw data workspace.
ws = CreateSampleWorkspace()
# The result variable will contain a tuple: (OutputWorkspace, JoinWaveLength)
# To access individual outputs use result[i] where i is the index of the required output.
result = UnwrapMonitor(InputWorkspace=ws,LRef=11)
print("JoinWaveLength is: " + str(result[1]))
Output:
JoinWaveLength is: 1.4241722...
Categories: AlgorithmIndex  CorrectionFunctions\InstrumentCorrections
Source¶
C++ header: UnwrapMonitor.h
C++ source: UnwrapMonitor.cpp