Framework Changes#

Algorithms#

New features#

  • Append Spectra has a new property RewriteSpectraMap to append two workspaces with spectra having same detector IDs at different positions by rewriting the spectrum to detector mapping.

Bugfixes#

  • ClearInstrumentParameters v1 now reports an error for workspaces with a detector scan, instead of silently discarding the scan and leaving the workspace in an inconsistent state.

  • Mantid now keeps asynchronously started algorithms, including live-data monitoring algorithms, active during startup so they can be cancelled safely if Mantid shuts down immediately.

  • On Windows, algorithms that split their work into tasks, such as LoadEventNexus v1, now respect the MultiThreaded.MaxCores setting rather than always using every core.

  • LoadParameterFile v1 now adds parameters whose values come from sample logs to the given workspace only. Previously they were also applied to every other workspace with the same instrument, including workspaces loaded later in the session, the next time their instrument parameters were refreshed from their logs.

Deprecated#

Removed#

  • Removed MaskInstrument (deprecated since release 5.1.0), use MaskDetectors instead.

  • Removed version 1 of SCDCalibratePanels (deprecated since release 6.14.0), use SCDCalibratePanels v2 instead.

  • The following deprecated algorithms have now been removed:

    • LoadSINQFocus (deprecated 2013-10-28). Use LoadSINQ v1 instead.

    • LoadPreNexus (deprecated 2025-04-10). There is no replacement.

    • LoadPreNexusMonitors (deprecated 2025-04-10). There is no replacement.

    • LoadEventPreNexus (deprecated 2025-05-06). There is no replacement.

    • LoadPreNexusLive (deprecated 2025-05-27), which depended on LoadEventPreNexus. There is no replacement.

  • DetermineChunking v1 no longer accepts SNS _runinfo.xml (PreNeXus) files.

  • DgsReduction v1 no longer loads monitors from PreNeXus _neutron_event.dat files when determining the incident energy.

  • The algorithm IntegratePeaksMD v1 was deprecated in Release 6.13.0 and has now been removed. Use IntegratePeaksMD v2 instead.

  • The algorithm IntegratePeaksCWSD was deprecated in Release 6.13.0 and has now been removed. There is no replacement. As a result, the Integrate Peaks button on the Scans Processing tab and the Integrate Peak button on the Peak Integration tab of the HFIR 4-Circle Reduction interface have been removed.

  • Removed UnwrapMonitorsInTOF and UnwrapSNS (deprecated since release 6.13.0).

Fit Functions#

New features#

Bugfixes#

  • Copying or saving a multi-domain fit function that contains an empty composite function, such as an empty ProductFunction, now keeps each member assigned to its own dataset. Previously, all members were assigned to the first dataset.

  • Fixed a crash in UserFunction1D when the function has no fitting parameters or all parameters are fixed. An error is now raised suggesting EvaluateFunction instead.

Deprecated#

Removed#

Data Objects#

New features#

Bugfixes#

  • componentInfo() and instrumentMetadata() now return the instrument of an experiment info that has not yet been read from its file, such as one in an MD workspace loaded with FileBackEnd in LoadMD v1, instead of an empty instrument.

Python#

New features#

  • ComponentInfo has a new method referenceFrame(), returning the instrument’s ReferenceFrame (which axes point up and along the beam), as Instrument.getReferenceFrame() did. Use it as workspace.componentInfo().referenceFrame(). See Instrument Access via SpectrumInfo, DetectorInfo, ComponentInfo.

  • ComponentInfo in Python has new methods pixelGridXSize and pixelGridYSize for finding the physical size (in m) if a grid or rectangular detector.

  • ComponentInfo has new methods getPositionParameter, getRotationParameter, getParameterAsString, getParameterVisible, getParamDescription, getParamShortDescription, getDescription, getShortDescription and setDescription. They give the same results as the methods of the same name on instrument components, so they can be used in their place. See Instrument Access via SpectrumInfo, DetectorInfo, ComponentInfo.

  • DetectorInfo and SpectrumInfo in Python have new methods phi and phiOffset, and new versions of twoTheta and signedTwoTheta that take an observer position and axis. These give the same results as getPhi, getPhiOffset, getTwoTheta and getSignedTwoTheta on detector objects, so they can be used in their place.

Bugfixes#

  • Deprecation and other warnings raised by Mantid’s Python API are now raised as the warning itself when Python is set to treat warnings as errors (for example with -W error or warnings.simplefilter("error")), making it possible to find deprecated calls this way. Previously they caused a SystemError instead.

  • Python algorithms no longer deadlock during AlgorithmManager.shutdown() when they need to reacquire Python’s global interpreter lock (GIL) to finish.

  • Live data monitoring no longer stalls when C++ log messages are forwarded to Python while another Python thread holds the global interpreter lock.

Deprecated#

Dependencies#

New features#

Bugfixes#

MantidWorkbench#

See Mantid Workbench Changes.

Release 7.1.0