Diffraction Changes#

Powder Diffraction#

New features#

Bugfixes#

  • (#41672) ISIS Powder SampleDetails now accepts a number_density_units argument which can be set appropriately to fix issues where total scattering S(Q)-1 does not tend to 0 at high Q when number density has been provided as: formula units per volume (see number_density_unit).

  • (#41855) Fixed CylinderAbsorptionCW Sabine calculation for large μR.

  • (#42080) CylinderAbsorptionCW now scales the AttenuationXSection property from its tabulated 1.7982 Å value to the requested Wavelength. Previously, cross-sections provided through the properties were used unscaled, so they gave a different result to the same cross-sections set on the sample material with SetSampleMaterial v1 at any wavelength other than 1.7982 Å.

  • (#42095) HFIRPowderReduction v1 now produces correct results when SampleBackgroundFilename is supplied. Previously, the sample background was subtracted without being normalised to monitor or time, and SampleBackgroundScaleFactor was ignored.

  • (#42110) Fixed the binning of HFIRPowderReduction v1. The bins are now placed on a grid of XBinWidth anchored at XMin, or at zero when XMin is not given, so bin centres always fall on XMin + XBinWidth * (n + 1/2). Previously a XMin (or XMax) outside the range of the data was replaced by the extreme value found in the data, which shifted every bin and made the bins slightly wider than XBinWidth. XMin and XMax are now both optional and take a single number rather than a list of per-spectrum values, and only the bins that hold data are output.

Removed#

Engineering Diffraction#

New features#

  • (#40961) New Texture Planning User Interface for aiding the user in planning and executing Texture Analysis experiments. See the linked docs for more information.

  • (#41114) Pawley refinement classes in Engineering.pawley_utils can now output the fitted peak parameters (intensity, centre and FWHM, with errors where available) as a table workspace per phase.

  • (#41114) Pawley refinement classes in Engineering.pawley_utils now support bounds on their fit parameters, specified as a fraction of the current value, as a multiplicative factor, or as explicit limits (e.g. to force non-negative peak intensities).

  • (#41114) The 2D Pawley refinement in Engineering.pawley_utils now offers an alternating fit strategy (selected with PawleyFitStrategy), which re-estimates the per-spectrum scale factors and backgrounds between successive refinements rather than applying a single overall scale.

  • (#41114) The 2D Pawley refinement in Engineering.pawley_utils can now optionally apply a Lorentz correction to the simulated pattern.

  • (#41114) The Phase class in Engineering.pawley_utils can now crop its hkl list to the reflections accessible in a given workspace (from the two-theta coverage of that workspace and the wavelength limits), for use when several virtual detectors each cover a subset of the pixels.

  • (#41114) POLDI 2D data simulated with poldi_utils.simulate_2d_data now accounts for the wavelength dependence of the incident flux.

  • (#41709) In the Engineering Diffraction interface the GSASII tab now supports CIF file selection from a list of defaults distributed with Mantid.

  • (#41819) In Engineering.EnggUtils, focusing using the focus_run method will now adjust the calibration DIFCs per detector pixel to account for an offset in the scattering volume centre-of-mass (due to sample partially illuminated within the gauge volume). This is only done when both a Sample Shape and Gauge Volume are present on the Workspace.

  • (#41935) In the Engineering Diffraction interface, settings can now be saved separately for each experiment, identified by RB Number. Changing a setting overwrites the saved value for that RB Number rather than overwriting a single global saved value. This allows users to return to an experiment and retrieve its previously saved settings.

  • (#42146) The Texture Planning User Interface now has a guided tutorial. It appears the first time the interface is opened and can be re-run at any time from the mortarboard button on the bottom toolbar. The tutorial drives a separate, temporary copy of the interface, so it never affects the session you are working in.

Bugfixes#

  • (#41114) The POLDI instrument definition has been corrected so that all detector pixels face the sample position. Previously half of each detector block was rotated about the wrong axis, while the other half was not rotated at all. The IDF schema now also allows a rotation axis to be specified on a <locations> element.

  • (#42012) In the Run Processing tab of the Engineering Diffraction interface, when loading an existing calibration from a .prm file, the interface now records the vanadium run, allowing the calibration to report itself as valid immediately rather than only after the Focus tab has been used.

  • (#42012) In the Run Processing tab of the Engineering Diffraction interface, when setting a calibration region of interest on ENGIN-X, the options are now labelled Texture20 and Texture30 consistently, so they no longer appear as Texture (20 spec) and Texture (30 spec) until the instrument is changed.

  • (#42012) In the Run Processing tab of the Engineering Diffraction interface, plotting calibration output now reads the fitted peak centre from the peak function being used. This fixes a KeyError that occurred when the default peak function was changed from BackToBackExponential.

  • (#42012) In the Absorption Correction tab of the Engineering Diffraction interface, when a preset gauge volume shape is selected, the custom gauge volume file finder is now hidden, so it is only offered for a custom shape.

  • (#42012) In the Absorption Correction tab of the Engineering Diffraction interface, when No Gauge Volume is selected, any gauge volume already defined on a run is now cleared, so the correction no longer silently continues to use the previous one.

  • (#42012) In the Absorption Correction tab of the Engineering Diffraction interface, when a run is loaded from a processed NeXus file with no sample material, the table now reports the material as unset, so a blank material is no longer mistaken for one that has been defined.

  • (#42012) In the Fitting tab of the Engineering Diffraction interface, when a sequential fit stops because the change in the fitted values fell below tolerance, the fit is now treated as converged, so it is no longer reported as a failure and its result is carried over to seed the next workspace. This is the normal outcome for a fit started from an already-optimal set of parameters, which is every run after the first.

  • (#42012) In the GSAS II tab of the Engineering Diffraction interface, when a refinement is rejected by validation or fails, its working directory is now removed, so an empty tmp_EngDiff_GSASII_* directory is no longer left behind in the save location on every attempt. Two refinements started within the same second no longer collide.

  • (#42012) In the GSAS II tab of the Engineering Diffraction interface, when a refinement is started with no project name, it is now rejected with an error, so it no longer proceeds and fails later.

  • (#42012) In the GSAS II tab of the Engineering Diffraction interface, when the range markers are moved or the toolbar’s home button is pressed, the plot window now keeps the title naming the refined file, and longer reverts to GSAS-II Plot.

Single Crystal Diffraction#

New features#

  • (#41275) For WISH, the Back2BackExponential starting parameter values have been updated to reflect the new moderator introduced in September 2025.

  • (#41726) HB3AAdjustSampleNorm v1 can now output an unnormalized Q-sample event workspace and a separate normalization workspace for use with MDNorm v1.

  • (#41777) SCDCalibratePanels has a new WavelengthFromUB option to derive each peak’s wavelength from Bragg’s law using the UB matrix and its integer HKL instead of from the measured TOF. This is intended for quasi-Laue workflows, where a peak’s TOF-derived wavelength can be unreliable, but it also works for standard time-of-flight Laue data.

  • (#41809) MDNorm can now normalize monochromatic single crystal diffraction data (e.g. WAND, DEMAND) using a pre-computed normalization workspace, via the new MonoSCDNormalizationWorkspace property.

  • (#41960) Added the FindUBFromConventionalCell algorithm to determine a UB matrix (crystal orientation) from unindexed peaks and known conventional-cell lattice parameters and centering.

  • (#42122) The new IntegratePeaksShapeMD v1 algorithm integrates single crystal Bragg peaks by reusing the ellipsoidal peak shape already stored on each peak (e.g. derived from a model of the instrument’s resolution), rather than fitting a new shape from the events around each peak.

Bugfixes#

  • (#41646) Fixed the Counts vanadium normalization option in LoadWANDSCD v1 so detector counts are scaled by the mean vanadium signal when applying the vanadium correction.

  • (#42023) SaveIsawDetCal v1 and SaveIsawPeaks v1 now record the calibrated positions of CORELLI detector panels. Since Mantid 6.15.0.1 they wrote the nominal positions taken from the instrument definition, so a panel calibration was silently absent from the .DetCal and .peaks files they produced. SaveIsawPeaks v1 also wrote nominal panel orientations and sizes, which affected WISH as well as CORELLI. CORELLI and WISH files written with an affected version should be regenerated.

  • (#42023) SaveHKL v1 and AnvredCorrection v1 now use the calibrated detector distance in the slant-path absorption correction for CORELLI, having used the nominal distance since Mantid 6.15.0.1.

Release 7.0.0