\(\renewcommand\AA{\unicode{x212B}}\)
Table of Contents
Performs k_i/k_f multiplication, in order to transform differential scattering cross section into dynamic structure factor.
Name | Direction | Type | Default | Description |
---|---|---|---|---|
InputWorkspace | Input | MatrixWorkspace | Mandatory | Name of the input workspace |
OutputWorkspace | Output | MatrixWorkspace | Mandatory | Name of the output workspace, can be the same as the input |
EMode | Input | string | Direct | The energy mode (default: Direct). Allowed values: [‘Direct’, ‘Indirect’] |
EFixed | Input | number | Optional | Value of fixed energy in meV : EI (EMode=Direct) or EF (EMode=Indirect) . |
Performs ki / kf multiplication, in order to transform differential scattering cross section into dynamic structure factor. Both Ei and Ef must be positive. However, if this requirement is not met, it will give an error only if the data is not 0. This allows applying the algorithms to rebinned data, where one can rebin in Direct EMode to energies higher than EFixed. If no value is defined for EFixed, the algorithm will try to find Ei in the workspace properties for direct geometry spectrometry, or in the instrument definition, for indirect geometry spectrometry. Algorithm is event aware. TOF events will be changed to weighted events.
Example
ws = CreateSampleWorkspace()
ws = ConvertUnits(ws,"DeltaE",EMode="Direct", EFixed=7.5)
wsOut = CorrectKiKf(ws, EMode="Direct", EFixed=7.5)
print("First five bins:")
print("index orig corrected")
for i in range(5):
print(" %i %.2f %.2f" %
(i,ws.readY(0)[i],wsOut.readY(0)[i]))
Output:
First five bins:
index orig corrected
0 0.30 0.01
1 0.30 0.02
2 0.30 0.04
3 0.30 0.05
4 0.30 0.07
Categories: AlgorithmIndex | Inelastic\Corrections | CorrectionFunctions\SpecialCorrections
C++ header: CorrectKiKf.h (last modified: 2020-03-25)
C++ source: CorrectKiKf.cpp (last modified: 2020-04-07)