ess.sans.normalization.solid_angle#

ess.sans.normalization.solid_angle(data, pixel_shape, transform)[source]#

Solid angle for cylindrical pixels.

Note that the approximation is valid when the distance from sample to pixel is much larger than the length or the radius of the pixels.

Parameters:
  • data (CalibratedBeamline[TypeVar(ScatteringRunType, ess.reduce.nexus.types.BackgroundRun (int), ess.reduce.nexus.types.SampleRun (int), ess.reduce.nexus.types.VanadiumRun (int))]) – The DataArray that contains the positions of the detector pixels and the position of the sample in the coords.

  • pixel_shape (DetectorPixelShape[TypeVar(ScatteringRunType, ess.reduce.nexus.types.BackgroundRun (int), ess.reduce.nexus.types.SampleRun (int), ess.reduce.nexus.types.VanadiumRun (int))]) – Contains the description of the detector pixel shape.

  • transform (NeXusTransformation[NXdetector, TypeVar(ScatteringRunType, ess.reduce.nexus.types.BackgroundRun (int), ess.reduce.nexus.types.SampleRun (int), ess.reduce.nexus.types.VanadiumRun (int))]) – Transformation from the local coordinate system of the detector to the coordinate system of the sample.

Returns:

SolidAngle[TypeVar(ScatteringRunType, ess.reduce.nexus.types.BackgroundRun (int), ess.reduce.nexus.types.SampleRun (int), ess.reduce.nexus.types.VanadiumRun (int))] – The solid angle of the detector pixels, as viewed from the sample position.