Rachel GUI
From GOSIA
(moved beta version videos to a separate page, and reorganized tutorial sections) |
(Changed installation to include forking the git repo.) |
||
Line 3: | Line 3: | ||
[[File:Guisnapshot.png|thumb|right|A snapshot of the alpha version GUI.]] | [[File:Guisnapshot.png|thumb|right|A snapshot of the alpha version GUI.]] | ||
- | The Rachel | + | For a demo of Rachel's capabilities, watch [http://youtu.be/moVVC-GODzQ The Rachel Video on Youtube], or [http://www.pas.rochester.edu/~hayes/beta_rachel/main_ad.html Download the mp4 (9MB)]. |
- | A 64-bit processor is essential, because Gosia runs fastest and most accurately on 64-bit machines. | + | The Rachel interface facilitates [http://www.pas.rochester.edu/~hayes/beta_rachel/calculation_in_2_minutes.html fast setup of Gosia calculations] and data analysis using push-button controls with guided input and 'plain language' warnings during setup. Rachel is written in Python 2.6 and is expected to be Python 2.7 compliant. It runs under Linux and Unix (OS X) machines. A Windows version is not planned. |
+ | |||
+ | A 64-bit processor is essential, because Gosia runs fastest and most accurately on 64-bit machines. Versions 1.* have many structural changes in the code, allowing more automation, more general particle detector options and fewer user prompts for standard operations. | ||
[[File:Typicalgosiainput.png|thumb|right|Excerpt of a typical Gosia input for a collective system.]]While gosia.20081208 incorporates the [[OP,BRIC]] command to read internal conversion data from BrIcc data files, removing the burden of entering ICC interpolation data by the user, the GUI allows the greatest possible automation by prompts for pre-defined or user-defined germanium detector crystals or arrays, calculation of Zeigler stopping power data, optimum meshpoint selection for yield calculations, transformation of rectilinear detector definition to laboratory-frame spherical-polar interpolation coordinates, etc. For standard problems, the burden on the user is reduced to entering nuclear level and matrix data for simulations (including optional data-set simulation) and real experimental data for fitting of matrix elements. For collective systems, where the matrix definition often includes several hundred lines of matrix elements, rotor parameters can be given to reduce the setup time for the initial guesses of matrix element values. This also eliminates the need for the user to re-index the reduced matrix elements by hand as changes are made to the matrix or level scheme. | [[File:Typicalgosiainput.png|thumb|right|Excerpt of a typical Gosia input for a collective system.]]While gosia.20081208 incorporates the [[OP,BRIC]] command to read internal conversion data from BrIcc data files, removing the burden of entering ICC interpolation data by the user, the GUI allows the greatest possible automation by prompts for pre-defined or user-defined germanium detector crystals or arrays, calculation of Zeigler stopping power data, optimum meshpoint selection for yield calculations, transformation of rectilinear detector definition to laboratory-frame spherical-polar interpolation coordinates, etc. For standard problems, the burden on the user is reduced to entering nuclear level and matrix data for simulations (including optional data-set simulation) and real experimental data for fitting of matrix elements. For collective systems, where the matrix definition often includes several hundred lines of matrix elements, rotor parameters can be given to reduce the setup time for the initial guesses of matrix element values. This also eliminates the need for the user to re-index the reduced matrix elements by hand as changes are made to the matrix or level scheme. | ||
Line 11: | Line 13: | ||
==How to get the Rachel package== | ==How to get the Rachel package== | ||
- | + | Get the latest release version from the [[Gosia#Downloads | Downloads section on the Main Page]]. | |
- | The | + | ==Version notes== |
+ | |||
+ | The [[Gui_release_notes | version notes page]] gives a history of Rachel updates. Known issues are given for each version, as well as the current version. | ||
==Installation notes== | ==Installation notes== | ||
Line 19: | Line 23: | ||
===General=== | ===General=== | ||
- | Rachel has been installed successfully on | + | A script was added by Mitch Allmond that compiles and sets up Rachel, Gosia and Elast in one step. First, un-tar the distribution, or pull the git repo from the [[Gosia#Downloads | Downloads section on the Main Page]]. Please fork it and make pull requests if you have anything to contribute. |
+ | |||
+ | <pre> | ||
+ | % tar -xvf rachel_distribution_1.3.0.tar | ||
+ | </pre> | ||
+ | |||
+ | or similar for the correct version number. Move into the new Rachel directory and run compile-all.sh: | ||
+ | |||
+ | <pre> | ||
+ | % cd rachel_distribution_1.3.0 | ||
+ | % ./compile-all.sh | ||
+ | </pre> | ||
+ | |||
+ | You will be prompted if any previous setup information needs to be overwritten. | ||
+ | |||
+ | Rachel has been installed successfully on a number of Linux and OS X systems. Most problems are related to the level scheme graphics. Refer to [http://matplotlib.sourceforge.net/faq/installing_faq.html#backends matplotlib backends] for remedies. You can view or submit detailed installation notes for any particular operating system. (Please link them to a separate Wiki page.) | ||
If the default python environment set in the rachel.py executable is not appropriate, the following error will appear: | If the default python environment set in the rachel.py executable is not appropriate, the following error will appear: | ||
Line 61: | Line 80: | ||
In the beta versions, the GUI preserves backward-compatibility of the saved session files, so that users can upgrade the GUI without having to rebuild the session. | In the beta versions, the GUI preserves backward-compatibility of the saved session files, so that users can upgrade the GUI without having to rebuild the session. | ||
- | When | + | When changing to version 1.0 or later, users will have to rebuild their sessions, because of major changes in the internal structure that cannot be automatically upgraded. This can be aided by the export/import tools for the level and matrix data. Subsequent versions will have the automatic upgrading reinstated. |
- | + | ==Graphics Issues== | |
- | + | If you do not see a level scheme diagram after loading a level scheme or a saved session, click "Examine fig. window" once. The level scheme should then appear. | |
+ | If it does not, or if the level scheme window buttons (zoom, pan, etc.) do not work, you may need to change the graphics back-end. The matplotlib graphics library used for the level scheme and particle detector layout comes with several choices of back-ends. | ||
+ | |||
+ | *On OS X machines, "macosx" may work best. | ||
+ | *On Ubuntu, GTKAgg works best, but the user must click "Examine fig. window" 'once' after loading a level scheme or saved session. | ||
+ | |||
+ | The back-end is in the matplotlibrc file in the .matplotlib directory, or will be, after you start Rachel for the first time. | ||
+ | |||
+ | <pre> | ||
+ | hayes@Sobchak:~$ cd .matplotlib/ | ||
+ | hayes@Sobchak:~/.matplotlib$ ll | ||
+ | total 116K | ||
+ | drwxr-xr-x 3 hayes hayes 4.0K Nov 5 12:30 ./ | ||
+ | drwxr-xr-x 125 hayes hayes 12K Nov 5 12:53 ../ | ||
+ | -rw-r--r-- 1 hayes hayes 92K Oct 27 13:13 fontList.cache | ||
+ | -rw-r--r-- 1 hayes hayes 17 Aug 19 02:09 matplotlibrc | ||
+ | drwxrwxr-x 2 hayes hayes 4.0K Oct 27 13:13 tex.cache/ | ||
+ | hayes@Sobchak:~/.matplotlib$ cat matplotlibrc | ||
+ | backend : GTKAgg | ||
+ | hayes@Sobchak:~/.matplotlib$ | ||
+ | </pre> | ||
+ | |||
+ | Change the backend line as desired. The choices are found | ||
+ | |||
+ | |||
+ | ==Capabilities of version 1== | ||
+ | |||
+ | Note that there are major simplifications in the Ge detector array setup and data loading. | ||
+ | |||
+ | * Human-readable data files that are robust for changes in the experimental setup and level scheme | ||
* Azimuthally symmetric particle detection | * Azimuthally symmetric particle detection | ||
* Partitioning particle-detector data by azimuthal angle | * Partitioning particle-detector data by azimuthal angle | ||
Line 73: | Line 121: | ||
* Normal or inverse kinematics experiments | * Normal or inverse kinematics experiments | ||
* A user-expandable library of standard Ge crystals e.g. Gammasphere | * A user-expandable library of standard Ge crystals e.g. Gammasphere | ||
+ | * A user-expandable library of detector arrays (Tigress, Miniball, Gammasphere...) | ||
* Data from summed 4pi arrays | * Data from summed 4pi arrays | ||
* Efficiency-corrected gamma-ray data only | * Efficiency-corrected gamma-ray data only | ||
Line 81: | Line 130: | ||
* Accuracy testing to determine if Gosia will be appropriate for a planned experiment | * Accuracy testing to determine if Gosia will be appropriate for a planned experiment | ||
* Fitting and correlated error estimations | * Fitting and correlated error estimations | ||
- | * Reading level schemes and gamma-ray data from Radware AGS files and | + | * Reading level schemes and gamma-ray data from Radware AGS files and [[Rachel_yield_data_files | Rachel text format]] including |
** Branching ratio data | ** Branching ratio data | ||
** Previously measured EM matrix elements, including the measured phases | ** Previously measured EM matrix elements, including the measured phases | ||
Line 92: | Line 141: | ||
* Instantly generating plots of experimental vs. predicted yields via gnuplot [[File:plottingexample.png|thumb|right|A zoomed view of a plot of yield vs. spin in a rotational band generated from the Gosia output and experimental data.]] | * Instantly generating plots of experimental vs. predicted yields via gnuplot [[File:plottingexample.png|thumb|right|A zoomed view of a plot of yield vs. spin in a rotational band generated from the Gosia output and experimental data.]] | ||
* Automated generation of stopping power and internal conversion input for Gosia | * Automated generation of stopping power and internal conversion input for Gosia | ||
- | * Push-button controls | + | * Push-button controls, optional pop-up guidance and guided prompts |
* A searchable help function | * A searchable help function | ||
- | |||
* Undo/Redo of most functions and crash recovery | * Undo/Redo of most functions and crash recovery | ||
Line 110: | Line 158: | ||
===Planned upgrades=== | ===Planned upgrades=== | ||
- | There are a number of planned upgrades, | + | There are a number of planned upgrades, many of which have already been added to versions 1.0 and later. The upgrade plan and priorities will be changed based on user feedback and bug reports. |
# More accurate stopping power calculations for low-Z beams. | # More accurate stopping power calculations for low-Z beams. | ||
Line 129: | Line 177: | ||
[http://www.pas.rochester.edu/~hayes/beta_rachel/calculation_in_2_minutes.html Fast setup of Gosia calculations] | [http://www.pas.rochester.edu/~hayes/beta_rachel/calculation_in_2_minutes.html Fast setup of Gosia calculations] | ||
+ | |||
+ | ===Help with Rachel on this Wiki=== | ||
+ | |||
+ | Use the search function to the left, or start here. | ||
+ | |||
+ | [[rachel_selected_topics | Selected help topics for Rachel]] | ||
===Tutorial videos=== | ===Tutorial videos=== | ||
- | + | [[rachel_1.0_tutorial_videos | New Tutorial videos]] are being produced for version 1.0. These will be much shorter and more focused than the old videos. | |
- | + | ||
- | + | You can still watch [[rachel_beta_tutorial_videos | beta-version tutorial videos]], but there have been many changes. General procedures are similar. These old videos contain more topics per video, so some are quite long. | |
===The manual=== | ===The manual=== | ||
Line 147: | Line 200: | ||
===Experiment planning and accuracy testing tools=== | ===Experiment planning and accuracy testing tools=== | ||
- | The simulation tools have been improved since the recording of these video tutorials. The user will find extra prompts for the details of the planned beam run, and estimated absolute measured counts will be calculated and displayed. The display format | + | The simulation tools have been improved since the recording of these video tutorials. The user will find extra prompts for the details of the planned beam run, and estimated absolute measured counts will be calculated and displayed. The display format looks like the following: |
<pre> | <pre> | ||
- | Experiment | + | Experiment 1 |
- | + | Target excitation by Z,A = 54,136 at 517 MeV. Mean scattering angle = 45.0 deg. | |
- | Band | + | Detector 1 |
- | ---------------------------------------------------------------------------------------------------------------- | + | Single crystal at theta, phi = 45.0, 45.0 deg. Solid angle = 0.06 sr. |
- | + | This simulation does not include random gaussian scatter. Counts represent the cross sections calculated by Gosia. | |
- | + | Transition | Gammas incident | Fraction of | Observed Counts | |
- | + | | on Ge detectors | Gamma Incident | | |
- | + | Initial Final | | Energy **Detector Gammas | | |
- | + | Band Spin Band Spin | Counts *Error | (keV) Efficiency Detected | Rate(Hz) Counts ***Error | |
- | + | ------------------------------------------------------------------------------------------------------------------------- | |
- | + | gsb 1.5 gsb 0.5 4.662e+06 2.332e+05 100.0 0.00049 0.09962 1.075e+00 4.644e+05 6.815e+02 | |
- | + | gsb 2.5 gsb 0.5 1.570e+07 7.848e+05 200.0 0.00179 0.36853 1.339e+01 5.784e+06 2.405e+03 | |
- | + | a 2.5 gsb 0.5 1.079e+04 5.647e+02 250.0 0.00189 0.38907 9.719e-03 4.199e+03 6.480e+01 | |
+ | a 2.5 gsb 1.5 9.816e+02 7.705e+01 150.0 0.00135 0.27823 6.322e-04 2.731e+02 1.653e+01 | ||
+ | a 2.5 b 3.5 4.689e+05 2.376e+04 75.0 0.00015 0.0312 3.387e-02 1.463e+04 1.210e+02 | ||
</pre> | </pre> | ||
- | The " | + | The "Observed Counts" are calculated using the efficiency curve from the detector library or a detector created by the user. The "Detector Efficiency" <math>\epsilon</math> is the usual definition. Possion counting errors are based on the observed counts, while additional error on the ''total'' efficiency-corrected counts may be added by the user. |
Refer to the page [[Rachel_simulated_yield_output | Rachel simulated yield output]] for more information about simulations with the GUI. | Refer to the page [[Rachel_simulated_yield_output | Rachel simulated yield output]] for more information about simulations with the GUI. |