Skip to content

Commit

Permalink
Merge pull request #38129 from mantidproject/release-next-6-11
Browse files Browse the repository at this point in the history
Release notes for 6.11
  • Loading branch information
thomashampson authored Oct 16, 2024
2 parents c581f90 + d3f0a5c commit 4a0cabd
Show file tree
Hide file tree
Showing 155 changed files with 256 additions and 140 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/images/6_11_release/renamed_tabs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- The :ref:`compatibility_mode` feature in the ISIS SANS GUI is no longer selected by default. This feature should be considered deprecated and will be removed completely in a future release.
66 changes: 56 additions & 10 deletions docs/source/release/v6.11.0/diffraction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,34 +10,80 @@ Powder Diffraction

New features
############
.. amalgamate:: Diffraction/Powder/New_features
- Algorithm :ref:`AlignAndFocusPowder <algm-AlignAndFocusPowder>` now supports logarithmic compression.
- Algorithm :ref:`AlignAndFocusPowderFromFiles <algm-AlignAndFocusPowderFromFiles>` now takes advantage of a new compression technique in :ref:`LoadEventNexus <algm-LoadEventNexus>` and :ref:`AlignAndFocusPowder <algm-AlignAndFocusPowder>`.
- Algorithm :ref:`SNSPowderReduction <algm-SNSPowderReduction>` now takes advantage of a new compression technique in :ref:`AlignAndFocusPowderFromFiles <algm-AlignAndFocusPowderFromFiles>` and :ref:`AlignAndFocusPowder <algm-AlignAndFocusPowder>`.
- Algorithm :ref:`LoadEventAndCompress <algm-LoadEventAndCompress>` now takes advantage of a new compression technique in :ref:`LoadEventNexus <algm-LoadEventNexus>`.
- Algorithms :ref:`FitPeaks <algm-FitPeaks>` and :ref:`PDCalibration <algm-PDCalibration>` now do a check after the fit for the minimum signal-to-sigma ratio, where peaks with a signal below the provided threshold will be rejected.
- :ref:`HRPD reduction scripts <isis-powder-diffraction-hrpd-ref>` now support the boolean option ``fit_prompt_pulse`` to fit and subtract prompt pulse (as opposed to the default method of masking of prompt pulse in TOF).
You can either specify this option in the configuration file or with ``hrpd.HRPD(fit_prompt_pulse=True)``.

Bugfixes
############
.. amalgamate:: Diffraction/Powder/Bugfixes
- Algorithm :ref:`AlignAndFocusPowder <algm-AlignAndFocusPowder-v1>` now runs compression when ``logarithmic`` is selected.
- Applying absorption correction with missing sample details in :ref:`powder diffraction scripts <isis-powder-diffraction-ref>` now displays a clearer error message:

.. figure:: ../../images/6_11_release/improved_error_message.png
:width: 600px

- Algorithm :ref:`DiffractionFocussing <algm-DiffractionFocussing-v2>` is now properly accumulating data when :ref:`CompressEvents <algm-CompressEvents-v1>` is run prior to it in ``PreserveEvents=False`` mode.
- Algorithm :ref:`PPDCalibration <algm-PDCalibration-v1>` is once again masking input pixels with empty event lists (bug was present since 6.9.0).
- :ref:`Calibration Diagnostics <Calibration Diagnostics>` plotting now successfully extracts the solid angle of detectors.
- :ref:`Polaris diffraction <isis-powder-diffraction-polaris-ref>` routine ``create_total_scattering_pdf`` no longer causes an unhandled error when calculating cross-sections of multi-atom unit cells for pdf normalisation.


Engineering Diffraction
-----------------------

New features
############
.. amalgamate:: Diffraction/Engineering/New_features

Bugfixes
############
.. amalgamate:: Diffraction/Engineering/Bugfixes
- The :ref:`fitting tab <ui engineering fitting>` of the :ref:`Engineering Diffraction interface<Engineering_Diffraction-ref>` no longer crashes when a fit is re-run for a function like a ``PseudoVoigt`` that contains a ``FWHM`` parameter as the peak function.


Single Crystal Diffraction
--------------------------

New features
############
.. amalgamate:: Diffraction/Single_Crystal/New_features
- :ref:`IntegratePeaksSkew <algm-IntegratePeaksSkew>` is better at determining background bins by minimising third-moment (skew).
This is achieved by forcing skew > 0 (minimum skew we would expect in background).
This change stops peak mask of :ref:`IntegratePeaksSkew <algm-IntegratePeaksSkew>` including too many pixels due to small diffuse scattering:

.. figure:: ../../images/6_11_release/single-crystal-peak-background-edited.png
:width: 500px

- New option not to integrate peaks that include a masked detector in the following algorithms:

- :ref:`IntegratePeaksSkew <algm-IntegratePeaksSkew>`
- :ref:`IntegratePeaksShoeboxTOF <algm-IntegratePeaksShoeboxTOF>`
- :ref:`IntegratePeaks1DProfile <algm-IntegratePeaks1DProfile>`

- ISIS single-crystal reduction classes now have the method ``find_consistent_ub`` to find a UB that preserves indexing given a reference workspace (at different goniometer angle(s)).
- ISIS single-crystal reduction classes now have the method ``optimize_goniometer_axis`` to optimise the goniometer axes and angles given a sequence of workspaces at different goniometer angle with consistent UBs.
- ISIS single-crystal reduction classes now have the method ``calc_absorption_weighted_path_lengths`` that calculates tbar for each peak (saved in a column of the table) and optionally apply an attenuation correction to the integrated intensity of each peak.
By default the correction will be applied if the class has the property ``scale_integrated = True``.
- Algorithm :ref:`AddAbsorptionWeightedPathLengths <algm-AddAbsorptionWeightedPathLengths>` now allows lean peaks to be used.
There is also an option to apply the correction.
- New algorithm :ref:`FindMultipleUMatrices <algm-FindMultipleUMatrices>` to find multiple UB matrices (given lattice parameters) for samples with multiple domains or spurious peaks.

- This algorithm will use the lattice parameters and spacegroup provided to optimise a number (``NumberOfUBs``)
of UB matrices (B is hard-coded due to the lattice parameters provided) and return a group of peak workspaces
(one for each UB) containing the peaks that are indexed most accurately by that UB.
The algorithm is useful for finding a single UB in the presence of spurious peaks, or finding multiple UBs when there
are multiple domains.

.. figure:: ../../images/6_11_release/FindMultipleUMatrices.png
:width: 400px

- Algorithm :ref:`ShowPossibleCells <algm-ShowPossibleCells>` now has a new output property, ``Cells``, that includes the cell information in a usable way.
- New algorithm :ref:`SaveMDHistoToVTK <algm-SaveMDHistoToVTK>` that saves a :ref:`MDHistoWorkspace <MDHistoWorkspace>` as a ``VTK`` file so that it can be visualized by ``Paraview``.
- :ref:`IntegratePeaksShoeboxTOF <algm-IntegratePeaksShoeboxTOF>` has improved optimisation for shoebox position - would previously be centred on nearby stronger peaks if present.
- Execution time of :ref:`IntegratePeaks1DProfile <algm-IntegratePeaks1DProfile>` has been sped up by an order of magnitude.


Bugfixes
############
.. amalgamate:: Diffraction/Single_Crystal/Bugfixes
- :ref:`LoadWANDSCD <algm-LoadWANDSCD>` now keeps the sgl/sgu angles set by the goniometer.
- :ref:`ConverWANDSCDToQ <algm-ConvertWANDSCDToQ>` simplifies the underlying code by using histograms directly.

:ref:`Release 6.11.0 <v6.11.0>`
:ref:`Release 6.11.0 <v6.11.0>`
32 changes: 12 additions & 20 deletions docs/source/release/v6.11.0/direct_geometry.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,35 +10,27 @@ General

New features
############
.. amalgamate:: Direct_Geometry/General/New_features
- :ref:`SaveNXSPE <algm-SaveNXSPE-v1>` now stores the run number of the input workspace in the instrument section.

For Indirect instruments it also saves ``efixed``, taken from the detector's crystal analyzer properties.
If all crystal analyzers have the same energy, a single ``efixed`` is written into ``NXSPE_info->fixed_energy`` as before,
while if detectors have different analyzer energies, an array of the energies is written into the ``NXSPE_info->fixed_energy`` field of the ``.nxspe`` file.
Also for Indirect instruments, no ``fermi`` field is added to the ``instrument`` folder.
The algorithm has also been modified so if ``Ei`` is provided as the propery value it always overrides the values retrieved from the workspace.

Bugfixes
############
.. amalgamate:: Direct_Geometry/General/Bugfixes
- :ref:`ALFView <ALFView-ref>` no longer crashs when moving the cursor over the Instrument View while loading data.
- :ref:`PyChop` no longer uses random phase values on Merlin when instrument scientist mode disabled.


CrystalField
-------------

New features
############
.. amalgamate:: Direct_Geometry/CrystalField/New_features

Bugfixes
############
.. amalgamate:: Direct_Geometry/CrystalField/Bugfixes


MSlice
------

New features
############
.. amalgamate:: Direct_Geometry/MSlice/New_features

Bugfixes
############
.. amalgamate:: Direct_Geometry/MSlice/Bugfixes
- The method `cf.getMagneticMoment()` no longer ignores the `Hmag` field, which is now
correctly considered in the calculations of the magnetic moment.


:ref:`Release 6.11.0 <v6.11.0>`
:ref:`Release 6.11.0 <v6.11.0>`
78 changes: 57 additions & 21 deletions docs/source/release/v6.11.0/framework.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,66 +10,102 @@ Algorithms

New features
############
.. amalgamate:: Framework/Algorithms/New_features
- Errors due to H5 file exceptions are now caught with improved error reporting.
- Algorithm :ref:`algm-Load` 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 :ref:`GenerateGroupingPowder <algm-GenerateGroupingPowder>` (version 2) that will save the grouping file with groups starting at 1 instead of 0 to make them consisted with ``GroupingWorkspace``.
The ``FileFormat`` parameter has also been removed as it will now be determined from the extension of ``GroupingFilename``.
- Algorithm :ref:`LoadEventNexus <algm-LoadEventNexus>` now has a new ``FilterBadPulsesLowerCutoff`` parameter that implements the functionality of :ref:`FilterBadPulses <algm-FilterBadPulses>`.
- Algorithm :ref:`algm-PolarizationCorrectionWildes` and :ref:`algm-PolarizationEfficiencyCor` have a new ``SpinStates`` property to allow the order of the workspaces in the output workspace group to be set.
- Algorithm :ref:`algm-CombineDiffCal` has improved time-scaling performance and new extra validations.
- Algorithm :ref:`CompareWorkspaces <algm-CompareWorkspaces>` now supports :ref:`Ragged Workspaces <Ragged_Workspace>`.
- Binary operations :ref:`Plus <algm-Plus>`, :ref:`Minus <algm-Minus>`, :ref:`Divide <algm-Divide>` and :ref:`Multiply <algm-Multiply>` now support :ref:`Ragged Workspaces <Ragged_Workspace>`.
- Algorithm :ref:`CompressEvents <algm-CompressEvents>` a new ``SortFirst`` property 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 :ref:`ISISIndirectEnergyTransfer <algm-ISISIndirectEnergyTransfer>` has the new property ``OutputSuffix`` that will append a suffix to the end of output workspace names.
- Algorithms :ref:`AlignAndFocusPowderFromFiles <algm-AlignAndFocusPowderFromFiles>` and ref: :ref:`SNSPowderReduction <algm-SNSPowderReduction>` have new a property called ``MinSizeCompressOnLoad`` for specifying load compression.
- Algorithm :ref:`NMoldyn4Interpolation <algm-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 :ref:`DiscusMultipleScatteringCorrection <algm-DiscusMultipleScatteringCorrection-v1>` 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.
- Version 2 of the algorithm :ref:`LoadEventAsWorkspace2D <algm-LoadEventAsWorkspace2D>` that adds the property ``FilterByTime``.
- New algorithm :ref:`ScaleInstrumentComponent <algm-ScaleInstrumentComponent>` to scale all detectors in an instrument component around the component's geometrical position.

.. figure:: ../../images/6_11_release/ScaleInstrumentComponent.png
:width: 400px

- Algorithm :ref:`GenerateGroupingSNSInelastic <algm-GenerateGroupingSNSInelastic>` has the new input option :ref:`InstrumentDefinitionFile`.
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 :ref:`CompareWorkspaces <algm-CompareWorkspaces>` has a new ``CheckUncertainty`` property to turn off comparing the y-value uncertainties.
- Algorithm :ref:`ScaleX <algm-ScaleX>` is now 95% faster when using the ``InstrumentParameter`` property.

Bugfixes
############
.. amalgamate:: Framework/Algorithms/Bugfixes
- Algorithm :ref:`CompareWorkspaces <algm-CompareWorkspaces-v1>` is now fixed for relative differences of small values.
- Algorithm :ref:`LoadEventNexus <algm-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 :ref:`ExtractFFTSpectrum <algm-ExtractFFTSpectrum>` no longer causes an unreliable segmentation fault.
- Algorithm :ref:`LoadIsawUB <algm-LoadIsawUB>` now correctly adds the UB to the first experiment info when the input workspace has more than one.
- Algorithms :ref:`SaveNexusProcessed <algm-SaveNexusProcessed>` and :ref:`LoadNexusProcessed <algm-LoadNexusProcessed>` have been fixed to correctly work with :ref:`Ragged Workspaces <Ragged_Workspace>`.

Removed
#######
.. amalgamate:: Framework/Algorithms/Removed
- Algorithm ``SaveDiffFittingAscii`` was deprecated in :ref:`Release 3.13.0 <v3.13.0>` and has now been removed. Use :ref:`EnggSaveSinglePeakFitResultsToHDF5 <algm-EnggSaveSinglePeakFitResultsToHDF5>` instead.
- Algorithm ``AddNote`` was deprecated in :ref:`Release 3.6.0 <v3.6.0>` and has now been removed. Please use :ref:`Comment <algm-Comment>` instead.
- Algorithm ``FilterEventsByLogValuePreNexus`` was deprecated in 2014 and has now been removed.
- Algorithm ``FindUBUsingMinMaxD`` was deprecated in 2013 and has now been removed. Use :ref:`FindUBUsingFFT<algm-FindUBUsingFFT>` instead.
- Algorithm ``ConvertEmptyToTof`` was deprecated in :ref:`Release 3.9.0 <v3.9.0>` and has now been removed.
- Algorithm ``RecordPythonScript`` was deprecated in :ref:`Release 5.1.0 <v5.1.0>` and has now been removed. Use :ref:`GeneratePythonScript<algm-generatepythonscript>` instead.
- Algorithm ``CheckWorkspacesMatch`` was deprecated in :ref:`Release 3.9.0 <v3.9.0>` and has now been removed. Use :ref:`CompareWorkspaces<algm-compareworkspaces>` instead.

Fit Functions
-------------

New features
############
.. amalgamate:: Framework/Fit_Functions/New_features

Bugfixes
############
.. amalgamate:: Framework/Fit_Functions/Bugfixes
- Fit function :ref:`PearsonIV <func-PearsonIV>` now available to fit model prompt pulses.
- Fit function :ref:`SpinDiffusion <func-SpinDiffusion>` now available in the Muon category.


Data Objects
------------

New features
############
.. amalgamate:: Framework/Data_Objects/New_features

Bugfixes
############
.. amalgamate:: Framework/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
############
.. amalgamate:: Framework/Python/New_features

Bugfixes
############
.. amalgamate:: Framework/Python/Bugfixes
- Created documentation for :mod:`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.


Dependencies
------------------

New features
############
.. amalgamate:: Framework/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
############
.. amalgamate:: Framework/Dependencies/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 :doc:`mantidworkbench`.
:ref:`Release 6.11.0 <v6.11.0>`
:ref:`Release 6.11.0 <v6.11.0>`
26 changes: 21 additions & 5 deletions docs/source/release/v6.11.0/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
Mantid 6.11.0 Release Notes
===========================

.. figure:: ../../images/ImageNotFound.png
.. figure:: ../../images/6_11_release/single-crystal-peak-background-edited.png
:width: 500px
:class: screenshot
:width: 385px
:align: right

.. contents:: Table of Contents
Expand All @@ -16,9 +16,25 @@ Mantid 6.11.0 Release Notes

We are proud to announce version 6.11.0 of Mantid.

**TODO: Add paragraph summarizing big changes**

**TODO: Add a note about new mantid-developer metapackage**
In this release we gave extra attention to fixing bugs and improving algorithms (for example by making them run faster or use less memory).
We also added several new algorithms. These are the highlights for this release:

- For single crystal diffraction, we added a new algorithm :ref:`FindMultipleUMatrices <algm-FindMultipleUMatrices>`
to find multiple UB matrices when given lattice parameters for sample with multiple domains or spurious peaks.
- Also for single crystal diffraction, :ref:`IntegratePeaksSkew <algm-IntegratePeaksSkew>` is better at determining background bins by minimising third-moment (skew).
This is achieved by forcing skew > 0 (minimum skew we would expect in background).
This change stops peak mask of :ref:`IntegratePeaksSkew <algm-IntegratePeaksSkew>` including too many pixels due to small diffuse scattering (seen in the figure above).
- For powder diffraction, the algorithms
:ref:`AlignAndFocusPowder <algm-AlignAndFocusPowder>`,
:ref:`AlignAndFocusPowderFromFiles <algm-AlignAndFocusPowderFromFiles>`,
:ref:`SNSPowderReduction <algm-SNSPowderReduction>` and
:ref:`LoadEventAndCompress <algm-LoadEventAndCompress>`
were updated to use logarithmic compression, which uses less memory.
- For reflectometry, we added a new algorithm :ref:`algm-PolarizationEfficienciesWildes` has been added for calculating the efficiencies of the polarizing components of an instrument with two flippers.
This algorithm implements the approach from the A. R. Wildes 2006 paper.
- For SANS, we added new algorithm :ref:`PolarizerEfficiency <algm-PolarizerEfficiency-v1>` for calculating the efficiency of a polariser.

- Mantid developer environments are now created using a new ``mantid-developer`` Conda meta-package, hosted on our Conda channel.

These are just some of the many improvements in this release, so please take a
look at the release notes, which are filled with details of the
Expand Down
Loading

0 comments on commit 4a0cabd

Please sign in to comment.