$$\renewcommand\AA{\unicode{x212B}}$$

# GroupToXResolution v1¶

## Summary¶

Groups points within intervals given by the Dx into single points

## Properties¶

Name

Direction

Type

Default

Description

InputWorkspace

Input

MatrixWorkspace

Mandatory

An input workspace with Dx values.

OutputWorkspace

Output

MatrixWorkspace

Mandatory

The grouped workspace.

FractionOfDx

Input

number

0.2

A fraction of Dx to group the points to.

## Description¶

This algorithm groups the points of a single histogram workspace according to the X resolution stored in the DX array.

The figure below shows schematically how the grouping procedure proceeds.

1. Select first ungrouped point $$i$$. The X resolution (DX) for this point is $$D_{i}$$.

2. Calculate grouping width $$w_{i} =$$ FractionOfDx * $$D_{i}$$.

3. Select ungrouped points within $$w_{i}$$ from point $$i$$.

4. Calculate the average X, average Y, and the square root of the averaged squared sums of E of the selected points.

5. Calculate new resolution $$D^{\circ} = \sqrt{D_{i}^{2} + (0.68 \Delta X)^{2}}$$ where $$\Delta X$$ is span of the X values of the selected points.

6. Replace the selected points with a single grouped point.

## Usage¶

Example - Grouping points to X resolution

from mantid.simpleapi import CreateWorkspace, DeleteWorkspaces, GroupToXResolution
import matplotlib.pyplot as plt
import numpy as np
# Create a workspace with exponential decay.
Xs = np.arange(0.01, 5., 0.01)
Ys = np.exp(-Xs)
# A clumsy way for filling a numpy array.
# Numpy version > 1.7 would support 'DXs = full_like(Ys, 1.)'
DXs = np.empty_like(Ys)
DXs.fill(1.)
original = CreateWorkspace(Xs, Ys, Dx=DXs, NSpec=1)
grouped = GroupToXResolution(original)
# Plot side-by-side comparison.
fig, (left, right) = plt.subplots(ncols=2, subplot_kw={'projection':'mantid'})
left.errorbar(original, linestyle='-')
left.set_title('Original')
right.errorbar(grouped, linestyle='-')
right.set_title('Grouped')
# Uncomment the next line to show the plot window.
#fig.show()
DeleteWorkspaces(['original', 'grouped'])


Categories: AlgorithmIndex | Transforms\Rebin