\(\renewcommand\AA{\unicode{x212B}}\)
Framework Changes¶
Event Filtering¶
During the v6.7.0 development cycle, there were major changes to the code underlying event filtering that was originally designed here. The main changes to Mantid are as follows:
A
TimeROIobject that contains a list of use and ignore regions in time. The times are[inclusive, exclusive).When filtering/splitting logs in the
Runobject, the logs are copied as is and a newTimeROIobject is set on theRun. Values that are active during an ROI are kept, as are ones before/after each ROI. The main change is that logs no longer have fake values to mimic the filtering/splitting.Code should change from asking a
TimeSeriesPropertyfor its statistics to asking theRunobject for the statistics of a log because theRunis the only place that knows the information about theTimeROI.When filtering/splitting logs, the filters are now
[inclusive, exclusive)where previous behavior was[inclusive, inclusive]. The previous behavior was inconsistent with how events are filtered. This change, fixes issues observed with the integrated proton charge.When workspaces are added, the resulting
TimeROIis the union of the individualTimeROIobjects. If either workspace had aTimeROIwithTimeROI.useAll()==True, it is assumed to be from that workspace’s start-time to end-time.Arithmetic statistics (e.g. simple mean rather than time weighted) will be largely unchanged and are not necessarily correct.
The algorithms modified as part of this are FilterByLogValue, FilterByTime, and FilterEvents.
The Sample log viewer has been modified to optionally show the TimeROI as an overlay on the logs.
Algorithms¶
New features¶
The SplineBackground algorithm is now able to fit multiple spectra in a workspace instead of a single one.
The beta test warning has been removed from the DiscusMultipleScatteringCorrection algorithm.
The performance of the DiscusMultipleScatteringCorrection algorithm has been improved on elastic instruments with large numbers of bins.
PyCIFRWhas been added as a runtime dependency of the Mantid conda package so users no longer have to install it themselves to run the LoadCIF algorithm.CrossCorrelate now accepts either a list of spectrum IDs as input, or min and max spectrum IDs.
Bugfixes¶
LoadAndMerge now cleans up intermediate loaded workspaces if the
OutputBehaviourwas set to ‘Concatenate’ these inputs.Corrected issue in GenerateEventsFilter where run end time was being determined incorrectly.
Corrected issue in FilterByTime where filter stop time was being determined incorrectly.
Beamline¶
Bugfixes¶
isMonitormethods will now produce an error if an index overflow occurs, to avoid unintentional behaviour.
Fit Functions¶
New features¶
The
Spinparameter in the Meier function is now an attribute.The
A0parameter in the Redfield function has been removed.
Bugfixes¶
Fixed a bug that meant that when the workspace attribute of a function was changed (e.g. resolution or tabulated function) in a GUI, the function was not updated. This would lead to a crash as Mantid believed that the option was invalid.
Fixed a bug that prevented the UserFunction from being added to a composite function within custom interfaces.
Fixed a memory leak in the wrapper for gsl derivative calculations.
Data Objects¶
New features¶
LoadISISNexus will now load the notes from the
.nxsfile as a comment.EventListcan now be filtered byTimeROI.Added the following getter methods to
GroupingWorkspace:getGroupIDs()getTotalGroups()getDetectorIDsOfGroup()
SaveNexusProcessed will now save
GroupingWorkspaceobjects.
Geometry¶
New features¶
XMLInstrumentParameternow includesTimeROIin the calculation of instrument parameters.
Python¶
New features¶
Added the ability to use strings with
ConfigService.setLogLevel().
Bugfixes¶
Updated the value returned by
TimeSeriesPropertyfor time average mean and standard deviation. This now accounts for the last point in a log which was previously, in v6.5.0, being ignored.Fixed and refactored the
rescale_fluxmethod in both versions of SANSILLReduction algorithms.