Table of Contents
Performs initial energy transfer reduction for ILL indirect geometry data, instrument IN16B.
Name | Direction | Type | Default | Description |
---|---|---|---|---|
Run | Input | list of str lists | Mandatory | File path of run (s). Allowed values: [‘nxs’] |
MapFile | Input | string | Filename of the detector grouping map file to use. By default all the pixels will be summed per each tube. Use .map or .xml file (see GroupDetectors documentation) only if different range is needed for each tube. Allowed values: [‘map’, ‘xml’] | |
ManualPSDIntegrationRange | Input | int list | 1,128 | Integration range of vertical pixels in each PSD tube. By default all the pixels will be summed per each tube. Use this option if the same range (other than default) is needed for all the tubes. |
Analyser | Input | string | silicon | Analyser crystal. Allowed values: [‘silicon’] |
Reflection | Input | string | 111 | Analyser reflection. Allowed values: [‘111’, ‘311’] |
CropDeadMonitorChannels | Input | boolean | False | Whether or not to exclude the first and last few channels with 0 monitor count in the energy transfer formula. |
OutputWorkspace | Output | WorkspaceGroup | Mandatory | Group name for the reduced workspace(s). |
SpectrumAxis | Input | string | SpectrumNumber | The spectrum axis conversion target. Allowed values: [‘SpectrumNumber’, ‘2Theta’, ‘Q’, ‘Q2’] |
This is a part of multi-algorithm reduction workflow for IN16B indirect geometry instrument at ILL. It handles the first steps of the reduction chain, such as grouping of the detectors, normalizing to monitor dependent on the reduction type. It performs transformation of the axes; x-axis from channel number to energy transfer, and optionally y-axis to scattering angle or elastic momentum transfer. It handles automatically all three types of data (QENS, EFWS, IFWS) recorded with or without mirror sense. Note, that following the standard, the Unit for energy transfer (DeltaE) will be mili-elevtron-volts (mev). This algorithm is intended to handle only single file at a time, although if multiple files are given, they will be automatically summed at raw level, i.e. while loading. In this case MergeRuns algorithm will be invoked, which will forbid the merges across different types of data (e.g. different mirror senses, doppler energy or velocity profiles). Note, that this algorithm is compatible with the data recorded from 03.2014 onwards (i.e. where Doppler’s mirror_sense, maximum_delta_energy and velocity_profile entries are defined in .nxs files). It returns a WorkspaceGroup, containing one (no mirror sense) or two workspaces (with mirror sense) for left and right wings respectively. This algorithm is not intended to be used directly by the end users. Instead it is used as a child algorithm by IndirectILLReductionQENS and IndirectILLReductionFWS for QENS and FWS type of reductions correspondingly.
Example - IndirectILLEnergyTransfer : QENS data without mirror sense
ws = IndirectILLEnergyTransfer(Run='ILL/IN16B/090661.nxs')
print "Reduced workspace has %d wing" % ws.getNumberOfEntries()
print "which has %d spectra" % ws.getItem(0).getNumberHistograms()
print "and %d bins" % ws.getItem(0).blocksize()
Output:
Reduced workspace has 1 wing
which has 18 spectra
and 1024 bins
Example - IndirectILLEnergyTransfer : QENS data with mirror sense
ws = IndirectILLEnergyTransfer(Run='ILL/IN16B/136553:136555.nxs', CropDeadMonitorChannels=True)
print "Reduced workspace has %d wings" % ws.getNumberOfEntries()
print "which have %d spectra" % ws.getItem(0).getNumberHistograms()
print "and %d bins" % ws.getItem(0).blocksize()
Output:
Reduced workspace has 2 wings
which have 18 spectra
and 1017 bins
Categories: Algorithms | Workflow\MIDAS | Workflow\Inelastic | Inelastic\Indirect | Inelastic\Reduction | ILL\Indirect
Python: IndirectILLEnergyTransfer.py