\(\renewcommand\AA{\unicode{x212B}}\)
CylinderPaalmanPingsCorrection v2¶
Summary¶
Calculates absorption corrections for a cylindrical or annular sample using Paalman & Pings format.
Properties¶
Name 
Direction 
Type 
Default 
Description 

SampleWorkspace 
Input 
Mandatory 
Name for the input Sample workspace. 

SampleChemicalFormula 
Input 
string 
Sample chemical formula 

SampleCoherentXSection 
Input 
number 
0 
The coherent crosssection for the sample material in barns. To be used instead of Chemical Formula. 
SampleIncoherentXSection 
Input 
number 
0 
The incoherent crosssection for the sample material in barns. To be used instead of Chemical Formula. 
SampleAttenuationXSection 
Input 
number 
0 
The absorption crosssection for the sample material in barns. To be used instead of Chemical Formula. 
SampleDensityType 
Input 
string 
Mass Density 
Use of Mass density or Number density for the sample. Allowed values: [‘Mass Density’, ‘Number Density’] 
SampleNumberDensityUnit 
Input 
string 
Atoms 
Choose which units SampleDensity refers to. Allowed values: [Atoms, Formula Units]. Allowed values: [‘Atoms’, ‘Formula Units’] 
SampleDensity 
Input 
number 
0.1 
The value for the sample Mass density (g/cm^3) or Number density (1/Angstrom^3). 
SampleInnerRadius 
Input 
number 
0.05 
Sample inner radius 
SampleOuterRadius 
Input 
number 
0.1 
Sample outer radius 
CanWorkspace 
Input 
Name for the input Can workspace. 

CanChemicalFormula 
Input 
string 
Can chemical formula 

CanCoherentXSection 
Input 
number 
0 
The coherent crosssection for the can material in barns. To be used instead of Chemical Formula. 
CanIncoherentXSection 
Input 
number 
0 
The incoherent crosssection for the can material in barns. To be used instead of Chemical Formula. 
CanAttenuationXSection 
Input 
number 
0 
The absorption crosssection for the can material in barns. To be used instead of Chemical Formula. 
CanDensityType 
Input 
string 
Mass Density 
Use of Mass density or Number density for the can. Allowed values: [‘Mass Density’, ‘Number Density’] 
CanNumberDensityUnit 
Input 
string 
Atoms 
Choose which units CanDensity refers to. Allowed values: [Atoms, Formula Units]. Allowed values: [‘Atoms’, ‘Formula Units’] 
CanDensity 
Input 
number 
0.1 
The value for the can Mass density (g/cm^3) or Number density (1/Angstrom^3). 
CanOuterRadius 
Input 
number 
0.15 
Can outer radius 
BeamHeight 
Input 
number 
3 
Beam height 
BeamWidth 
Input 
number 
2 
Beam width 
StepSize 
Input 
number 
0.002 
Step size 
Interpolate 
Input 
boolean 
True 
Interpolate the correction workspaces to match the sample workspace 
NumberWavelengths 
Input 
number 
10 
Number of wavelengths for calculation 
Emode 
Input 
string 
Elastic 
Energy transfer mode. Allowed values: [‘Elastic’, ‘Indirect’, ‘Direct’, ‘Efixed’] 
Efixed 
Input 
number 
0 
Analyser energy (mev). By default will be read from the instrument parameters. Specify manually to override. This is used in energy transfer modes other than Elastic. 
OutputWorkspace 
Output 
WorkspaceGroup 
Mandatory 
The output corrections workspace group 
Description¶
Calculates absorption corrections for a cylindrical or annular sample giving output in the Paalman and Pings absorption factors: \(A_{s,s}\) (correction factor for scattering and absorption in sample), \(A_{s,sc}\) (scattering in sample and absorption in sample and container), \(A_{c,sc}\) (scattering in container and absorption in sample and container) and \(A_{c,c}\) (scattering and absorption in container). This uses the equations from Kendig Pings 1965 which account for partially illuminated samples.
Restrictions on the input workspace¶
The input workspace must have a fully defined instrument.
Energy transfer modes¶
The algorithm operates in different energy transfer modes, where the incident (\(\lambda_1\)) and the final (\(\lambda_2\)) wavelengths are defined as follows:
Elastic : \(\lambda_1 = \lambda_2 = \lambda_{step}\)
Direct : \(\lambda_1 = \lambda_{fixed}, \lambda_2 = \lambda_{step}\)
Indirect : \(\lambda_1 = \lambda_{step}, \lambda_2 = \lambda_{fixed}\)
Efixed : \(\lambda_1 = \lambda_2 = \lambda_{fixed}\),
where \(\lambda_{fixed}\) is computed from the Efixed value corresponding to the monochromator or the analyser, and \(\lambda_{step}\) iterates equidistantly over the wavelength points in the input workspace xaxis, controlled by NumberWavelengths property.
Therefore, in all the modes except Efixed, the input workspaces must have the xaxis unit of Wavelength. In all the modes except Elastic, Efixed value is needed. By default it will be attempted to be read from the instrument parameters, but can be overridden by the homonym property. In the Efixed mode the NumberWavelengths and Interpolate options will be ignored.
Usage¶
Example:
# Create a sample workspace
sample = CreateSampleWorkspace(NumBanks=1, BankPixelWidth=1,
XUnit='Wavelength',
XMin=6.8, XMax=7.9,
BinWidth=0.1)
# Copy and scale it to make a can workspace
can = CloneWorkspace(InputWorkspace=sample)
can = Scale(InputWorkspace=can, Factor=1.2)
# Calculate absorption corrections
corr = CylinderPaalmanPingsCorrection(SampleWorkspace=sample,
SampleChemicalFormula='H2O',
SampleInnerRadius=0.05,
SampleOuterRadius=0.1,
CanWorkspace=can,
CanChemicalFormula='V',
CanOuterRadius=0.15,
BeamHeight=0.1,
BeamWidth=0.1,
StepSize=0.002,
Emode='Indirect',
Efixed=1.845)
print('Correction workspaces: {}'.format((', '.join(corr.getNames()))))
Output:
Correction workspaces: corr_ass, corr_assc, corr_acsc, corr_acc
References¶
Kendig, A. P., and C. J. Pings. X‐Ray Absorption Factors for Cylindrical Samples in Annular Sample Cells Exposed to Incident Beams of Limited Width. Journal of Applied Physics 36.5 (1965): 16921698 doi: 10.1063/1.1703111