IndirectFlatPlateAbsorption v2

../_images/IndirectFlatPlateAbsorption-v2_dlg.png

IndirectFlatPlateAbsorption dialog.

Summary

Calculates indirect absorption corrections for a flat sample shape.

Properties

Name Direction Type Default Description
SampleWorkspace Input MatrixWorkspace Mandatory Sample workspace
SampleChemicalFormula Input string Mandatory Chemical formula for the sample
SampleDensityType Input string Mass Density Use of Mass density or Number density. Allowed values: [‘Mass Density’, ‘Number Density’]
SampleDensity Input number 0.1 Mass density (g/cm^3) or Number density (atoms/Angstrom^3)
SampleHeight Input number 1 Sample height
SampleWidth Input number 1 Sample width
SampleThickness Input number 0.5 Sample thickness
SampleAngle Input number 0 Sample angle
CanWorkspace Input MatrixWorkspace   Container workspace
UseCanCorrections Input boolean False Use can corrections in subtraction
CanChemicalFormula Input string   Chemical formula for the Container
CanDensityType Input string Mass Density Use of Mass density or Number density. Allowed values: [‘Mass Density’, ‘Number Density’]
CanDensity Input number 0.1 Mass density (g/cm^3) or Number density (atoms/Angstrom^3)
CanFrontThickness Input number 0.1 Can front thickness
CanBackThickness Input number 0.1 Can back thickness
CanScaleFactor Input number 1 Scale factor to multiply can data
BeamHeight Input number 1 Height of the beam (cm)
BeamWidth Input number 1 Width of the beam (cm)
NumberWavelengths Input number 10 Number of wavelengths for calculation
Events Input number 1000 Number of neutron events
OutputWorkspace Output MatrixWorkspace Mandatory The output corrected workspace
CorrectionsWorkspace Output WorkspaceGroup   The workspace group to save correction factors

Description

Calculates and applies corrections for scattering abs absorption in a flat plate sample for a run on an indirect inelastic instrument, optionally allowing for the subtraction or corrections of the container. Uses MonteCarloAbsorption to calculate the corrections.

The correction factor workspace is a workspace group containing the correction factors in the Paalman and Pings format, note that only {A_{s,s}} and A_{c,c} factors are calculated by this algorithm.

Usage

Note

To run these usage examples please first download the usage data, and add these to your path. In MantidPlot this is done using Manage User Directories.

Example - Sample corrections for IRIS:

red_ws = LoadNexusProcessed(Filename='irs26176_graphite002_red.nxs')
can_ws = LoadNexusProcessed(Filename='irs26173_graphite002_red.nxs')

corrected, fact = IndirectFlatPlateAbsorption(SampleWorkspace=red_ws,
                                              SampleChemicalFormula='H2-O',
                                              CanWorkspace=can_ws,
                                              CanScaleFactor=0.8,
                                              SampleHeight=1,
                                              SampleWidth=1,
                                              SampleThickness=1,
                                              Events=100,
                                              UseCanCorrections=False)

ass = fact[0]

print ('Corrected workspace is intensity against %s'
      % (corrected.getAxis(0).getUnit().caption()))

print ('Ass workspace is %s against %s'
      % (ass.YUnitLabel(), ass.getAxis(0).getUnit().caption()))

Output:

Corrected workspace is intensity against Energy transfer
Ass workspace is Attenuation factor against Wavelength

Example - Sample and container corrections for IRIS:

red_ws = LoadNexusProcessed(Filename='irs26176_graphite002_red.nxs')
can_ws = LoadNexusProcessed(Filename='irs26173_graphite002_red.nxs')

corrected, fact = IndirectFlatPlateAbsorption(SampleWorkspace=red_ws,
                                              SampleChemicalFormula='H2-O',
                                              CanWorkspace=can_ws,
                                              CanChemicalFormula='V',
                                              CanScaleFactor=0.8,
                                              SampleHeight=1,
                                              SampleWidth=1,
                                              SampleThickness=1,
                                              Events=100,
                                              UseCanCorrections=True)

ass = fact[0]
acc = fact[1]

print ('Corrected workspace is intensity against %s'
      % (corrected.getAxis(0).getUnit().caption()))

print ('Ass workspace is %s against %s'
      % (ass.YUnitLabel(), ass.getAxis(0).getUnit().caption()))

print ('Acc workspace is %s against %s'
      % (acc.YUnitLabel(), acc.getAxis(0).getUnit().caption()))

Output:

Corrected workspace is intensity against Energy transfer
Ass workspace is Attenuation factor against Wavelength
Acc workspace is Attenuation factor against Wavelength

Categories: Algorithms | Workflow\Inelastic | CorrectionFunctions\AbsorptionCorrections | Workflow\MIDAS

Source

Python: IndirectFlatPlateAbsorption2.py (last modified: 2017-02-07)