Ticket #6396 (closed: fixed)
Make GUI for SCD reduction, with key capabilties from IsawEV
Reported by: | Dennis Mikkelson | Owned by: | Dennis Mikkelson |
---|---|---|---|
Priority: | major | Milestone: | Release 2.5 |
Component: | Mantid | Keywords: | |
Cc: | petersonpf@…, mikkelsonr@…, pascal.manuel@…, owen.arnold@…, nick.draper@… | Blocked By: | |
Blocking: | Tester: | Vickie Lynch |
Description
A GUI that will help users go through the initial SCD data reduction steps as required by TOPAZ will be useful. Specific steps include:
- Select an MD event workspace (possibly "live")
- Find peaks in the MD event workspace
- Find a UB matrix that indexes the peaks
- Modify the UB matrix to correspond to a conventional cell
- Modify the UB matrix to transform the hkls.
- Integrate the raw event data in one of several ways, producing a .integrate file for further processing by Anvred.
Change History
comment:2 Changed 8 years ago by Dennis Mikkelson
RE 6396, Initial commit of MantidEV
This is a very early, partial implementation of a CustomInterface for SCD reduction.
refs #6396
Changeset: 73c7f49bb19c8dec04f0a16459f4b64d97299657
comment:3 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: bae22a4fef501386a3096cea310d9dbac2870241
comment:4 Changed 8 years ago by Dennis Mikkelson
NOTE: Support for live data will NOT be implemented at this time.
comment:5 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: bae22a4fef501386a3096cea310d9dbac2870241
comment:6 Changed 8 years ago by Dennis Mikkelson
- Status changed from accepted to verify
- Resolution set to fixed
NOTES TO TESTER:
- The branch name is: feature/6396_basic_MantidEV
- This GUI can be started from the MantidPlot Interfaces menu item: "SCD Event Data Reduction".
- To test, load a TOPAZ SCD event file, and verify that you can find peaks, find a UB matrix (and index the peaks), choose a conventional cell, and integrate the peaks.
- Please also verify that the user cannot start another operation by hitting the Apply button on some tab, while a long-running operation such as load/convert to MD, find peaks or integrate, is still executing.
- Note that the MantidPlot GUI is still active while such a long running operation is executing. The progress of the underlying algorithms shows properly in the MantidPlot progress bar.
comment:7 Changed 8 years ago by Gesner Passos
- Status changed from verify to verifying
- Tester set to Gesner Passos
comment:9 Changed 8 years ago by Gesner Passos
- Status changed from verifying to verify
- Tester Gesner Passos deleted
comment:10 Changed 8 years ago by Vickie Lynch
- Status changed from verify to verifying
- Tester set to Vickie Lynch
comment:11 Changed 8 years ago by Vickie Lynch
- Status changed from verifying to closed
Very nice GUI! Everything ran OK for TOPAZ_3131.
comment:12 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: bae22a4fef501386a3096cea310d9dbac2870241
comment:13 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: bae22a4fef501386a3096cea310d9dbac2870241
comment:14 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: d97a8a8320407e28ff20113ce4215b38847595cd
comment:15 Changed 8 years ago by Dennis Mikkelson
RE 6396 MantidEV now does work outside Qt thread.
This update makes two changes to the initial version of MantidEV that was previously checked in (before the new git workflow).
- The first tab now supports loading and converting to MD directly from an event file. This is much more convenient for the typical user than separately loading and converting to MD using the MantidPlot GUI and just specifying the workspaces to MantidEV. The user can still specify and use event and MD workspaces already in MantidPlot, if they choose to do so.
- Running longer calculations like loading, converting to MD, finding peaks and integrating within the Qt GUI thread caused the MantidPlot GUI to become non-responsive. To avoid this, a local thread pool with one thread was added to MantidEV, and the compute intensive tasks are now run in the thread from the thread pool. Only one thread was provided, since the operations typically must be carried out in sequence. Other operations are blocked while the computation thread runs. Since the algorithms that are launched from the one thread can in turn launch multiple other threads, using one thread at this point does not hurt performance, but will prevent users from making simple mistakes, such as trying to find peaks, before the MD workspace has been completely constructed.
refs #6396
Changeset: bae22a4fef501386a3096cea310d9dbac2870241
comment:16 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 7242