Ticket #10064 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

Indirect algorithm: resolution

Reported by: Dan Nixon Owned by: Dan Nixon
Priority: major Milestone: Release 3.3
Component: Indirect Inelastic Keywords:
Cc: spencer.howells@… Blocked By: #10083
Blocking: #9969 Tester: Federico M Pouzols

Description

Convert this script to a Python algorithm, add unit tests and documentation.

This algorithm is used in calibration tab and is defined in the IndirectEnergyConversion.py file.

Change History

comment:1 Changed 6 years ago by Dan Nixon

  • Status changed from new to assigned

comment:2 Changed 6 years ago by Dan Nixon

  • Status changed from assigned to inprogress

Initial move of IndirectResolution algorithm

Work in progress, not currently working fully

Refs #10064

Changeset: d4be16678bae66127e9c7fe037084a84b7dd14c4

comment:3 Changed 6 years ago by Dan Nixon

Resolution working, needs replaced with new C2E algorithm

Refs #10064

Changeset: 0f1b4c82178916bffda792ca566279cc38fcd075

comment:4 Changed 6 years ago by Dan Nixon

  • Blocked By 10083 added

comment:5 Changed 6 years ago by Dan Nixon

Better use of property types

Refs #10064

Changeset: 70d10da216f15db5a4f63992e84e86ca9c14ea62

comment:6 Changed 6 years ago by Dan Nixon

  • Component changed from Framework to Indirect Inelastic

comment:7 Changed 6 years ago by Dan Nixon

General refactoring, corrected save option

Refs #10064

Changeset: 4f986e751101d5f09f8b9ce0b5f2ab86f25eb60d

comment:8 Changed 6 years ago by Dan Nixon

Renamed rebin parameter, addded usage example

Refs #10064

Changeset: 044c9b0896236eef60e0ffe3a8f4f364ce295375

comment:9 Changed 6 years ago by Dan Nixon

Removed Res option form algorithm

Refs #10064

Changeset: 11acea67fb555a31bc2a30f5f9471fe20da9d652

comment:10 Changed 6 years ago by Dan Nixon

systemtests

1376c3a88af996061a0e2c9e635bd755e3e3afa2 : Mofified existing system test for new Python algorithm

d1770a31da71062f65905209e1bd1a5766521a49 : Change for renamed parameter

comment:11 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

Code/Mantid/scripts/Inelastic/IndirectEnergyConversion.py Code/Mantid/scripts/Inelastic/inelastic_indirect_reduction_steps.py

Refs #10064

Changeset: d091c0f069bec7ba8897af25a8f5acf638e47719

comment:12 Changed 6 years ago by Dan Nixon

Added smoothing option to res

Refs #10064

Changeset: 59ced0f95e8b913d969e23595d56b2f524831f95

comment:13 Changed 6 years ago by Dan Nixon

  • Blocking 7842 added

comment:14 Changed 6 years ago by Dan Nixon

  • Blocking 7842 removed

(In #7842) Added in #10064

comment:15 Changed 6 years ago by Dan Nixon

Add log for smoothing, ensure smoothing copies sample logs

Refs #10064

Changeset: ab6a5f5282dd78bc2aaa462db6f874ff8160ac95

comment:16 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/IndirectDataReduction.ui Code/Mantid/MantidQt/CustomInterfaces/src/IndirectCalibration.cpp Code/Mantid/scripts/Inelastic/inelastic_indirect_reduction_steps.py

Refs #10064

Changeset: 74bd01bcd0d1be9150bf6d8ace5fafeeb066965e

comment:17 Changed 6 years ago by Dan Nixon

Toggle smooth option when RES is toggled

Refs #10064

Changeset: eb34b95079ed96121db4f535dab1b26edd7edae0

comment:18 Changed 6 years ago by Dan Nixon

Resolution working on UI

Refs #10064

Changeset: 823e69ace53e253e45296a291160914cfc2d5a9c

comment:19 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

SystemTests/AnalysisTests/ISISIndirectInelastic.py

Refs #10064

Changeset: 695820d1f51f3f064d0339aae44dc52f62f448ed

comment:20 Changed 6 years ago by Dan Nixon

Remove debugging statement

Refs #10064

Changeset: d3b05fdfcd61c20bd47b49f593a8395122bdf1ba

comment:21 Changed 6 years ago by Dan Nixon

Use a data file that is in UsageData

Refs #10064

Changeset: f23495b9aa1f71f6063ec7a30b6975ffbf4f9423

comment:22 Changed 6 years ago by Dan Nixon

Correct numpy type issue

Refs #10064

Changeset: e81216233151aa8cd9202e9d71049cea1f4e0992

comment:23 Changed 6 years ago by Dan Nixon

  • Status changed from inprogress to verify
  • Resolution set to fixed

Branch: https://github.com/mantidproject/mantid/compare/bugfix/10064_indirect_resolution_algorithm_refactor

System test branch: https://github.com/mantidproject/systemtests/compare/bugfix/10064_indirect_resolution_algorithm_refactor

To Test:

  • Open Indirect > Data Reduction > Calibration
  • Load raw file IRS26173.raw (from systemtests or data archive)
  • Check "Create RES file", the preview plot with default peak and background ranges should be shown
  • Check "Plot Result" and click Run, the resolution curve should be plotted (single peak centered on zero)

comment:24 Changed 6 years ago by Federico M Pouzols

  • Status changed from verify to verifying
  • Tester set to Federico M Pouzols

comment:25 Changed 6 years ago by Federico M Pouzols

  • Status changed from verifying to closed

It works fine, with the suggested and other files. The code looks well organized and comes with documentation.

I just noticed a TODO, IndirectResolution.py line 55, but it seems that it's one of the new algorithms that will be coming soon.

There is an issue though, selecting the wrong run files, or the wrong combination of Energy Transfer/Instrument and Calibration/run file can produce crashes. This type of user mistakes should probably be handled more gracefully. I understand this is more related to other tabs or the whole indirect data reduction system. It would be worth to check this once all the new algorithms are in place.

comment:26 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

Code/Mantid/scripts/Inelastic/IndirectEnergyConversion.py Code/Mantid/scripts/Inelastic/inelastic_indirect_reduction_steps.py

Refs #10064

Full changeset: d091c0f069bec7ba8897af25a8f5acf638e47719

comment:27 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

Code/Mantid/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/IndirectDataReduction.ui Code/Mantid/MantidQt/CustomInterfaces/src/IndirectCalibration.cpp Code/Mantid/scripts/Inelastic/inelastic_indirect_reduction_steps.py

Refs #10064

Full changeset: 74bd01bcd0d1be9150bf6d8ace5fafeeb066965e

comment:28 Changed 6 years ago by Federico Montesino Pouzols

Merge remote-tracking branch 'origin/bugfix/10064_indirect_resolution_algorithm_refactor'

Full changeset: 75b73afa493d388ac40fae77a9e00533d31bc08e

comment:29 Changed 6 years ago by Federico M Pouzols

Just passed the system test:

$ ./runSystemTests.py -m ../../../test/build-mantid/bin/MantidPlot -R IRISResolution

=>

100% tests passed, 0 tests failed out of 2 (249 skipped)
All tests passed? True
Last edited 6 years ago by Federico M Pouzols (previous) (diff)

comment:30 Changed 6 years ago by Dan Nixon

Merge branch 'master' into bugfix/10064_indirect_resolution_algorithm_refactor

Conflicts:

SystemTests/AnalysisTests/ISISIndirectInelastic.py

Refs #10064

Full changeset: 695820d1f51f3f064d0339aae44dc52f62f448ed

comment:31 Changed 6 years ago by Federico Montesino Pouzols

Merge remote-tracking branch 'origin/bugfix/10064_indirect_resolution_algorithm_refactor'

Full changeset: a5c92beb9fb5aaca02c4fc4ad5d2757234195f4d

comment:32 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 10906

Note: See TracTickets for help on using tickets.