Ticket #5321 (closed: fixed)

Opened 8 years ago

Last modified 5 years ago

Improve and refactor MaskDetectors

Reported by: Wenduo Zhou Owned by: Peter Peterson
Priority: major Milestone: Release 2.6
Component: Framework Keywords:
Cc: petersonpf@…, taylorrj@…, campbellsi@… Blocked By:
Blocking: Tester: Michael Reuter

Description

  1. Enable MaskDetectors to mask on workspace with grouped detetors of each spectrum as the input is MaskWorkspace.
  1. Clean the combination among input list of spectra, detectors, workspace indicies and masking workspace. The correction operations should be [SpectraList OR WorkspaceIndexList] AND [DetectorList] AND [MaskedWorkspace].

Change History

comment:1 Changed 8 years ago by Wenduo Zhou

  • Status changed from new to accepted

comment:2 Changed 8 years ago by Wenduo Zhou

Refactor and enhance MaskDetectors. Refs #5321.

(1) Enable MaskDetectors to support workspace with grouped detectors; (2) Refactor algorithm such that all inputs will be converted to MaskWorkspace first.

Changeset: 6ed51af3b1c173c55a7338d2f6565eeee3a41f7b

comment:3 Changed 8 years ago by Wenduo Zhou

Clean the codes. Refs #5321.

Changeset: 12dee464aee43f41fd522215d35bf82ca917a4f1

comment:4 Changed 8 years ago by Wenduo Zhou

Modify UI of ExtractMask. Refs #5321.

Modify the output of ExtractMask(). The output workspace can be (1) MaskWorkspace for worksapce with 1 detector per spectrum (2) Worksapce2D for workspace with grouped detectors.

Changeset: dc439e599597ec7f7c81669dc351c668844ef3c5

comment:5 Changed 8 years ago by Wenduo Zhou

Add unit test and clean the codes. Refs #5321.

Changeset: ca6304603532b1a5e7a9ff2abd01e9865a78edfd

comment:6 Changed 8 years ago by Wenduo Zhou

Add an output for testing SaveMask. Refs #5321.

Changeset: 90e1725ebb7497ec81db03243f978cb258b2040c

comment:7 Changed 8 years ago by Wenduo Zhou

Fix bug found in unit tests. Refs #5321.

Changeset: 0ce266b53385aacc79d6189a21996be7aa57facf

comment:8 Changed 8 years ago by Wenduo Zhou

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

comment:9 Changed 8 years ago by Martyn Gigg

Fix a threading issue with ExtractMask. Refs #5321

Changeset: 205420b4ea3ca25b4b090d18f7de850fe9100de7

comment:10 Changed 8 years ago by Wenduo Zhou

Bring the old codes back to pass system tests tonight. Refs #5321.

Changeset: 582ee6811bbaca37c048639c7e08cc42a9d03fda

comment:11 Changed 8 years ago by Martyn Gigg

Add MaskDetectors test for smaller range masked WS. Refs #5321

Tests using a smaller masked workspace to mask a sub-section of the data on a larger input workspace. Used mainly for chunking where a MaskedWorkspace has been produced that is smaller than the a larger initial dataset

Changeset: a39b3489d5d67ebee9fc41d271eea7d1359f7eae

comment:12 Changed 8 years ago by Wenduo Zhou

Refactor and enhance MaskDetectors. Refs #5321.

(1) Enable MaskDetectors to support workspace with grouped detectors; (2) Refactor algorithm such that all inputs will be converted to MaskWorkspace first.

Changeset: 6ed51af3b1c173c55a7338d2f6565eeee3a41f7b

comment:13 Changed 8 years ago by Wenduo Zhou

Clean the codes. Refs #5321.

Changeset: 12dee464aee43f41fd522215d35bf82ca917a4f1

comment:14 Changed 8 years ago by Wenduo Zhou

Modify UI of ExtractMask. Refs #5321.

Modify the output of ExtractMask(). The output workspace can be (1) MaskWorkspace for worksapce with 1 detector per spectrum (2) Worksapce2D for workspace with grouped detectors.

Changeset: dc439e599597ec7f7c81669dc351c668844ef3c5

comment:15 Changed 8 years ago by Wenduo Zhou

Add unit test and clean the codes. Refs #5321.

Changeset: ca6304603532b1a5e7a9ff2abd01e9865a78edfd

comment:16 Changed 8 years ago by Wenduo Zhou

Add an output for testing SaveMask. Refs #5321.

Changeset: 90e1725ebb7497ec81db03243f978cb258b2040c

comment:17 Changed 8 years ago by Wenduo Zhou

Fix bug found in unit tests. Refs #5321.

Changeset: 0ce266b53385aacc79d6189a21996be7aa57facf

comment:18 Changed 8 years ago by Martyn Gigg

Fix a threading issue with ExtractMask. Refs #5321

Changeset: 205420b4ea3ca25b4b090d18f7de850fe9100de7

comment:19 Changed 8 years ago by Wenduo Zhou

Bring the old codes back to pass system tests tonight. Refs #5321.

Changeset: 582ee6811bbaca37c048639c7e08cc42a9d03fda

comment:20 Changed 8 years ago by Martyn Gigg

Add MaskDetectors test for smaller range masked WS. Refs #5321

Tests using a smaller masked workspace to mask a sub-section of the data on a larger input workspace. Used mainly for chunking where a MaskedWorkspace has been produced that is smaller than the a larger initial dataset

Changeset: a39b3489d5d67ebee9fc41d271eea7d1359f7eae

comment:21 Changed 8 years ago by Wenduo Zhou

Refactor and enhance MaskDetectors. Refs #5321.

(1) Enable MaskDetectors to support workspace with grouped detectors; (2) Refactor algorithm such that all inputs will be converted to MaskWorkspace first.

Changeset: 6ed51af3b1c173c55a7338d2f6565eeee3a41f7b

comment:22 Changed 8 years ago by Wenduo Zhou

Clean the codes. Refs #5321.

Changeset: 12dee464aee43f41fd522215d35bf82ca917a4f1

comment:23 Changed 8 years ago by Wenduo Zhou

Modify UI of ExtractMask. Refs #5321.

Modify the output of ExtractMask(). The output workspace can be (1) MaskWorkspace for worksapce with 1 detector per spectrum (2) Worksapce2D for workspace with grouped detectors.

Changeset: dc439e599597ec7f7c81669dc351c668844ef3c5

comment:24 Changed 8 years ago by Wenduo Zhou

Add unit test and clean the codes. Refs #5321.

Changeset: ca6304603532b1a5e7a9ff2abd01e9865a78edfd

comment:25 Changed 8 years ago by Wenduo Zhou

Add an output for testing SaveMask. Refs #5321.

Changeset: 90e1725ebb7497ec81db03243f978cb258b2040c

comment:26 Changed 8 years ago by Wenduo Zhou

Fix bug found in unit tests. Refs #5321.

Changeset: 0ce266b53385aacc79d6189a21996be7aa57facf

comment:27 Changed 8 years ago by Martyn Gigg

Fix a threading issue with ExtractMask. Refs #5321

Changeset: 205420b4ea3ca25b4b090d18f7de850fe9100de7

comment:28 Changed 8 years ago by Wenduo Zhou

Bring the old codes back to pass system tests tonight. Refs #5321.

Changeset: 582ee6811bbaca37c048639c7e08cc42a9d03fda

comment:29 Changed 8 years ago by Martyn Gigg

Add MaskDetectors test for smaller range masked WS. Refs #5321

Tests using a smaller masked workspace to mask a sub-section of the data on a larger input workspace. Used mainly for chunking where a MaskedWorkspace has been produced that is smaller than the a larger initial dataset

Changeset: a39b3489d5d67ebee9fc41d271eea7d1359f7eae

comment:30 Changed 8 years ago by Wenduo Zhou

  • Status changed from verify to reopened
  • Resolution fixed deleted

comment:31 Changed 8 years ago by Peter Peterson

  • Owner changed from Wenduo Zhou to Peter Peterson
  • Status changed from reopened to accepted

comment:32 Changed 8 years ago by Peter Peterson

Refs #5321. Adding methods for setting/getting mask bit.

Changeset: 78e81e8da6926ca57009bfc63b2644019a6b8255

comment:33 Changed 8 years ago by Peter Peterson

Refs #5321. Adding more tests to MaskWorkspace.

Changeset: 7659eae0aed5b33fae24cd40d63b83d22f0d23f7

comment:34 Changed 8 years ago by Peter Peterson

Refs #5321. Initialize data values during object construction.

Done in a way that I can later reset it in case the instrument is set after construction.

Changeset: 98ae9eb2996aea79c5a460bc57755fe832e4a08e

comment:35 Changed 8 years ago by Peter Peterson

Refs #5321. Removing unused code since the wksp initializes itself.

Changeset: 4492ab34e33990689bfc26ef257aa246a35c3fae

comment:36 Changed 8 years ago by Peter Peterson

Refs #5321. Adding accessor methods for wkspindex to MaskWorkspace.

Changeset: b174f4e3af45498b18879157da4e2149a1a0dc7d

comment:37 Changed 8 years ago by Peter Peterson

Refs #5321. Removing unused algorithm.

Changeset: acad0fa3f9c83b3023ed2f0c8ab39f526eb9c045

comment:38 Changed 8 years ago by Peter Peterson

Refs #5321. Stop building ConverToMaskWorkspace before it is deleted.

Changeset: 3ad7dd1d0f16b9c77a07684759b090060911a5c5

comment:39 Changed 8 years ago by Peter Peterson

Refs #5321. Added method to get number of detectorIDs.

This is in preparation for new masking workspaces which have a spectrum for each pixel.

Changeset: a0b016d2ff8748dfa7b974449fb1d652c370a2af

comment:40 Changed 8 years ago by Russell Taylor

Pete, is there a reason why the getNumberDetectors() implementation couldn't just be m_detectorCache.size() - numMonitors() ?

comment:41 Changed 8 years ago by Peter Peterson

Refs #5321. Taking Russell's advice on implementation.

Changeset: b94a5870f7928afcb1159ca26b530a5a6160a91f

comment:42 Changed 8 years ago by Peter Peterson

Refs #5321. Changing to MaskWorkspace proper.

Changeset: cdb930cd951d99d92b5a8f06b4901af21036d623

comment:43 Changed 8 years ago by Peter Peterson

Refs #5321. Fixing bug that should never happen.

Changeset: e7a7b2918d593ad005de4cb7929533a0ed871c15

comment:44 Changed 8 years ago by Peter Peterson

Refs #5321. Missed a file for workspace type change.

Changeset: b16c1b1fe92a21508cb470d3d1a36793d351b9f0

comment:45 Changed 8 years ago by Peter Peterson

Refs #5321. Partially changed back the calculation of total detectors.

Changeset: 7b3962e380b046f000318b0fa504ef67decabdb0

comment:46 Changed 8 years ago by Peter Peterson

Refs #5321. Next round of everything working again and masks.

Changeset: be639bd423d83782140c6ee2e3ec30196059c187

comment:47 Changed 8 years ago by Peter Peterson

Refs #5321. Improving error message.

Changeset: 91af6ade217af86ca5c124477c1ee8a67e7db1d9

comment:48 Changed 8 years ago by Peter Peterson

Refs #5321. Changed return type for generateEmptyMask.

Changeset: c0f3d13d11d7589f0e198896ece947fcc3516b62

comment:49 Changed 8 years ago by Peter Peterson

Refs #5321. Adding more diagnostic methods to MaskWorkspace.

Changeset: 898b819cfa3c7669a18d2a7b5e085679d71d789e

comment:50 Changed 8 years ago by Peter Peterson

Refs #5321. If the specrum index is out of range return the default.

Changeset: f8298ff52cf7052052f6769f68c1ad2ee5222908

comment:51 Changed 8 years ago by Peter Peterson

Refs #5321. CloneWorkspace if input is a MaskWorkspace.

Also added a diagnostic print to show off what the difference in the number of masked spectra versus detectors.

Changeset: 05391c60aa54f901e252298de9cc943116cde247

comment:52 Changed 8 years ago by Peter Peterson

Revert "Refs #5321. CloneWorkspace if input is a MaskWorkspace."

This reverts commit 05391c60aa54f901e252298de9cc943116cde247.

Changeset: 4a5df9974602b30e7fb4aa40fd80d38bcb1e56b5

comment:53 Changed 8 years ago by Peter Peterson

Refs #5321. Putting back in some logging information.

Changeset: 4e3f0c7ebca5843cf49ed2ca8ae9b05d4b4f7134

comment:54 Changed 8 years ago by Peter Peterson

Refs #5321. Copy over the instrument from the supplied workspace.

Changeset: bb4c518edb437c60d84f5bce6c543f462408c631

comment:55 Changed 8 years ago by Peter Peterson

Refs #5321. Link masked spectra through the detector ids.

Changeset: 4a16ca5b3964e24c97189dfafb9646e8435aa946

comment:56 Changed 8 years ago by Peter Peterson

Refs #5321. Example of how to convert the diagnostic masking.

Changeset: b320b2ebfd975833c4f050c7437c090a6ab335ce

comment:57 Changed 8 years ago by Peter Peterson

Refs #5321. Adding methods for setting/getting mask bit.

Changeset: 78e81e8da6926ca57009bfc63b2644019a6b8255

comment:58 Changed 8 years ago by Peter Peterson

Refs #5321. Adding more tests to MaskWorkspace.

Changeset: 7659eae0aed5b33fae24cd40d63b83d22f0d23f7

comment:59 Changed 8 years ago by Peter Peterson

Refs #5321. Initialize data values during object construction.

Done in a way that I can later reset it in case the instrument is set after construction.

Changeset: 98ae9eb2996aea79c5a460bc57755fe832e4a08e

comment:60 Changed 8 years ago by Peter Peterson

Refs #5321. Removing unused code since the wksp initializes itself.

Changeset: 4492ab34e33990689bfc26ef257aa246a35c3fae

comment:61 Changed 8 years ago by Peter Peterson

Refs #5321. Adding accessor methods for wkspindex to MaskWorkspace.

Changeset: b174f4e3af45498b18879157da4e2149a1a0dc7d

comment:62 Changed 8 years ago by Peter Peterson

Refs #5321. Removing unused algorithm.

Changeset: acad0fa3f9c83b3023ed2f0c8ab39f526eb9c045

comment:63 Changed 8 years ago by Peter Peterson

Refs #5321. Stop building ConverToMaskWorkspace before it is deleted.

Changeset: 3ad7dd1d0f16b9c77a07684759b090060911a5c5

comment:64 Changed 8 years ago by Peter Peterson

Refs #5321. Added method to get number of detectorIDs.

This is in preparation for new masking workspaces which have a spectrum for each pixel.

Changeset: a0b016d2ff8748dfa7b974449fb1d652c370a2af

comment:65 Changed 8 years ago by Peter Peterson

Refs #5321. Taking Russell's advice on implementation.

Changeset: b94a5870f7928afcb1159ca26b530a5a6160a91f

comment:66 Changed 8 years ago by Peter Peterson

Refs #5321. Changing to MaskWorkspace proper.

Changeset: cdb930cd951d99d92b5a8f06b4901af21036d623

comment:67 Changed 8 years ago by Peter Peterson

Refs #5321. Fixing bug that should never happen.

Changeset: e7a7b2918d593ad005de4cb7929533a0ed871c15

comment:68 Changed 8 years ago by Peter Peterson

Refs #5321. Missed a file for workspace type change.

Changeset: b16c1b1fe92a21508cb470d3d1a36793d351b9f0

comment:69 Changed 8 years ago by Peter Peterson

Refs #5321. Partially changed back the calculation of total detectors.

Changeset: 7b3962e380b046f000318b0fa504ef67decabdb0

comment:70 Changed 8 years ago by Peter Peterson

Refs #5321. Next round of everything working again and masks.

Changeset: be639bd423d83782140c6ee2e3ec30196059c187

comment:71 Changed 8 years ago by Peter Peterson

Refs #5321. Improving error message.

Changeset: 91af6ade217af86ca5c124477c1ee8a67e7db1d9

comment:72 Changed 8 years ago by Peter Peterson

Refs #5321. Changed return type for generateEmptyMask.

Changeset: c0f3d13d11d7589f0e198896ece947fcc3516b62

comment:73 Changed 8 years ago by Nick Draper

  • Milestone changed from Release 2.2 to Release 2.3

Moved at the end of release 2.2

comment:74 Changed 8 years ago by Peter Peterson

  • Milestone changed from Release 2.3 to Release 2.4

comment:75 Changed 8 years ago by Peter Peterson

  • Milestone changed from Release 2.4 to Release 2.5

comment:76 Changed 7 years ago by Nick Draper

  • Milestone changed from Release 2.5 to Release 2.6

Moved to r2.6 at the end of r2.5

comment:77 Changed 7 years ago by Peter Peterson

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

I would set the resolution as "don't care" because it has been in the wild for eleven (11) months, but that isn't an option (it is in the 2.2 tag). I'm not sure what there is to do to test it since it is so very old.

comment:78 Changed 7 years ago by Michael Reuter

  • Status changed from verify to verifying
  • Tester set to Michael Reuter

comment:79 Changed 7 years ago by Michael Reuter

  • Status changed from verifying to closed

I'm going to take it that since this feature has been out so long, if it were broken other fixes would have been generated by now.

comment:80 Changed 7 years ago by Nick Draper

  • Component changed from Mantid to Framework

comment:81 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 6167

Note: See TracTickets for help on using tickets.