Diffraction Changes#

Powder Diffraction#

New features#

Bugfixes#

  • 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 Å.

  • 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).

  • 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.

  • Fixed HFIRPowderReduction v1 producing incorrect results when SampleBackgroundFilename was supplied. The sample background was subtracted without being normalised to monitor or time, and SampleBackgroundScaleFactor was ignored.

  • Fixed CylinderAbsorptionCW Sabine calculation for large μR

Removed#

Engineering Diffraction#

New features#

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

  • In Engineering Diffraction interface the settings now supports saving experiment specific settings, based on RB Number. Previous behaviour was that every time a setting was changed it would overwrite the previous saved version of the setting, where as now, it will overwrite the previous version saved for that RB Number. This allows users to return to experiments and find have specific settings have been remembered.

  • 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.

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

  • 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.

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

  • 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.

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

  • 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.

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

  • 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#

  • 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 and the other half was not rotated at all. The IDF schema now also allows a rotation axis to be given on a <locations> element.

  • 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, so the calibration reports itself as valid immediately instead of only once the Focus tab has been used.

  • 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.

  • In the Run Processing tab of the Engineering Diffraction interface, when plotting the output of a calibration, the fitted peak centre is now read from the peak function in use, so plotting no longer fails with a KeyError if the default peak function has been changed from BackToBackExponential.

  • 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.

  • 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.

  • 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.

  • 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.

  • 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.

  • 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.

  • 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, so it no longer reverts to GSAS-II Plot.

Single Crystal Diffraction#

New features#

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

  • 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.

  • On WISH the Back2BackExponential starting parameter values have been updated post upgrade, late 2025

  • New algorithm IntegratePeaksShapeMD v1 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), instead of fitting a new shape from the events around each peak.

  • Added the FindUBFromConventionalCell algorithm, which determines a UB matrix (crystal orientation) from unindexed peaks and the known conventional-cell lattice parameters and centering.

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

Bugfixes#

  • 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.

  • 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.

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

Release 7.0.0