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

Framework Changes

Algorithms

New Features

  • The DiscusMultipleScatteringCorrection algorithm has been improved.
    • The algorithm now supports inelastic instruments (direct and indirect). Please Note: This improvement has involved several breaking changes:
      • The parameter SofqWorkspace has been renamed to StructureFactorWorkspace.
      • The parameter NumberOfWavelengthPoints has been renamed NumberOfSimulationPoints.
      • The EMode parameter has been dropped (the mode is now determined from the workspace instead).
      • The algorithm now requires the input workspace for elastic calculations to have units of momentum (k) instead of wavelength.
    • The performance has been improved when ImportanceSampling is enabled.
    • The output WorkspaceGroup that is created has been updated. The names of the member workspaces are now prefixed by the group name and some additional workspaces have been added to store the integral of the scattering weight across the x axis (Delta E for inelastic and Momentum for elastic)
  • LoadAndMerge now offers a possibility to have a joined workspace as output instead of a workspace group.
  • ConjoinXRuns can now set a linear integer range as the axis of the output joined workspace.
  • CalculateFlux now also works on workspaces with dimensionless x-axis.
  • The Fit algorithm now has a StepSizeMethod property, allowing you to calculate the step size between each iteration using the square root of epsilon.
  • The Asymmetric Pearson VII fit function can now be chosen as a ProfileFunction for the PoldiDataAnalysis algorithm.
  • LoadNexusLogs now accepts a regular expression for the BlockList property.
  • Reintroduced IntegrateEllipsoids v1 from release v6.0.0 as v1, marked the latest IntegrateEllipsoids v2 as v2, and created a wrapper that automatically switches between them as a IntegrateEllipsoids v3.
  • The ReplaceSpecialValues v1 algorithm can now be used to replace negative numbers by disabling the UseAbsolute property.

Bugfixes

  • The MonteCarloAbsorption algorithm will now get the beam profile from the sample environment in case the sample shape is not defined, e.g. in a container-only absorption correction calculation with sparse instrument geometry.
  • Removal of whitespace characters from FileProperty and MultiFileProperty properties in algorithms can now be disabled.
  • LoadAndMerge no longer trims whitespace characters in the Filename property.
  • SmoothNeighbours no longer holds on to its internal input workspace after completing execution. This ensures a more prompt removal of the memory it holds when replacing the input workspace with the same name.
  • The x unit validation on the parameter ScatteringCrossSection in DiscusMultipleScatteringCorrection has been corrected to check for momentum.
  • Rebin2D v1 can now take an EventWorkspace as an input without crashing.
  • Workbench will no longer crash if the algorithm dialog for DiscusMultipleScatteringCorrection is opened while a group workspace is present in the Workspaces list.
  • ConvertToPointData and ConvertToHistogram now handle bin fractions in RebinnedOutput workspaces by setting all fractions to unity instead of zero. This is because these workspaces are always created as histograms so conversion means discarding the bin information but setting them to zero gives NaNs.

Fit Functions

New Features

  • An AsymmetricPearsonVII fit function has been implemented in order to improve the description of peaks that have an asymmetric shape.
  • Functions have been extended to allow for Function Attribute Validators. This feature further extends to the FitPropertyBrowser. This allows the value of attributes to be restricted in numerous ways, using validators already available in the Mantid Kernel. Examples of validation include (but are not limited to):
    • A numeric value that is bound by a numeric min/max.
    • A string value that must be one of a list of possible values.
    • A string value that is required to contain specific sub-strings.

Bugfixes

  • Individual members of composite multi-domain fit functions are now visible.
  • Mantid will no longer crash when a WorkspaceGroup is used in a TabulatedFunction. Instead, a runtime error is shown explaining that the attribute cannot be assigned.
  • It is now possible to use the same values for the WorkspaceIndex and Workspace Index fields when creating a composite function in the fitting browser.

Kernel

Bugfixes

  • Fixed a bug that prevented the correct inversion of large tridiagonal matrices.

Python

New Features

  • Added possibility to forward log messages to Python using mantid.utils.logging.log_to_python.
  • setAutoTrim and getAutoTrim from the Property class are now exposed to Python.
  • getNumberDetectors from the Instrument class is now exposed to the Python API.

Bugfixes

  • Mantid will no longer hang when performing ADS updates from multiple python algorithms at the same time.