ess.powder.correction.normalize_by_monitor_integrated#
- ess.powder.correction.normalize_by_monitor_integrated(detector, *, monitor, uncertainty_broadcast_mode)[source]#
Normalize detector data by an integrated monitor.
The monitor is integrated according to
\[M = \sum_{i=0}^{N-1}\, m_i (x_{i+1} - x_i) I(x_i, x_{i+1}),\]where \(m_i\) is the monitor intensity in bin \(i\), \(x_i\) is the lower bin edge of bin \(i\), and \(I(x_i, x_{i+1})\) selects bins that are within the range of the detector.
- Parameters:
detector (
DataWithScatteringCoordinates
[TypeVar
(RunType
,ess.reduce.nexus.types.BackgroundRun
(int
),ess.reduce.nexus.types.EmptyBeamRun
(int
),ess.reduce.nexus.types.SampleRun
(int
),TransmissionRun
[ess.reduce.nexus.types.SampleRun
(int
)],TransmissionRun
[ess.reduce.nexus.types.BackgroundRun
(int
)],ess.reduce.nexus.types.VanadiumRun
(int
))]) – Input event data in wavelength.monitor (
WavelengthMonitor
[TypeVar
(RunType
,ess.reduce.nexus.types.BackgroundRun
(int
),ess.reduce.nexus.types.EmptyBeamRun
(int
),ess.reduce.nexus.types.SampleRun
(int
),TransmissionRun
[ess.reduce.nexus.types.SampleRun
(int
)],TransmissionRun
[ess.reduce.nexus.types.BackgroundRun
(int
)],ess.reduce.nexus.types.VanadiumRun
(int
)),ess.reduce.nexus.types.Monitor1
(int
)]) – A histogrammed monitor in wavelength.uncertainty_broadcast_mode (
UncertaintyBroadcastMode
) – Choose how uncertainties of the monitor are broadcast to the sample data.
- Returns:
NormalizedRunData
[TypeVar
(RunType
,ess.reduce.nexus.types.BackgroundRun
(int
),ess.reduce.nexus.types.EmptyBeamRun
(int
),ess.reduce.nexus.types.SampleRun
(int
),TransmissionRun
[ess.reduce.nexus.types.SampleRun
(int
)],TransmissionRun
[ess.reduce.nexus.types.BackgroundRun
(int
)],ess.reduce.nexus.types.VanadiumRun
(int
))] – detector normalized by a monitor.