ess.reduce.nexus.workflow.to_transformation#
- ess.reduce.nexus.workflow.to_transformation(chain, interval)[source]#
Convert transformation chain into a single transformation matrix.
If one or more transformations in the chain are time-dependent, the time interval is used to select a specific time point. If the interval is not a single time point, an error is raised. This may be extended in the future to a more sophisticated mechanism, e.g., averaging over the interval to remove noise.
- Parameters:
chain (
NeXusTransformationChain
[TypeVar
(Component
,NXdetector
,NXsample
,NXsource
,NXdisk_chopper
,NXcrystal
,nexus.types.Monitor1
(int
),nexus.types.Monitor2
(int
),nexus.types.Monitor3
(int
),nexus.types.Monitor4
(int
),nexus.types.Monitor5
(int
),nexus.types.IncidentMonitor
(int
),nexus.types.TransmissionMonitor
(int
)),TypeVar
(RunType
,nexus.types.BackgroundRun
(int
),nexus.types.EmptyBeamRun
(int
),nexus.types.SampleRun
(int
),TransmissionRun
[nexus.types.SampleRun
(int
)],TransmissionRun
[nexus.types.BackgroundRun
(int
)],nexus.types.VanadiumRun
(int
))]) – Transformation chain.interval (
TimeInterval
[TypeVar
(RunType
,nexus.types.BackgroundRun
(int
),nexus.types.EmptyBeamRun
(int
),nexus.types.SampleRun
(int
),TransmissionRun
[nexus.types.SampleRun
(int
)],TransmissionRun
[nexus.types.BackgroundRun
(int
)],nexus.types.VanadiumRun
(int
))]) – Time interval to select from the transformation chain.
- Return type:
NeXusTransformation
[TypeVar
(Component
,NXdetector
,NXsample
,NXsource
,NXdisk_chopper
,NXcrystal
,nexus.types.Monitor1
(int
),nexus.types.Monitor2
(int
),nexus.types.Monitor3
(int
),nexus.types.Monitor4
(int
),nexus.types.Monitor5
(int
),nexus.types.IncidentMonitor
(int
),nexus.types.TransmissionMonitor
(int
)),TypeVar
(RunType
,nexus.types.BackgroundRun
(int
),nexus.types.EmptyBeamRun
(int
),nexus.types.SampleRun
(int
),TransmissionRun
[nexus.types.SampleRun
(int
)],TransmissionRun
[nexus.types.BackgroundRun
(int
)],nexus.types.VanadiumRun
(int
))]