\(\renewcommand\AA{\unicode{x212B}}\)

PoldiDataAnalysis v1

../_images/PoldiDataAnalysis-v1_dlg.png

PoldiDataAnalysis dialog.

Summary

Run all necessary steps for a complete analysis of POLDI data.

Properties

Name Direction Type Default Description
InputWorkspace Input Workspace Mandatory MatrixWorkspace with 2D POLDI data and valid POLDI instrument.
MaximumPeakNumber Input number 10 Maximum number of peaks to process in the analysis.
MinimumPeakSeparation Input number 10 Minimum number of points between neighboring peaks.
MinimumPeakHeight Input number 0 Minimum height of peaks. If it is left at 0, the minimum peak height is calculatedfrom background noise.
MaximumRelativeFwhm Input number 0.02 Peaks with a relative FWHM larger than this are removed during the 1D fit.
ScatteringContributions Input string 1 If there is more than one compound, you may supply estimates of their scattering contributions, which sometimes improves indexing.
ExpectedPeaks Input Workspace Mandatory TableWorkspace or WorkspaceGroup with expected peaks used for indexing.
RemoveUnindexedPeaksFor2DFit Input boolean False Discard unindexed peaks for 2D fit, this is always the case if PawleyFit is active.
ProfileFunction Input string Gaussian Allowed values: [‘AsymmetricPearsonVII’, ‘Gaussian’, ‘Lorentzian’, ‘PseudoVoigt’, ‘Voigt’]
TieProfileParameters Input boolean True If this option is activated, certain parameters are kept the same for all peaks. An example is the mixing parameter of the PseudoVoigt function.
BoundProfileParameters Input boolean True If this option is activated, certain parameters will be bound to a specific range of values for all peaks. It is implemented for the “LeftShape” and “RightShape” parameters of the asymmetric Pearson VII function, which are set to be bound to a [0, 20] range.
PawleyFit Input boolean False Should the 2D-fit determine lattice parameters?
MultipleRuns Input boolean False If this is activated, peaks are searched again in theresiduals and the 1D- and 2D-fit is repeated with these data.
PlotResult Input boolean True If this is activated, plot the sum of residuals and calculated spectrum together with the theoretical spectrum and the residuals.
OutputIntegratedIntensities Input boolean False If this option is checked the peak intensities of the 2D-fit will be integrated, otherwise they will be the maximum intensity.
OutputRawFitParameters Input boolean False Activating this option produces an output workspace which contains the raw fit parameters.
OutputWorkspace Output Workspace Mandatory WorkspaceGroup with result data from all processing steps.

Description

This algorithm performs all necessary steps for a complete analysis of POLDI data, combining all algorithms that are specific to POLDI. In detail, it performs these steps on the supplied data:

  1. PoldiAutoCorrelation v5
  2. PoldiPeakSearch v1
  3. PoldiFitPeaks1D v2
  4. PoldiIndexKnownCompounds v1
  5. PoldiFitPeaks2D v1
  6. PoldiAnalyseResiduals v1

Finally, the calculated diffractogram and the residuals are added together and all three spectra are plotted to give an impression of the result. If the MultipleRuns option is activated, steps 2 - 6 are repeated, but instead of using the initial correlation spectrum, the sum or calculated and residuals is used. Because this is usually much smoother than the initial correlation spectrum, additional peaks can be found there sometimes. The 2D-fit is still performed with the original data.

The actual output is a WorkspaceGroup with content that varies a bit depending on the input parameters. If PawleyFit was active, it contains refined cell parameters. For the ExpectedPeaks parameter, a WorkpsaceGroup may be given (this is necessary when multiple phases are present in a sample).

Usage

Note

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

The algorithm requires relatively little input and can be run like this:

import numpy as np

# Load POLDI data
PoldiLoadRuns(2013, 6903, 6904, 2, OutputWorkspace='poldi', MaskBadDetectors=False)

# Create Silicon peaks
PoldiCreatePeaksFromCell(SpaceGroup='F d -3 m', Atoms='Si 0 0 0 1.0 0.01', a=5.431,
                         LatticeSpacingMin=0.7,
                         OutputWorkspace='Si')

PoldiDataAnalysis(InputWorkspace='poldi_data_6904',
                  ExpectedPeaks='Si', PawleyFit=True,
                  MaximumPeakNumber=8,
                  PlotResult=False,
                  OutputWorkspace='result')

# Take a look at the refined cell:

cell = AnalysisDataService.retrieve('poldi_data_6904_cell_refined')

cell_a = np.round(cell.cell(0, 1), 5)
cell_a_error = np.round(cell.cell(0, 2), 5)

print("Refined lattice parameter a = {:.5f} +/- {}".format(cell_a, cell_a_error))

This will print the following output:

Refined lattice parameter a = 5.43126 +/- 5e-05

If PlotResult is changed to True, a plot of the spectrum and the residuals is created as described above.

Categories: AlgorithmIndex | SINQ\Poldi