Compton analysis (for experts)
How to Plot Asymmetry Histories Using the Old (Saclay) DAQ
Runs should already have been analyzed. In this method, we are using the semi-integrated asymmetries that the logbook publishes as a plot of two Gaussians (laser right and laser left) with a legend showing the mean and statistical error. Sometimes the fit fails and then this method will fail.
At present the mean and statistical error are obtained by reading the .eps file printed by the analyzer. The analyzer, for unknown reasons, does not write these histograms to file.
- Log onto compton@compton.
- The code you need is in /home/compton/diana. You may wish to copy it into your directory:
- ParsingAsymNum.pl -- This is a perl script written by Jin Huang. It extracts the asymmetries (from .eps files) for a range of runs; you need to modify the run numbers in the script itself. It writes its results to screen and to the file ComptonAsym.log.
- PlotLoggedAsymmetries.C -- This ROOT macro reads the asymmetries from ComptonAsym.log and produces a plot showing the measured left and right asymmetries as functions of run number. (Only their absolute values are displayed, not their signs.) Runs where the fit failed are marked by statistical errors of exactly 1.414; these are discarded by the macro.
- The Perl script may be run as follows
- The ROOT macro can be run as any ROOT macro (it does not take any arguments):
> root PlotLoggedAsymmetries.C
How to Plot Asymmetry Histories Using the New (CMU/FADC) DAQ
Runs should already have been analyzed. This plot will produce graphs showing the magnitudes of the left and right asymmetries as functions of run number. These asymmetries are derived from the CMU DAQ's integrating method.
- Log onto compton@compton.
- The code you need is in /home/compton/franklin/anal/rundiana:
- WeightedMean.C -- Computes the weighted mean of an array of data points (using an array of errors as weights).
- ProjectThreeLaserStates.C -- Fills a histogram with the value of a branch from the pairwise analysis tree, for each laser state (on and right-circularly polarized, on and left-circularly polarized, and off). This is where cuts (beam current, etc) are applied.
- GetExpandedAsymmetry.C -- Uses the histograms from ProjectThreeLaserStates.C to perform background subtraction and compute the Compton asymmetries for laser right, left and off. Returns these asymmetries and their errors (as well as the weighted average of the right and left asymmetries) as arguments.
- AsymmetryHistory.C -- Takes a range of runs (a starting run number, and an ending run number) as arguments. For each run in that range, calls GetExpandedAsymmetry.C to compute asymmetries; produces graphs of left and right asymmetries. Expects to find analyzed run root files in the ROOTfiles directory.
- If you're set up so that the runs you need are analyzed, and their root files are in a directory pointed to by your ROOTfiles directory, then run AsymmetryHistory.C in root. For example, if you want to look at runs from 13 to 22:
> root root .L AsymmetryHistory.C root AsymmetryHistory(13, 22)
How to Analyze Data from the New (CMU/FADC) DAQ
- Log onto compton@compton.
- The analysis program is called dianaanal. The script for running it is called rundiana and is in
/home/compton/franklin/anal/rundiana/. Feel free to copy it to your own directory if you wish.
- Run the script. It takes one argument: the run number. So, to analyze (say) run 18001, you would type
- The resulting root file is saved to ROOTfiles/fadc_18001.root (where 18001 is replaced with the actual run number).
CMU Analysis Basics
Asymmetry calculation is based on six accumulators which integrate over an MPS. Three of these are, in principle, capable of measuring Compton asymmetries:
- Acc0 (All): No thresholds. 6.6 million samples per MPS.
- Acc2 (Window): Accumulates signals between two thresholds (programmable at the FADC)
- Acc4 (Stretched Window): As Acc2, but also accumulates signals a certain number of samples before the signal crosses into the window, and a number of samples after the sample crosses back out of the window. This is to avoid a "tip of the iceberg" effect. This accumulator excludes any sample that goes into Acc5 (Stretched Far); see below.
There are also three accumulators that will not measure Compton asymmetries, but can help understand systematic effects:
- Acc1 (Near): Integrates signals smaller in magnitude than the near-pedestal threshold.
- Acc3 (Far): Integrates signals larger in magnitude than the far-from-pedestal threshold.
- Acc5 (Stretched Far): As Acc3, but also accumulates a programmable number of samples before the signal crosses the threshold, and a separately programmable number of samples after the signal crosses back over. This is to avoid a "tip of the iceberg" effect.
CMU Analysis Macros: Troubleshooting Help
A few helpful macros are available for troubleshooting. Feel free to add your own. These are all in /home/compton/franklin/anal/rundiana/.
- MakeRateChart.C -- Plot a color-coded variable as a function of mps for laser on, laser off, and laser state unknown. (currently coded for trigger rate)
- PlotThreeLaserStates.C -- Takes one argument: the name of a branch variable. Histograms this branch variable for each laser state: on/right, on/left, and off. All plotted on one set of axes for comparison. May need to change histogram range, cut variable, etc.
CMU Analysis Help
If you have any questions about the CMU analysis, please contact Diana Parno at CMU: dparno AT cmu.edu