WAC Notes January 7 2021

From PREX Wiki
Revision as of 15:41, 11 January 2021 by Cameronc (Talk | contribs) (General)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
RCDB HALOG HAPLOG DocDB Online Prompt BlueJeans Link Runlist spreadsheet, respin 1 spreadsheet

PREX Main << Weekly Analysis Coordinator << WAC Notes CREX << WAC Post-Run_Meeting Notes

WAC Notes December 10 2020 << >> WAC Notes January 12 2021


Date and time: January 7, 2021, 11:00am
Bluejeans ID: 454783784
Meeting link: https://bluejeans.com/454783784
Runlist spreadsheet

January 7th notes, updates from the respin 1

Analyses that need to be done with respin 1 data:

  • Determine changes to the data as a result of changes in map files and cuts between prompt and respin 1
  • Determine efficacy and quality of BCM, target and energy BPM cuts across all runs (and develop changes to cuts if necessary)
  • Cyclewise, runwise, and run-range-wise BMOD data quality determinations need to be solidified (AT data from respin 1 can be a ifarm script testing ground)
  • BMOD slopes calculation and map files, and Lagrange+eigenvector BPM analysis set up
  • Second pass pedestal studies, including looking at RF injected runs and beam off pedestals across all of CREX for all monitors and detectors
    • Look at charge-normalized and regression corrected detectors vs. another BCM (not bcm_target) to check for non-zero pedestals or correlations.
    • Should be consistent at < 1 or 2 % level.
    • Beam off pedestals should also not be deviated from.
  • Reclassify and update all NeedCut, Suspicious, and non-production (but "good") runs based on respin 1 data quality and known needed changes
  • Develop tools with respin 1 to evaluate beam correction, Aq, and pedestal systematics across the run
  • Generate more useful and specific slug plots, etc.
  • Pitt and Wien level plots, systematics, etc.
  • Carefully check on various time scale pull plots (multiplet wise, miniruns, slugs, pitts, wiens, etc.)
  • Null asymmetry check
  • Sub-block analysis consistency check
  • SAMs analysis (especially during AT running)

To Do:

  • Comparison of number of events/patterns per slug between Respin 1 and Prompt
    • Also check on the size of regressed error bar
    • Will be done by Robert
  • Devi can look at BPM and BCM fluctuations away from comfort ranges
  • Each WAC should scan their weeks' data to see if anything looks bad
    • Runlist verification etc. will be done by WACs
  • BMOD analysis is being done by Cameron + bmod subgroup
  • Cameron and Weibin will look over pedestal checking, etc.
  • Weibin and Sakib can help will Null asymmetry analysis
  • Looking at cuts (especially burp cuts) should happen after Devi looks at BPM ranges, etc.

Suggested Changes after respin1

  • Cuts size, extent, holdoffs?
  • Regression BPM selection?
  • Manual cuts for target and 12X BPMs need another look?
  • Pedestals need a more detailed look
  • Special runs with known tune change that get special cuts to segment miniruns properly


Tracking events and calibrations:

Respin 1 outputs


  • Any run which had special cuts applied to segment BPM 12X regions will need to be checked on after respin 1 to retune those cuts
  • BCM analog difference value doesn't compute correctly in the aggregator ... is .hw_sum an invalid leaf? Is there an assumed /ppm in the grand plots script for yield_.._mean?
  • All BCM Aqs have a much larger difference between wien states and away from 0.0 for respin1 vs. prompt. Is the pedestal wildly off during prompt or during respin1? More pedestal studies should be done to decide what is going on.
  • The main detector's regressed RMS has a drop from prompt->respin, especially around the slug 140 region.
  • The Chi2 values are all pretty small, and got smaller with respin1 vs prompt.
  • Detector asymmetry "answer" did not change value or error bar very much between prompt and respin1.

Runs for checking later

December 10th notes, updates from Dec 3

  • Pedestal update (a temporary placeholder) summarized in HAPLOG 4417
  • Prompt data set summarized in HAPLOG 4418
  • Cuts and other Respin updates summarized in HAPLOG 4419
    • Added bcm_an_diff device to all CREX runs, resolving issue that was especially bad in runs 8350-8370: https://logbooks.jlab.org/entry/3845576
      • Added bcm_an_diff cut to all CREX runs already having reasonable current cuts
combinedbcm, bcm_an_diff,       -10,     +10,    g,      0,   0.15
  • Weibin added a bcm_an_diff plot to ifarm install of prompt plots
    • He'll update the cut to only do can events when (bcm_an_diff.Device_ErrorCode&0x40001c00)!=0 && (ErrorFlag&0x8000000)==0
    • If possible edit the asyms to diffs in their plots
  • Cameron updated the Error Counter macro on the ifarm install
    • Will change the general cut information to show Beam Trip and All Else separately -> (ErrorFlag&0x8000000)==0 cuts out beam trip data
    • And change percentages to N events
  • The target BPMs are not easily diagnosable from minirun plots (thanks Weibin), but will be analyzed similarly to the BPM12X data after respin1
    • Note that at run 6500 we have a major change in our optics and beam delivery, which produces similar beam instability as we saw at the beginning of the experiment in slug 100 or so
    • Some documentation of pedestal investigations during that time here: https://logbooks.jlab.org/entry/3787428
  • Some commits of changes on adaq computer may conflict with committed or uncommitted changes on the ifarm (due to push pull privileges and edits testing)
  • Weibin created a run list of runs included in prompt runlist text files but disagreeing in the RCDB: https://docs.google.com/spreadsheets/d/1l5qA0u9KhLIFA-MbcEpI3ezUD9saq6g1kzB_eTJD_po/edit#gid=214727289
  • Robert made a run list for respin 1 with generous filters: respin 1 spreadsheet

How to use Aggregator


Now updated to include "rcdb_[run_condition]" branches (converted to doubles, string entries have a lookup table given in the camDataFrame.hh source code).

  • slug
    • Ex. Int 223
  • run_type
    • Ex. Str 'Production'
    • Conversion to NTuple doubles/integers (for cutting within ROOT):
      • Production = 1.0
      • Pedestal = 2.0
      • Calibration = 3.0
      • ParityScan = 4.0
      • Test = 5.0
      • Else (all other run types) = -1.0
  • run_flag
    • Ex. Str 'Good'
    • Conversion to NTuple doubles/integers (for cutting within ROOT):
      • Good = 1.0
      • NeedCut or NeedCuts = 2.0
      • Suspicious = 3.0
      • Bad = 4.0
      • Else (all other flags, including NULL) = -1.0
  • ihwp
    • Ex. Str 'IN' or 'OUT'
    • Conversion to NTuple doubles/integers (for cutting within ROOT):
      • IN = 1.0
      • OUT = 2.0
      • Else (all other flags, including NULL) = -1.0
  • flip_state
    • Ex. Str 'FLIP-RIGHT' or 'FLIP-LEFT'
    • Conversion to NTuple doubles/integers (for cutting within ROOT):
      • FLIP-RIGHT = 1.0
      • FLIP-LEFT = 2.0
      • Vertical(UP) = 3.0 (This is the AT data)
      • Else (all other flags, including NULL) = -1.0
  • horizontal_wien
    • Ex. Double -29.6402
  • vertical_wien
    • Ex. Double 88.0008
  • rhwp
    • Ex. Double 1500.0
  • arm_flag
    • Ex. Int 0, or 1, or 2
  • beam_current
    • Ex. Double 109.044
  • total_charge
    • Ex. Double 584807.0
  • target_type
    • Ex. Str '48Ca', or '40Ca'
    • Conversion to NTuple doubles/integers (for cutting within ROOT):
      • 48Ca = 1.0
      • 40Ca = 2.0
      • ...Carbon 1... = 3.0
      • ...Pb... of any type = 4.0
      • Home = 5.0
      • Else (all other flags, including NULL) = -1.0
  • target_45encoder
    • Ex. Double 2.0
  • target_90encoder
    • Ex. Double 13163100.0
  • dpp
    • Ex. Double 0.000142342
  • dpp_stdev
    • Ex. Double 1.4e-6
  • energy_avg
    • Ex. Double 2.156234
  • energy_sig
    • Ex. Double 1.4e-6

Then there is an "rcdb_sign" variable

  • rcdb_sign
    • Ex. Int +1 or -1
    • This is calculated internally as (wien*ihwp), where
      • Wien Left = -1
      • Wien Right = +1
      • Wien Vertical(UP) = +1
      • IHWP IN = +1
      • IHWP OUT = -1

  • n_runs == Slug number branch. Was originally intended to denote how many runs had been TChained to derive a given file's outputs, but we just do miniruns and such these days instead.
  • run_number == Run number branch
  • minirun_n == Minirun ID branch (starts at 0 for first minirun of each run)
  • split_n == Nothing for now. Was originally intended to denote split runs in JAPAN analysis, but other scripts never fully supported it and it rarely comes up
  • All of the data in these aggregator files is exactly ErrorFlag==0 passing data, meaning it cuts out BMOD ON data and also fails to properly consider AT and SAM error flags (in prompt outputs, see respins for proper global error flag on those).
  • The individual data fields for a given device are as follows:
    • _mean == mean value for a given minirun
    • _mean_error == the error on the mean
    • _rms == the RMS from the histogram for a given minirun
    • _rms_error == the error on RMS calculation (probably not really useful)
    • _nentries == the number of Multiplet entries used in the minirun for the histogram to obtain the above numbers
    • Some of the EPICS and slopes and such have _slope and maybe _slope_error or _mean and are what you would expect

Data from Respin 1 is located in these places:

  • ErrorFlag
    • Minirun aggregator root files: /lustre19/expphy/volatile/halla/parity/crex-respin1/aggRootfiles/ErrorFlag/
    • Slug hadded and slug-plots pol1 averaged output root files: same, subfolder /slugRootfiles/
    • Full CREX hadded minirun-wise grand rootfile: same, subfolder /slugRootfiles/CREX-Blessed-miniruns.root
  • IncludeBMOD
    • Minirun aggregator root files: /lustre19/expphy/volatile/halla/parity/crex-respin1/aggRootfiles/IncludeBMOD/
    • Slug hadded and slug-plots pol1 averaged output root files: same, subfolder /slugRootfiles/
    • Full CREX hadded minirun-wise grand rootfile: same, subfolder /slugRootfiles/CREX-Blessed-miniruns.root
  • OnlyBMOD
    • Minirun aggregator root files: /lustre19/expphy/volatile/halla/parity/crex-respin1/aggRootfiles/OnlyBMOD/
    • Slug hadded and slug-plots pol1 averaged output root files: same, subfolder /slugRootfiles/
    • Full CREX hadded minirun-wise grand rootfile: same, subfolder /slugRootfiles/CREX-Blessed-miniruns.root

Example plots that are now possible with RCDB info:

  • Sign corrected, main detector, with error weighting, utilizing arm flag to show the "good" data for a given run"
root /lustre19/expphy/volatile/halla/parity/crex-respin1/aggRootfiles/ErrorFlag/slugRootfiles/CREX-Blessed-miniruns.root
root [0] agg->Draw("rcdb_sign*((rcdb_arm_flag==0)*cor_asym_us_avg_mean + (rcdb_arm_flag==1)*cor_asym_usr_mean + (rcdb_arm_flag==2)*cor_asym_usl_mean)/ppb","(1/(sqrt((rcdb_arm_flag==0)*cor_asym_us_avg_mean_error + (rcdb_arm_flag==1)*cor_asym_usr_mean_error + (rcdb_arm_flag==2)*cor_asym_usl_mean_error)/ppb))","")


Cameron, Paul, Weibin, Adam Zec, Robert Radloff, Ryan, Sakib, Victoria, Juliette, Devi