ExponentialCorrection v1¶
Summary¶
Corrects the data in a workspace by the value of an exponential function which is evaluated at the X value of each data point.
See Also¶
MagFormFactorCorrection, PowerLawCorrection, OneMinusExponentialCor, PolynomialCorrection
Properties¶
Name |
Direction |
Type |
Default |
Description |
---|---|---|---|---|
InputWorkspace |
Input |
Mandatory |
The name of the workspace to apply the correction to. |
|
OutputWorkspace |
Output |
Mandatory |
The name to use for the corrected workspace (can be the same as the input one). |
|
C0 |
Input |
number |
1 |
The value by which the entire exponent calculation is multiplied. |
C1 |
Input |
number |
0 |
The value by which the x value is multiplied prior to exponentiation. |
Operation |
Input |
string |
Divide |
Whether to divide (the default) or multiply the data by the correction function. Allowed values: [‘Multiply’, ‘Divide’] |
Description¶
This algorithm corrects the data and error values on a workspace by the
value of an exponential function of the form
Usage¶
Example - ExponentialCorrection with divide & multiply.
ws = CreateSampleWorkspace()
print("The first Y value before correction is: {}".format((ws.dataY(0)[1])))
# By default, the Divide operation is used to correct the data.
# The result is saved into another workspace, which can also be itself.
ws_divide = ExponentialCorrection(InputWorkspace=ws,C0=2.0,C1=1.0,Operation="Divide")
ws_multiply = ExponentialCorrection(InputWorkspace=ws,C0=2.0,C1=1.0,Operation="Multiply")
print("The first Y value after divide correction is: {:.11e}".format(ws_divide.dataY(0)[1]))
print("The first Y value after multiply correction is: {:.11e}".format(ws_multiply.dataY(0)[1]))
Output:
The first Y value before correction is: 0.3
The first Y value after divide correction is: 2.91363959286e+129
The first Y value after multiply correction is: 3.08892013345e-131
Categories: AlgorithmIndex | CorrectionFunctions
Source¶
C++ header: ExponentialCorrection.h
C++ source: ExponentialCorrection.cpp