\(\renewcommand\AA{\unicode{x212B}}\)
PowerLawCorrection v1¶
Summary¶
Corrects the data and error values on a workspace by the value of an exponential function which is evaluated at the X value of each data point: c0*x^C1. The data and error values are multiplied by the value of this function.
See Also¶
PolynomialCorrection, OneMinusExponentialCor, MagFormFactorCorrection, ExponentialCorrection
Properties¶
Name 
Direction 
Type 
Default 
Description 

InputWorkspace 
Input 
Mandatory 
The name of the input workspace 

OutputWorkspace 
Output 
Mandatory 
The name to use for the output workspace (can be the same as the input one). 

C0 
Input 
number 
1 
The value by which the entire calculation is multiplied 
C1 
Input 
number 
1 
The power by which the x value is raised 
Description¶
This algorithm corrects the data and error values on a workspace by the value of an function of the form \(C0 \times x^{C1}\). This formula is calculated for each data point, with the value of x being the midpoint of the bin in the case of histogram data. The data and error values are multiplied by the value of this function.
Usage¶
Example  A sample correction
# a sample workspace with a sample instrument
ws = CreateSampleWorkspace(Function="Flat background")
#Now we are ready to run the correction
wsCorrected = PowerLawCorrection(ws,C0=3,C1=2)
print("The correction counts and errors are multiplied by function 3*x^2")
for i in range(0,wsCorrected.blocksize(),10):
print ("The correct value in bin {} is {:.2f} compared to {:.2f}".format(i, wsCorrected.readY(0)[i], ws.readY(0)[i]))
Output:
The correction counts and errors are multiplied by function 3*x^2
The correct value in bin 0 is 30000.00 compared to 1.00
The correct value in bin 10 is 13230000.00 compared to 1.00
The correct value in bin 20 is 50430000.00 compared to 1.00
The correct value in bin 30 is 111630000.00 compared to 1.00
The correct value in bin 40 is 196830000.00 compared to 1.00
The correct value in bin 50 is 306030000.00 compared to 1.00
The correct value in bin 60 is 439230000.00 compared to 1.00
The correct value in bin 70 is 596430000.00 compared to 1.00
The correct value in bin 80 is 777630000.00 compared to 1.00
The correct value in bin 90 is 982830000.00 compared to 1.00
Categories: AlgorithmIndex  CorrectionFunctions
Source¶
C++ header: PowerLawCorrection.h
C++ source: PowerLawCorrection.cpp