Ticket #10309 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

LoadISISNexus does not load monitors if they are at the end of the spectra list

Reported by: Alex Buts Owned by: Alex Buts
Priority: major Milestone: Release 3.3
Component: Framework Keywords:
Cc: martyn.gigg@… Blocked By:
Blocking: #9989 Tester: Martyn Gigg

Description

And may be having different time channels (this needs checking)

Change History

comment:1 Changed 6 years ago by Alex Buts

  • Blocking 9989 added; 9909 removed

comment:2 Changed 6 years ago by Alex Buts

refs #10309 LoadNexusMonitors falls back to isis vms compartibility

data to got instrument name from incorrectly formatted ISIS nexus file

Changeset: 30c4756704cd1dda86f3efd5c11e9078619f3744

comment:3 Changed 6 years ago by Alex Buts

refs #10309 unit test for the changes

Changeset: eaf7cccdd980f7cbc91a46776ebf4c255666951b

comment:4 Changed 6 years ago by Alex Buts

refs #10309 Typo in unit test

Changeset: b578ede841a192e5ad2c519b33300b8edf39a56e

comment:5 Changed 6 years ago by Alex Buts

  • Status changed from new to assigned

I've fixed LoadNexusMonitors but loading monitors with workspace does not make sense when time channels are different. In this case the monitors have to go to a separate workspace and this should be done within the frames of the ticket #9989.

This is why I am marking this ticket as completed.

To test try LoadNexusMonitors on LOQ49886 from Mantid unit tests. If will fail, bit will work properly after the patch.

Unit and system tests should not be affected. All other changes will go to ticket #9989

Last edited 6 years ago by Alex Buts (previous) (diff)

comment:6 Changed 6 years ago by Alex Buts

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

comment:7 Changed 6 years ago by Alex Buts

  • Blocking 9989 removed

comment:8 Changed 6 years ago by Alex Buts

  • Blocking 9989 added

(In #9989) The code described in the ticket should work now. This requested changes in the code much larger then I had ever anticipated.

The problem with the generic loader above was that LoadISISNexus2, invoked by it after this command did not understand option "Load Monitors separately"

To fix this ticket I've implemented two and accounted for third thing:

1) An interface (borrowed from load raw), which allows to select separate monitor's loading.

2) A possibility to load monitors which have different time binning wrt the detectors.

3) Sometimes, scientists on instrument mix up wiring table and monitors data go into detectors data. I do not know if monitors data are written into monitors block, but I've tried explicitly identify this situation and reading the monitors data from the detector's table in this case.

LoadISISNexus have now two logically separate operation modes. The old one, which is default and should work as before if LoadMonitors->Included is selected.

The new one, where spectra selection options are largely ignored should be common for LoadISISNexus, LoadRaw and LoadEventNexus. It is necessary for seamless functioning of reduction from common loader's interface and loads monitors together, separately or excludes them from workspace.

I tried but have not implemented LoadMonitors->Separately for group workspace. If somebody needs this option, a separate ticket to do that should be issued.

I tried this loader on range of files, presented at ftp://ftp.nd.rl.ac.uk/scratch/abuts/Ticket_9989/ It works fine for me but changes to underlying code are so big, that tester should try to break the loader selecting different files and different mixtures of the interface options.

comment:9 Changed 6 years ago by Martyn Gigg

  • Status changed from verify to verifying
  • Tester set to Martyn Gigg

comment:10 Changed 6 years ago by Martyn Gigg

  • Status changed from verifying to closed

Merge branch 'bugfix/10309_LoadMonitorsBug'

Full changeset: da669ea6c7e6410d1ff6f115a9383d71af02e589

comment:11 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 11151

Note: See TracTickets for help on using tickets.