LED walk - r3dunlop/GRSISort GitHub Wiki

HOME > RUNNING GRSISORT > ANALYSIS > CALIBRATION > LED-WALK-CORRECTION

#LED Walk GRIFFIN data without a trustworthy CFD timestamp, must use leading-edge discrimination (LED) in order to determine the timestamp for an event. This is not such a large problem for fast detectors such as SCEPTAR, but can have significant consequences for the timing of slower detectors like HPGe. LED timing leads to "walk" where a lower energy gamma-ray will be given a systematically larger timestamp than it should. This has an impact on the building of gamma-gamma coincidences as well as gamma-ray add-back events.

Shown here is the timestamp difference between gamma rays where one of the gamma rays had an energy of at least 1300 keV. Clearly, one would have to take a very large gate to include all of the coincident gamma rays.

/images/Walk.png

#How To Correct In order to generate the above figure, the script WalkPlot was used which is located at util/WalkPlot.cxx. When constructing the above plot, all hits containing a pileup hit were rejected in order to simplify the figure. In the output file generated by WalkPlot, drawing the TH2F called eng_teng_noPU gives the timestamp difference between gamma rays where one of the gamma rays had an energy of at least 1300 keV with energy on the x axis. /images/WalkPreFit.png To fit the spectrum, a functional form of delta(T) = A + B*Energy^C is used. This function can be created using

TF1 *f = new TF1("fitfunc","[0] + [1]*x^[2]",low_energy,high_energy);

where low and high energy are the ranges of the fit. Then fit to the histogram using

eng_teng_noPU->Fit(f,"R");

This gives a plot that looks like the following

/images/WalkFit.png

The fitted parameters shown in this figure where: A = -6.121160, B = 142.382000 and C = -0.431751. To apply these parameters to every GRIFFIN channel, open your calibration file and perform the following:

TTimeCal tc;
tc.AddParameter(-6.12116);
tc.AddParameter(142.382);
tc.AddParameter(-0.431751);
tc.WriteToAllChannels("GR");

Followed by whatever method you want to use to write the calibration such as:

TChannel::WriteCalFile("walkcorrected.cal");

The parameters are now stored in the calibration file as WALK and when GetTime() is called on a TGriffinHit, these parameters will be used to correct walk.

Re-running WalkPlot now produces a 2D spectrum called time_eng_walk_noPU which can be drawn to see the results of applying the walk correction. It is also recommended that the time_eng... spectra be used to set gates between various detection systems include GRIFFIN-SCEPTAR. /images/WalkCorrect.png