Reflectometry Changes

ReflectometryReductionOne

A new algorithm, RotateSource, to move the source to the correct position, was added #14707 <https://github.com/mantidproject/mantid/pull/14707>

RotateSource algorithm has been implemented so that source position is rotated before the conversion from IvsLambda to IvsQ to ensure that the correct Q range is calculated. #14942

To sustain continuity in the instrument setup the RotateSource algorithm is applied again but in the opposite direction by the same rotation theta. This fixed some bugs we were seeing when other algorithms that relied on the source position were producing the wrong results #15139

ConvertToReflectometryQ

ConvertToReflectometryQ can now output any transformation (Centre point or NormalisedPolygon) in the form of an MDHistoWorkspace. See OutputAsMDWorkspace property in the documentation.

A bug that was causing ConvertToReflectometryQ to output wrong values around Qx ~ 0 was fixed #14201

A bug that was causing ConvertToReflectometryQ to output NaN’s at one of the edges was fixed #14283 (this fix has also been applied to the PiPf and KiKf transformations #14455)

A bug in PolygonIntersection was fixed. It was affecting ConvertToReflectometryQ when the number of pixels was large (~3000x3000) #14477

Reflectometry Reduction Interface

ISIS Reflectometry (Polref)

The Reflectometry Polref Interface can now import a .tbl file straight into the processing table instead of the two-step process of importing and then opening the table that was previously implemented. This change mimics the behaviour of the old Reflectometry reduction Interface #14709

The name of the table that is currently in the table should appear in the title of the interface window i.e “ISIS Reflectometry (Polref) - table1”

A bug has been fixed that appeared when the user tried to open a new table when the table currently in the interface had been edited. This bug caused a pop-up saying “You have unsaved changes in your table, would you like to discard these changes?” to appear multiple times if the user clicked the “No” button. #14966

ISIS Reflectometry

Another bug that would reset your table back to original values if you chose ‘Cancel’ when asked if you would like to discard your changes. #15083

Measurement Based Reduction Grouping

Transferring of runs will now automatically assemble the batch processing table using the measurement logs in the isis nexus files.

If the measurement log is invalid it result in a failed transfer and the row in the search table corresponding to this run will be highlighted. Hovering the cursor over failed transfers will show you why the transfer failed i.e “Invalid measurement ID”.

Momentum Transfer calculations

SlitCalculator

The SlitCalculator tool for this interface will now retrieve values for: Distance between first and second slit and distance between the second slit and the sample container, using the Instrument Definition file of the processing/search instrument. This functionality will work even if SlitCalculator is open when you change the instrument associated with the interface. #14077

Other Changes

A bug has been fixed in SpecularReflectionPositionCorrect whereby the Y shift was not being correctly calculated #14376

Full list of changes on github