\(\renewcommand\AA{\unicode{x212B}}\)

Framework Changes

Algorithms

New features

  • There is a new Deprecation Policy for Mantid.

  • Errors due to H5 file exceptions are now caught with improved error reporting.

  • Algorithm Load v1 will now give a warning if the extension specified on the filename, eg. MUSR15189.txt, is not found. Loading files from interfaces or other algorithms should also give this warning. The algorithm will still load the file by looking for other extensions, as was the case before.

  • A new version of GenerateGroupingPowder (version 2) that will save the grouping file with groups starting at 1 instead of 0 to make them consistent with GroupingWorkspace. The FileFormat parameter has also been removed as it will now be determined from the extension of GroupingFilename.

  • Algorithm LoadEventNexus now has a new FilterBadPulsesLowerCutoff parameter that implements the functionality of FilterBadPulses.

  • Algorithm PolarizationCorrectionWildes v1 and PolarizationEfficiencyCor v1 have a new SpinStates property to allow the order of the workspaces in the output workspace group to be set.

  • Algorithm CombineDiffCal v1 has improved time-scaling performance and new extra validations.

  • Algorithm CompareWorkspaces now supports Ragged Workspaces.

  • Binary operations Plus, Minus, Divide and Multiply now support Ragged Workspaces.

  • Algorithm CompressEvents has the new property SortFirst that controls whether sorting happens before compressing events. If SortFirst=False then a different method is used to compress events that will not sort first. This is faster when you have a large number of events per compress tolerance.

  • Algorithm ISISIndirectEnergyTransfer has the new property OutputSuffix that will append a suffix to the end of output workspace names.

  • Algorithms AlignAndFocusPowderFromFiles and ref: SNSPowderReduction have new a property called MinSizeCompressOnLoad for specifying load compression.

  • Algorithm NMoldyn4Interpolation now uses scipy.interpolate.RectBivariateSpline instead of scipy.interpolate.interp2d, since interp2d has been removed in version 1.14 of scipy. See reference documentation here (https://docs.scipy.org/doc/scipy/reference/generated/scipy.interpolate.interp2d.html).

  • Algorithm DiscusMultipleScatteringCorrection now supports a radial collimator that restricts scatter points within a small region within the larger sample volume. The algorithm was modified to assign zero weight to tracks where the final scatter is not in a position that allows the final track segment to pass through the collimator toward detectors.

  • Algorithm LoadEventAsWorkspace2D has been updated to version 2. This update adds the new property FilterByTime.

  • New algorithm ScaleInstrumentComponent to scale all detectors in an instrument component around the component’s geometrical position.

../../_images/ScaleInstrumentComponent.png
  • Algorithm GenerateGroupingSNSInelastic has the new input option Instrument Definition File. Selecting the new InstrumentDefinitionFile option in the instrument drop down menu will create a new field allowing users to select older instrument definition files.

  • Algorithm CompareWorkspaces has a new CheckUncertainty property to turn off comparing the y-value uncertainties.

  • Algorithm ScaleX is now 95% faster when using the InstrumentParameter property.

Bugfixes

  • Algorithm CompareWorkspaces is now fixed for relative differences of small values.

  • Algorithm LoadEventNexus now has the minimum histogram bin edge equal to the lowest time-of-flight event rather than one less. There are no longer negative bin edges unless there is actually a negative time-of-flight in the data.

  • Isotope densities have been updated, see https://pypi.org/project/periodictable/1.6.1/#history for notes about the updates from NIST.

  • Files where all sample times are before 01/01/1991 will no longer generate an error.

  • Algorithm ExtractFFTSpectrum no longer causes an unreliable segmentation fault.

  • Algorithm LoadIsawUB now correctly adds the UB to the first experiment info when the input workspace has more than one.

  • Algorithms SaveNexusProcessed and LoadNexusProcessed have been fixed to correctly work with Ragged Workspaces.

Removed

Fit Functions

New features

  • Fit function PearsonIV now available to fit model prompt pulses.

  • Fit function SpinDiffusion now available in the Muon category.

Data Objects

Bugfixes

  • Added a + 1 to EventWorkspace::sortAll to prevent grainsize from being 0.

  • Loading ENGIN-X data on IDAaaS from the instrument data cache no longer throws a path not found error.

Python

New features

  • Created documentation for mantid.dataobjects python bindings.

  • Fix python fuction assert_almost_equal to fail for non-equal workspaces.

  • The python function assert_almost_equal for testing if two modules are within a tolerance was reworked.

Bugfixes

  • Fixed error in the log about load_module() being deprecated in Python 3.12.

Dependencies

New features

  • Linux compiler has been updated to gcc version 12, which should improve performance in some circumstances.

  • Updated compiler on macOS from clang version 15 to 16, which should result in performance improvements.

Bugfixes

  • Introduced a run constraint to the mantid package to constrain the optional matplotlib dependency to v3.7. Previously it was possible to install any version of matplotlib alongside mantid in a conda environment, but we cannot guarantee compatibility for any version other than 3.7.

  • Versions of pycifrw are now allowed to be greater than 4.4.1.

MantidWorkbench

See Mantid Workbench Changes. Release 6.11.0