Fall2016 HOWTO

From PREX Wiki
Jump to: navigation, search
  • When to start a new run
    • After 30minutes or less, If the target changes,If the energy changes,if the raster size changes,if you need the HV on the SAMs changed
  • When to analyze a run
    • immediately after you start a run and get some beam current, analyze the first few thousand events to examine.
    • analyze a run with the initial control.db after the run is completed
    • after a new control.db specific to that run# is created later, the run should be reanalyzed with that
  • When should the SAMs be changed?
    • in the googele sheet in the grey columns, SAM1/5 and SAM3/7 should stay below 60uA, below 30uA to be safe. SAM4/8 should stay below 10uA, below 5uA to be safe. If those values are higher than that, call Caryn. If the grey columns change to blue, red or yellow, call Caryn.
  • What should I look at in the data?
    • Look at R->Draw(“bcm2:ev_num”,”ev_num>10”), record the predominant values during the run
    • Look at R->Draw(“blumi1:ev_num”,”ev_num>10”), record the predominant values during the run, do so for the other blumi’s
    • If the current is constant during the run for the most part with a few beam trips, just look at R->Draw(“blumi1”,”ev_num>10&&bcm2>10”) or >100 or >1000 , whatever cut gets you a reasonable histogram
    • P->Draw(“asym_bcm2”), we want this number near zero.
  • TAKING RUNS
  • Take 30min runs with 2 configurations: (1) CH+RHRS “parity16” configuration on adaq2 & (2) Injector “injector” configuration on adaq1. They will have different run numbers. You should run them at the same time and record both in the googlesheet runlist.
  • T0 start CH+RHRS Coda: ssh -Y palatchi@hallgw.jlab.org (or your name),ssh -Y apar@adaq2, (- xterm & is useful), startcoda->connect->configure->”parity16”->Download->Prestart->Go/Start (to stop koda, do kcoda)
  • To start Injector Coda: logon to apar@adaq1, startcoda->connect->configure->”injector”->Download->Prestart->Go/Start
  • Run numbers are shown on CODA
  • Configuration is selected on CODA before downloading a run and starting a run (typically Parity16 on adaq2 and injector on adaq1)
  • notes on run should reflect what DVCS and Gmp are doing/noting in their elog(https://logbooks.jlab.org/book/halog i.e. current calibration run, production running, optics run, cosmics run, harp scan)
  • During running it is useful to observe the current vs time so you know when beam is on/off. logon to adaq@adaq2, type jtabs, StripChart, type in “hac_bcm_average” or “IBC0L02Current” to monitor beam current. Type in “halla_MeV” to try to monitor beam energy.
  • helicity info should be typed in after doing the following: ssh –Y adaq@adaq1, cd helicity, ./getheldata (typical output is HELCLOCKd Free Clock, HELTSETTLEd 500, HELTSTABLEd 33330,HELPATTERNd 1,HELDELAYd No Delay,HELFREQ 29.5596 , if the settings are not at these values alert Caryn)
  • to get Pockels Cell HV settings and whether voltages are ON/OFF, logon to adaq@adaq2(or adaq1), ~/bin/NewTools, click OPSMenu, JMenu, Injector, Parity, Parity Controls. Record Pos HV and Neg HV values in counts. They are displayed in counts not in volts (65535counts = 4000V conversion factor)
  • to get RHWP angle, logon to adaq@adaq2(or adaq1), ~/bin/NewTools, click OPSMenu, JMenu, Injector, Parity Controls. Record values display in counts, they are not in degrees (8000counts=360degrees).
  • to get Wein angles, logon to adaq@adaq2(or adaq1), ~/bin/NewTools, click OPSMenu, JMenu, Injector, then choose Spin then Spin Control. Look for the HWienAngle and VWeinAngle at bottom of screen on left and right.
  • to get IHWP status, logon to adaq@adaq2(or adaq1), ~/bin/NewTools, click OPSMenu, JMenu, Injector, Parity Controls. Look for Insertable WavePlate, it will either be IN or OUT.
  • to get timing board data for RHRS and CH, start Greenmonster and examine TimeBoard Tab: (apar@adaq2, cd ~/caryn/devices/config, config &). Injector doesn’t have a timing board.
  • to get vqwk data, examine VQWK ADC tab of Greenmonster ((cd ~/caryn/devices/config, config &) for the CH and RHRS. For the injector, to check the vqwk settings, go to apar@adaq2, ~/devices/crl/injector, more g0inj.flags, at the bottom of the file it will say something like “vqwksamples=4141,vqwkdelay=10,vqwkblocks=4” in an uncommented (no #) line.
  • note, be sure to close Greenmonster when you are done with it by clicking “quit”, double check it is gone with “ps aux | grep config”. If config is running as process with #, do kill -9 #.
  • to check the target, go to adaq@adaq1, ~/bin/NewTools, ops, search “Hall A target lifter”, select and infer target name from target position. Or look at the most recent DVCS and Gmp elogs which name the target being used. Sometimes they give the target name and sometimes the material. To figure out the name & material, the target list is here https://logbooks.jlab.org/files/2015/02/3321350/HallATargetConfiguration21915.pdf and I’ve put the document in our haplog
  • to get the beam current, logon to adaq@adaq2, jtabs, HallA tab, BCM, Current Monitor. Record IBC0L02 and average to two bcms. Keep an eye on it during running to see if the beam trips or if the current changes.
  • to get the beam energy, logon to adaq@adaq2, jtabs, HallA tab, Tools Display, at the bottome in “beamline” there is set energy and MeV. Record in GeV in googlesheet.
  • to see if raster is on, logon to adaq@adaq2, jtabs , connect to JTAB, go to the Hall A tab and type "raster" in the search box, Hall A fast raster. If raster current is not zero and is inbetween Imax and Imin, it’s on. If there’s not a current, it’s off.
  • to get raster size, go to adaq@adaq1, ~/bin/NewTools, ops, search “Hall A fast raster”, select, examine raster size height x width . Also, check recent Gmp/DVCS elogs which refer to raster size (i.e. 4x3)
  • Checking SAM (small angle monitor) HV settings. This should only be done when you begin your shift. After you check the settings, you should exit the gui so other people can use it. At the end of your shift, the SAM voltages should be turned off unless someone else is taking over data collection. The SAM voltages should NEVER be on when no one is taking data. And SAM voltages for SAM2 and SAM6 should NEVER be above -75V. No one should change the HV settings or turn the HV on except Dustin or Caryn. You must analyze the data for a run initially, when there is beam on and enter the SAM values from the data file into the googlesheet. If the grey columns turn blue,yellow, or red, please contact Caryn 513-907-0175 if a change needs to be made. To see what the settings are, logon to adev@adaq1, cd slowc, ./hvs RIGHT, and start the gui. It’s ok if someone else is using to to go ahead and open it, but we don’t want to do this all the time, just once a shift hopefully. Examine tab rpi7:2001, tab S4, channels L1.0,L1.1,L1.2,L1.3,L1.4,L1.5,L1.6,L1.8 which are SAMs 1-8. L1.1 & L1.5 (SAM2&6) should always have -75V setpoints. The measured voltage is shown in a column to the left of the setpoints and a checkmark indicates that the HV is on. The HV’s should correspond correctly with the calculated rates, and you should look at the table “HV settings for Fall 2016” in the googlesheet.
  • to check bcm2, go to apar@adaq2, cd ~/pan, analyze the run via pan –f /adaq2/data1/apar/parity16_...., root –l ROOTfiles/parity16_.....root, R->Draw(“bcm2:ev_num”,”ev_num>10&&bcm2>0” or whatever cut gets rid of beam trips, htemp->GetMean() if have done “bcm2” only.
  • to check blumi2 and blumi6, go to apar@adaq2, cd ~/pan, analyze the run via pan –f /adaq2/data1/apar/parity16_...., root –l ROOTfiles/parity16_.....root,R->Draw("blumi2:ev_num","ev_num>10&&bcm2>0") or whatever cut gets rid of beam trips, and record the highest value you see in the googlesheet.
  • to check control.db used (for CH+RHRS,”parity16” configuration, on adaq2), in apar@adaq2, cd ~/pan, do ll, look for symbolic link that control.db points to ie “controldb/control.db_parity16_withadcxs_save” or some such.
  • to check control.db used (for Injector,”injector” configuration, on adaq1), in apar@adaq2, cd ~/paninj/pan, do ll, look for symbolic link that control.db points to ie “controldb/control.db_injector_2501” or some such.
  • For later analysis, control.db may need to be updated. To do
  • when done with shift, save a copy of google sheet to a haplog at https://ace.phys.virginia.edu:80/HAPPEX by selecting your runs in the sheet and going to file print which creates a pdf you can save and put on the elog. State in the elog text the run numbers you took and any relevant info not recorded in the googlesheet and attach and plots you made.
  • when done with the shift make sure the HV on the SAMs are turned off (the boxes are unchecked). Only keep the SAM HV on if someone else is doing a shift immediately after you and takes over.
  • when shift is over, make sure Greenmonster is closed. check that config isn’t still running by doing ps aux | grep config and kill it if config is running with kill -9 #.
  • when you complete your shift, print a copy of the runlist and elog the pdf it produces
  • when you complete your shift, your rootfiles should be in /adaq2/work1/apar. You should move all those files into /volatile/halla/parity/caryn/rootfiles/rootfilesFall2016. You can move the files by doing by doing from ~/pan, cd ROOTfiles, mv parity15_.....yourfiles….root /volatile/halla/parity/caryn/rootfiles/rootfilesFall2016
  • check http://scicomp.jlab.org/scicomp/#/disk/volatile to make sure the disk isn’t filling up. If a-parity USED column gets above 1000GB, let Caryn know (513-907-0175).


  • Analysis after runs
    • PEDESTALS for SAMs and BPMs
      • run on apar@adaq2, ~/pan/macros/GetPedestal.C on parity15 rootfiles. (root –l, .x macro/GetPedestal.C(run#,”whatevercutyouthinkisnecessaryORnocut”) ) This will output pedestals for all of the vqwk adcs derived from beam trips (except for vqwk0 which contains bcms and should not have pedestals derived this way)
      • make note of where control.db is pointing to: in ~/pan, do “ll”, look at the file control.db is linked to and make note of it
      • make a new control.db : emacs control.db &, save as controldb/control.db_parity16_run#
      • edit this new control.db: emacs controldb/control.db_parity16_run# & , copy and paste outputs from the macro directly into the control.db file in place of where the pedestal values are, look for “ped” and “vqwk”. Useful commands in emacs esc-w is copy, ctrl-w is cut, ctrl-y is paste, ctrl-s is search forwards, ctrl-r is search backwards. You must delete the old pedestal values before replacing them with new ones. DO NOT delete pedestal values for BCMs (vqwk0’s).
      • reanalyze the run# with the new control.db: in ~/pan, rm control.db, ln –s controldb/control.db_parity16_run# control.db, pan –f /adaq2/data1/apar/parity16_run#....dat.
      • put the control.db back to what it was: rm control.db, ln –s controldb/control.db…thefileyourecordedpreviouslyandmadenoteof control.db
      • when runs are analyzed with new pedestals, you can move rootfiles by doing from ~/pan, cd ROOTfiles, mv parity15_.....yourfiles….root /lustre/expphy/work/halla/parity/caryn/rootfiles/rootfilesFall2016reanalyzed
      • then back them up with scp to your own computer.


  • Where the bootfiles are
    • in /adaqfs/home/apar/vxworks
    • CH: halladaq6.boot
    • RHRS: happex7.boot
    • Inj standalone in Injector configuration: qweak1_par1.boot
    • Inj to run with CH in prex1 configuration: qweak1_par2.boot
  • Changing the configuration to ‘prex1’ from standalone ‘injector’
    • have to reboot the injector with a different bootfile
    • must open minicom on the injector raspberry and load in qweak1_par2.boot with ‘bootChange’ command and hand typing the name of the bootfile in
  • To open database
    • Cedit in apar@adaq2
    • Open-> configuration “prex1” or “parity16”…
    • Double click on components to see settings
  • Store older rootfiles in
    • /volatile/work/halla/parity/caryn/rootfiles/rootfilesFall2016
    • these directories are editable
  • To take data
    • on apar@adaq2 ,do ‘startcoda’ , ‘kcoda’ is kill, connect, configuration is ‘parity16’ to take data on RHRS and CH, download run,prestart and startrun and go
  • To start greenmonster
    • on apar@adaq1 or apar@adaq2,in ~/caryn/devices/config,type config,be sure to close GM when you are done
    • check that config isn’t still running by doing ps aux | grep config and kill it if config is running with kill -9 #
  • To check HV on SAMs
    • on adev@adaq1,go to ~/slowc,do ‘./hvs RIGHT,look at rpi7:2001,tab S4, L1.0,L1.1,L1.2…L1.7,look at the first 8 HVs (SAM2 and SAM6 should always have set V at -75V)
  • To check helicity settings
    • login to adaq@adaq1,cd helicity,./getheldata,helpattern1 is quad
  • To start jtabs and NewTools
    • adaq@adaq2, ~/bin/NewTools or ~/bin/jtabs


  • To logon to the CH , TS, and RHRS
    • CH:ssh adaq:ttys4\@acons1 or telnet acons1 7004 or goch
    • TS: telnet hatsv3 2002 or gots
    • RHRS: telnet happex7
    • password is the usual for adaq@adaq2
    • Injector: on apar@adaq1, ssh –X rpi12 –l pi, password: rutaB%314, run_minicom, ‘i’ shows processes, (ctrl X reboots cpu), (ctrl-A and Z to exit & X), (if another copy of minicom is running, bad. So check ps aux | grep minicom, sudo kill -9 #)
    • command “i”, ctrl-h to delete, ctrl-Z or ctrl-] or ctrl-A to exit
  • To find the crl’s CODA uses
    • apar@adaq2 or adaq1
    • /adaqfs/home/apar/devices/crl
    • the CH+RHRS crl is happexQweak_ts.crl
    • the injector crl is in injector/injector.crl
    • to recompile crl, do “makelist filename.crl ppc”
  • To change timing settings
    • for RHRS and CH use greenmonster timing board tab to edit both Happex timing board and vqwk adcs
    • for Inj , edit /adaqfs/home/apar/devices/crl/injector/g0inj.flags to edit vqwk adcs
  • To change the number of words/space set aside per data point read out
    • edit crl “maximum 8192,20000” or some such. One is # of words , one is space.
  • To do regression on normal files
    • apar@adaq1 or apar@adaq2, ~/postpan, redana -r 2356 (after setting control.conf link to control.conf_2356 or whatever)
    • this creates a results file in ~/postpan/results/parity….2356.res
    • this also creates a rootfile ~/postpan/ROOTfiles/parity15_2601_regress.root
    • regressed variables are reg_... and tree is “reg”


  • To do regression on blocks
    • apar@adaq1 or apar@adaq2, ~/caryn/postpanblocks redana -r 2356 (after setting control.conf link to control.conf_2356 or whatever)
  • Where New rootfiles are:
    • /adaqfs/home/apar/pan/ ROOTfiles links to /adaq2/work1/apar
  • Where new data files are: /adaq2/data1/apar
  • To open rootfiles in /adaqfs/home/apar/pan:
    • root –l ROOTfiles/parity16_...[filename].root
  • To analyze data in /adaqfs/home/apar/pan: pan –f
    • /adaq2/data1/apar/parity…[filename].dat
  • To set control.db in /adaqfs/home/apar/pan :
    • There is a symbolic link “control.db”
    • rm control.db
    • ln –s controldb/control.db_....[control.db file select] control.db
    • then analyze
  • To do regression in
    • /adaqfs/home/apar/postpan: analyze with control.conf
    • There is a symbolic link “control.conf”
    • rm control.conf
    • ln –s control.conf[control.conf file select] control.db
    • then analyze
  • Rootfiles contain Rtree and P tree,
    • TBrowser b shows you the leaves
  • To analyze Injector Runs
    • Go into /adaqfs/home/apar/paninj/pan, do pan –f, makes injector.root files
    • Macros for analysis are in /adaqfs/home/apar/pan/macro and Macros for

analysis are also in /adaqfs/home/apar/paninj/macro

  • Regarding msqld
    • don’t run it on adaq1, it interferes with dvcs
    • check it’s running on apar@adaq2 by ps aux| grep msqld
    • if it’s not running, you can do msqld & on apar@adaq2
  • Useful commands in minicom
    • getRampDelayHAPTB(),getIntTimeHAPTB(),vqwkSetGateDelay(ii, 15),vqwkSetSamplesPerBlock(ii,500)
  • Where old data files: some combination of the following with your username
    • Some files are already in /lustre/expphy/volatile/halla/parity/
    • ssh -y palatchi@login.jlab.org (use your account)
    • ssh palatchi@ifarm65 OR ssh -Y ifarm -l palatchi (use your name)
    • jget /mss/halla/parity/raw/parity16_2333.dat /work/halla/parity/disk1/apar/parity16_2333.dat