GUI, Scripts And Analysis Code
Overview
All the code for the GUI (edm), scripts, and analysis code are stored in the github
https://github.com/calemhoffman/digios
The folder structure is
The repository was clone to the DAQ (~/digios), the MAC (~/digios), the HeliosDB (~/digios), and the LCRC (under /lrcr/project/HELIOS ).
For each experiment, a new branch is created from the master branch. see How to Setup for a new experiment?
Design Philosophy
GUI
The GUI is build from EDM. All the GUI screens are stored in
digios/daq/edm/screens
There are 2 ways to edit the *.edl file.
- edit as if text file.
- open the HELIOSMain.edl, then use the middle mouse click.
Scripts
Some buttons on the GUI will call bash scripts from
digios/daq/edm/scripts
This location also included in the system PATH, so, all the script can be run anywhere.
The 2 main buttons to use on the GUI are the Start RUN and Stop RUN, they trigger following scripts and action
Analysis Code
In side the folder /digios/analysis, there are many folders
- data
- stored the raw data
- merge_data
- stored the merged data and merge_log files
- root_data
- built/sorted or mapped root data and the log files
- Armory
- main analysis code, which is experiment INDEPENDENT
- Cleopatra
- for DWBA calculation (Ptolemy only work in LINUX) and kinematic simulation
- SRIM
- SRIM data file, the kinematic simulation can read these files and estimate the target effect
- Simulation
- obsolete
- Woods-Saxon
- Well, for woods-Saxon calculation
- working
- This is the working directory, the files can be different from each experiment.
Standard data analysis flow
Questions
Do we switch to CSS? - Yes, likely so, but need working system first.
What controls are most crucial?
What do we need at a minimum to take data?
Below is as old as 10/2016
EDM Window List
Before modifying things, lets try to document things. Below is a list (and possible a diagram in the future) to find the EDM windows in use (10/2016 - CRH)
/helios/edm/screens -rw-rw-r--. 1 dgs dgs 14325 May 13 2015 acqStatus.edl -rw-rw-r--. 1 dgs dgs 6968 May 13 2015 B_Leds.edl -rw-rw-r--. 1 dgs dgs 21007 May 13 2015 counterRates.edl -rw-rw-r--. 1 dgs dgs 14018 May 13 2015 DGSchannel.edl -rw-rw-r--. 1 dgs dgs 14737 May 13 2015 dgsSender.edl -rw-rw-r--. 1 dgs dgs 6997 May 13 2015 Dig_D2Win.edl -rw-rw-r--. 1 dgs dgs 6986 May 13 2015 Dig_DWin.edl -rw-rw-r--. 1 dgs dgs 23702 May 13 2015 DigEnable.edl -rw-rw-r--. 1 dgs dgs 6986 May 13 2015 Dig_KWin.edl -rw-rw-r--. 1 dgs dgs 6967 May 13 2015 Dig_LEDS.edl -rw-rw-r--. 1 dgs dgs 6986 May 13 2015 Dig_MWin.edl -rw-rw-r--. 1 dgs dgs 16405 May 13 2015 eventRates.edl -rw-rw-r--. 1 dgs dgs 11144 Jun 3 2015 globalControl.edl -rw-rw-r--. 1 dgs dgs 25726 May 13 2015 gretBoard.edl -rw-rw-r--. 1 dgs dgs 22862 May 13 2015 gretGlobal.edl -rw-rw-r--. 1 dgs dgs 14737 May 13 2015 gretSender.edl -rw-rw-r--. 1 dgs dgs 7612 Jun 23 2015 heliosCommanderNew.edl -rw-rw-r--. 1 dgs dgs 69850 Jul 21 14:15 heliosCounterRates.edl -rw-rw-r--. 1 dgs dgs 9460 Jul 21 14:38 heliosDigEnable.edl -rw-rw-r--. 1 dgs dgs 15174 Jul 21 14:33 heliosLiveTS.edl -rw-rw-r--. 1 dgs dgs 7840 Oct 14 23:43 HELIOSrunControl.edl -rw-rw-r--. 1 dgs dgs 50345 Jul 21 14:41 heliosTrigCntrl.edl -rw-rw-r--. 1 dgs dgs 51122 Jul 21 14:22 heliosTrigLock.edl -rw-rw-r--. 1 dgs dgs 3796 May 13 2015 IOC1.edl -rw-rw-r--. 1 dgs dgs 6571 May 13 2015 IOC.edl -rw-rw-r--. 1 dgs dgs 8946 May 13 2015 iocStatus1.edl -rw-rw-r--. 1 dgs dgs 19626 May 13 2015 iocStatus2.edl -rw-rw-r--. 1 dgs dgs 16101 May 13 2015 iocStatus3.edl -rw-rw-r--. 1 dgs dgs 19626 May 13 2015 iocStatus.edl -rw-rw-r--. 1 dgs dgs 24803 May 13 2015 mobBoard.edl -rw-rw-r--. 1 dgs dgs 13373 May 13 2015 mobChannel.edl -rw-rw-r--. 1 dgs dgs 3373 Jun 22 2015 mobIOC.edl -rw-rw-r--. 1 dgs dgs 4317 Jun 23 2015 runControl.edl -rw-rw-r--. 1 dgs dgs 3151 May 13 2015 Trace.edl
/edm/screens acqStatus.edl dgsDigRegisters.edl FMArunControl.edl analog_gs.edl dgs_EBTS.edl fmaTrigLock2.edl AuxIO_Ctl.edl dgs_eventrates2.edl fmaTrigLock.edl bgoledall.edl dgs_eventrates3.edl fmaVMEstatus.edl bgorates2.edl dgs_eventrates.edl GeBGO.edl bgorates.edl dgs_Ge_kdm2.edl GeBGOmain.edl BGSrunControl.edl dgs_Ge_kdm.edl geledall.edl BigSummary.edl dgs_getrigrates.edl genBoard.edl cagm_DigEnable.edl dgsGlobal2.edl genGlobal.edl cagm_iocStatus.edl dgsGlobal.edl genIOC_2M_2S.edl cagm_LiveTS.edl dgsIOC2.edl genIOC_4M_0S.edl CAGMrunControl.edl dgsIOC3.edl genIOC.edl cagmTrigLock2.edl dgsIOC.edl gen_linkControl.edl cloBoard.edl dgsiocStatus.edl gen_Master.edl cloChannel.edl dgs_linkControl.edl gen_Master.edl~ clocounterRates.edl* dgslite.edl genRouter.edl clo_DigEnable.edl dgs_LiveTS2.edl gen_RunControl.edl clo_digiRates.edl dgs_LiveTS.edl genVMEstats_2M_2S.edl cloGlobal2.edl dgs_lsbTS.edl genVMEstats_4M_0S.edl cloIOC.edl dgs_Master2.edl gerates2.edl clo_iocStatus.edl dgs_Master.edl gerates3.edl clo_LiveTS.edl dgsMTrigRegisters.edl gerates.edl CLOrunControl.edl dgs_RlinkControl.edl getrigall.edl cloTrigLock2.edl dgsRouter.edl iocStatus.edl clovBoard.edl DGS_Router.edl Master.edl clovChannel.edl dgsRTrigRegisters.edl mobBoard.edl clov_DigEnable.edl DGSrunControl.edl mobChannel.edl cloverrates.edl DGSrunControl.edl~ mobIOC.edl clovIOC2.edl dgsSender.edl monitorVeto.edl cloviocStatus.edl dgsTrigCntrl.edl MTRegsiters.edl cloVMEstatus.edl dgsTrigInfo.edl MyriadTrig2.edl counterRates.edl dgsTrigLock2.edl MyriadTrig.edl CounterRates.edl dgsTrigLock.edl newFile2.edl debugScreen.edl dgsVMEstatus.edl null dfmaCounterRates.edl dgs_XYMAP.edl oldTrig/ dfmaIocStatus.edl DigChanRegisters.edl remoteDFMATrig.edl dfma_linkControl.edl Dig_D2Win.edl Router.edl dfma_LiveTS2.edl~ Dig_DWin.edl RWDebug.edl dfma_LiveTS.edl DigEnable.edl Sample_scalers.edl dfma_Master2.edl Dig_KWin.edl screens.tar dfmaRouter.edl Dig_LEDS.edl scr.txt dfmaTrigCntrl.edl Dig_MWin.edl temp.edl dgs_BGO_kdm2.edl DigParamContrl.edl Trace.edl dgs_BGO_kdm.edl DigRegisters.edl TrigControl.edl dgs_bgotrigrates.edl eventRates2.edl trigrate_calc.db dgsBoard.edl eventrates3.edl TS.edl dgsBoard.edl.old1 eventRates.edl update dgsBoard.edl.old2 eventRatesLED.edl VMEstatus.edl dgsChannel1.edl fmaDigEnable.edl WheelMap.edl dgsChannel.edl fmaGlobal2.edl WheelMap_RBV.edl
Scripts List
/helios/edm/scripts -rwxrwxr-x. 1 dgs dgs 32336 Sep 2 16:39 current_status_DGS.save* -rwxrwxr-x. 1 dgs dgs 3313 Aug 25 15:45 diglink_r1* -rwxrwxr-x. 1 dgs dgs 3224 Aug 25 15:47 diglink_setupdgs* -rw-rw-r--. 1 dgs dgs 3224 Jul 28 18:03 diglink_setupdgs~ -rwxrwxr-x. 1 dgs dgs 2143 Aug 18 2015 dig_setup* -rwxrwxr-x. 1 dgs dgs 7996 Sep 2 16:34 dig_setupdgs* -rw-rw-r--. 1 dgs dgs 7683 Aug 31 14:51 dig_setupdgs~ -rwxrwxr-x. 1 dgs dgs 4550 Jul 28 18:01 dig_setupdgs_default* -rwxrwxr-x. 1 dgs dgs 7602 Jul 28 18:01 dig_setupdgs.old* -rw-rw-r--. 1 dgs dgs 7829 Jul 28 18:01 dig_setupdgs-YPLANE -rwxrwxr-x. 1 dgs dgs 3845 Oct 14 17:27 dig_setuphelios* -rwxrwxr-x. 1 dgs dgs 3844 Oct 14 10:50 dig_setuphelios~* -rwxrwxr-x. 1 dgs dgs 1449 May 13 2015 global_config* -rwxrwxr-x. 1 dgs dgs 4770 May 13 2015 global_save* -rwxrwxr-x. 1 dgs dgs 3142 Jul 21 11:26 HELIOSterminals* -rw-rw-r--. 1 dgs dgs 3142 Jul 21 11:24 HELIOSterminals~ -rw-rw-r--. 1 dgs dgs 84 Oct 14 17:30 null -rwxrwxr-x. 1 dgs dgs 388 Sep 20 14:47 set_dig_all* -rw-rw-r--. 1 dgs dgs 388 Sep 20 14:47 set_dig_all~ -rwxrwxr-x. 1 dgs dgs 3142 May 13 2015 terminals* -rwxrwxr-x. 1 dgs dgs 10783 Aug 25 15:46 trigonly_setupdgs* -rw-rw-r--. 1 dgs dgs 10851 Jul 28 17:48 trigonly_setupdgs~ -rwxrwxr-x. 1 dgs dgs 10783 Sep 2 16:30 trigonly_setuphelios*
/edm/scripts 1* hosts set_preamp_reset* allTerms* Hosts set_preamp_reset2* allTerms_dgs* junk.save* set_sweep.sh analog_gs.edl killTerms* show_all_ch_PV* arch/ killTerms_dgs* show_DAQC_PVS* bgohv/ LED_MODE* show_dig bgo_hv_control.py* logic show_dig_PV* blank.sh* myriad_fifo_reset.sh* show_mdig_PV* BSave.py* null show_mdig_PV_RBV* CFD_MODE* pause_daq* show_preamp_reset* CFD_MODE.old* pyscripts* start.sh chan_info.py* RallTerms* sweep_ram_setup2.sh* check_buff* Ram_registers2.sh* sweep_ram_setup3.sh* CLOterminals* Ram_registers.sh* sweep_ram_setup.sh* config_main_Trigs* read_cpld.sh temp.sh* current.save* RecoverBuffers* test.py* current_status_DGS.save* run_save* test.save* cycle_throttle* run_save_bgs* test.sh* DGSterminals* run_save_cagm* toggle.sh* diglink_r1* run_save_gsfma338* trigger_config* diglink_setupclo save_scalers.sh* trigger_setupdgs* diglink_setupdgs* save_status_DFMA.sh* trigonly_setupcagm* dig_setupclo* save_status_DGS.sh* trigonly_setupclo* dig_setupdgs* scripts.25Feb15.tar trigonly_setupclo_R1* dig_setupdgs_default* scr.txt trigonly_setupclo_R3 dig_setupdgs.old* sender_off* trigonly_setupdgs* dig_setupdgs-YPLANE sender_on* trigonly_setupdgs_GITMO* dig_setup_temp* sender_percent* trigonly_setupdgs.old* epics_save* set_all_ch* trigonly_setupdgs.ver1* Event_Veto* set_bgos* trig_ram_steup3.sh* fast_coinc_setupdgs.sh set_bgo_thresh* veto_ram_disable.sh* FMAterminals* set_dig* veto_ram_enable.sh* global_config* set_dig_all* veto_ram_setup2.sh* global_save* set_dig_ch* veto_ram_setup.sh* Global.save set_ge* write_value.sh* horns_off* set_ge_kdm* xxx* horns_on* set_ge_thresh*