Ticket #10215 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

Refactor Indirect Diffraction

Reported by: Dan Nixon Owned by: Dan Nixon
Priority: major Milestone: Release 3.3
Component: GUI Keywords:
Cc: spencer.howells@… Blocked By: #10083, #10092
Blocking: #10278, #10323 Tester: Alex Buts

Description (last modified by Dan Nixon) (diff)

Compared to C2E and IDA, the diffraction UI and code looks a little messy.

The UI should be organised into groups and have layout spacing corrected, the MSGDiffractionReducer moved into a Python algorithm then all Python strings can be removed from the UI code.

Change History

comment:1 Changed 6 years ago by Dan Nixon

  • Description modified (diff)
  • Summary changed from Clean up Indirect Diffraction UI to Refactor Indirect Diffraction

comment:2 Changed 6 years ago by Dan Nixon

Tidied up Indirect Diffraction UI

Refs #10215

Changeset: 3294baa4addb66475b6e7e96fa4a202a8903fd2d

comment:3 Changed 6 years ago by Dan Nixon

  • Status changed from new to assigned
  • Blocked By 10092 added

Batch runner needed to run reduction and save algorithms from UI code without Python.

Last edited 6 years ago by Dan Nixon (previous) (diff)

comment:4 Changed 6 years ago by Dan Nixon

  • Status changed from assigned to inprogress

comment:5 Changed 6 years ago by Dan Nixon

Another point that may as well just be added to this ticket: the Run button should be disabled when searching for data (similar to Data Reduction).

comment:6 Changed 6 years ago by Dan Nixon

  • Cc spencer.howells@… added

comment:7 Changed 6 years ago by Dan Nixon

Merge branch 'feature/10092_sequential_async_algorithm_runner' into feature/10215_clean_indirect_diffraction_ui

Conflicts:

Code/Mantid/Framework/PythonInterface/plugins/algorithms/WorkflowAlgorithms/SofQWMoments.py

Refs #10215

Changeset: 465b98f83015fa323e678ea22fdc70bbc1c9fad0

comment:8 Changed 6 years ago by Dan Nixon

Convert OSIRIS diffonly reduction to use batch algo runner

Refs #10215

Changeset: 401352d378b44a1507dfbac5cb31c47c4a764a4f

comment:9 Changed 6 years ago by Dan Nixon

Load instrument and get reflection without Python

Refs #10215

Changeset: 10888ac1fdd9dfdcad33c92263dcb00b7de8e8a2

comment:10 Changed 6 years ago by Dan Nixon

Moded two implementation into their own functions

Also general tidy up

Refs #10215

Changeset: 073d0ace1b47df5b1520d9c7e81b8fac40274c80

comment:11 Changed 6 years ago by Dan Nixon

Replaced more Python code with C++, added OSIRIS diffspec summing

Refs #10215

Changeset: f7b94e6af738960fdf3fcebc4220db26c00cee63

comment:12 Changed 6 years ago by Dan Nixon

Add MSGDiffractionReduction algorithm, replace Python in UI

Refs #10215

Changeset: 7f1ac350ba82e96600a38cb756aba4dde6ac9a2b

comment:13 Changed 6 years ago by Dan Nixon

Added save formats to algorithm

Refs #10215

Changeset: 17eb6ecaedb1df8175c425b6fe5caa0ca6801863

comment:14 Changed 6 years ago by Dan Nixon

Readded plotting otpions to UI

Refs #10215

Changeset: 5824082923ac6358f86c52deb559305e7a1bdd31

comment:15 Changed 6 years ago by Dan Nixon

Run button reflects state of raw file field

As per Indirect Data Reduction (ET)

Refs #10215

Changeset: b40f0f321e72193f9aa4faeb0b140e3a69449073

comment:16 Changed 6 years ago by Dan Nixon

Converted old diffraction tests to use new algorithm

Added base class for MSGDiffractionReduction tests

Refs #10215

Changeset: cfea3fd7fb65f73d9eaf195455a62e46de125607

comment:17 Changed 6 years ago by Dan Nixon

Added tooltip to disabled sum files in OSIRIS diffonly

Refs #10215

Changeset: aebe81925fbda344c35cf558c9afced79af16727

comment:18 Changed 6 years ago by Dan Nixon

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

Note that this assumes either you have setup searching the data archive or have systemtests/Data added to your data search path.

To test:

  • Ensure following system tests are passing: IRISDiffspecDiffractionTest, TOSCADiffractionTest and OSIRISDiffspecDiffractionTest
  • Ensure doctests are passing
  • Open Indirect > Diffraction, select an instrument and start typing a run number (e.e. IRIS, diffspec, 21360). The run button should be disabled and a relevant message displayed on it.
  • Change the run number so an invalid run (e.g. 999999). The run button should stay disabled.
  • Try setting invalid parameters in the rebinning, vanadium/can or run number fields. A message box should be shown and red markers indicate the invalid fields.
  • Try running a reduction with Spectra plot enabled and save enabled.
  • Verify that sum files is only disabled when OSIRIS and diffonly are selected and that the tooltip is suitable.

Note that there are changes to systemtests with this ticket.

Last edited 6 years ago by Dan Nixon (previous) (diff)

comment:19 Changed 6 years ago by Dan Nixon

Sum files should default to true

Refs #10215

Changeset: e70cf16334c226196756c08e46d90eea94ba627b

comment:20 Changed 6 years ago by Dan Nixon

  • Status changed from verify to reopened
  • Priority changed from minor to major
  • Resolution fixed deleted

comment:21 Changed 6 years ago by Dan Nixon

  • Status changed from reopened to inprogress

Temp. removal of failing tests

Refs #10215

Changeset: c07806054133f2a0eed7522fb54bfcfaf83c0bd8

comment:22 Changed 6 years ago by Dan Nixon

Corrected MSGDiffractionReduction catagory

Refs #10215

Changeset: 3a5b61bd7f0d96d3ac0237e90d90eddc059dfda9

comment:23 Changed 6 years ago by Dan Nixon

Fix numpy issue with IntArrayProperty

Refs #10215

Changeset: 943bb7be4b65f103bd6e8d032e556ae390af3d99

comment:24 Changed 6 years ago by Dan Nixon

Re-add MSGDiffractionReduction tests

Refs #10215

Changeset: 746bbb0608b523ff73f30cb64bc68df37fcdf016

comment:25 Changed 6 years ago by Dan Nixon

Added documentation to MSGDiffractionReduction

Refs #10215

Changeset: 642da70b3c1f6f65e47e8334d63fbd52ab407459

comment:26 Changed 6 years ago by Dan Nixon

Temp. removal of failing doc test

Refs #10215

Changeset: 44c51bf5e0cec9ffc75fdd9b2a761d01b2690598

comment:27 Changed 6 years ago by Dan Nixon

  • Blocked By 10083 added

comment:28 Changed 6 years ago by Dan Nixon

Re-add doc test

Note the fix for this is in ticket 10083

Refs #10215

Changeset: a895942dfa21d59d79753e1bca010f5fd66d7c6e

comment:29 Changed 6 years ago by Roman Tolchenov

The wiki says that SpectraMin and SpectraMax can be determined automatically. It didn't work for me when I was testing #5566.

comment:30 Changed 6 years ago by Dan Nixon

I can't remember of they were working in that ticket, but they seem to be working fine now.

comment:31 Changed 6 years ago by Dan Nixon

Merge branch 'master' into feature/10215_clean_indirect_diffraction_ui

Refs #10215

Changeset: bb449d25ec30c7178f1582e33102e6a27a8f9bdd

comment:32 Changed 6 years ago by Dan Nixon

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

comment:33 Changed 6 years ago by Dan Nixon

  • Blocking 10323 added

comment:34 Changed 6 years ago by Dan Nixon

  • Blocking 10278 added

comment:35 Changed 6 years ago by Alex Buts

  • Status changed from verify to verifying
  • Tester set to Alex Buts

comment:36 Changed 6 years ago by Alex Buts

  • Status changed from verifying to reopened
  • Resolution fixed deleted

All seems fine but minor issues worth dealing with if this work has been undertaken.

1) Rebinning runs (and fails on algorithm and not interface) if left binning range is equal to right binning range. This is certainly simple thing to do.

2) Interface allows arbitrary spectra range to be entered. Algorithm, again, fails at execution and not at interface if the spectra requested are outside of the range available.

Would be really nice to have suggestion of the range as user may not know what spectra to use. (this may be a bit too tricky to implement as minor change so I am not insisting on this, but rather following the testing suggestions) Defaults are changing and different spectra are present to different reflection options, but user apparently have option to change something (which substantially changes the result)

comment:37 Changed 6 years ago by Dan Nixon

  • Status changed from reopened to inprogress

Fix rebinning validation, added error message

Refs #10215

Changeset: 5de12ac47716b1f401892338f5166717c63e3ea4

comment:38 Changed 6 years ago by Dan Nixon

The rebinning validation should now warn when Start = End.

The spectra range is validated by the reducer Python class so having this done in the algorithm validation would mean loading each data file twice, this should be fixed in #9093.

For now there is an error message on the UI which instructs the user to check the Result Log.

Last edited 6 years ago by Dan Nixon (previous) (diff)

comment:39 Changed 6 years ago by Dan Nixon

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

comment:40 Changed 6 years ago by Alex Buts

  • Status changed from verify to verifying

comment:41 Changed 6 years ago by Dan Nixon

  • Status changed from verifying to closed

Merge branch 'feature/10092_sequential_async_algorithm_runner' into feature/10215_clean_indirect_diffraction_ui

Conflicts:

Code/Mantid/Framework/PythonInterface/plugins/algorithms/WorkflowAlgorithms/SofQWMoments.py

Refs #10215

Full changeset: 465b98f83015fa323e678ea22fdc70bbc1c9fad0

comment:42 Changed 6 years ago by Dan Nixon

Merge branch 'master' into feature/10215_clean_indirect_diffraction_ui

Refs #10215

Full changeset: bb449d25ec30c7178f1582e33102e6a27a8f9bdd

comment:43 Changed 6 years ago by Alex Buts

Merge remote-tracking branch 'origin/feature/10215_clean_indirect_diffraction_ui'

Full changeset: 6e0145f02173f0c8f62e063d63ae53ca7c930525

comment:44 Changed 6 years ago by Alex Buts

Merge remote-tracking branch 'origin/feature/10215_clean_indirect_diffraction_ui'

Full changeset: c8b08e8407a671cf00c8904ed881b939220a0587

comment:45 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 11057

Note: See TracTickets for help on using tickets.