The purpose of pass-0 calibration is to derive a set of constants from the data that can be used to convert raw tdc and adc values into hit energies and times in physical units: MeV or GeV and ns. The purpose of pass-0 is to obtain a set of parameters that allow the response of all of the counters in a detector to be compared directly or plotted on the same scale, where gain and delay differences between channels have been removed and a sensible common scale adopted. More complicated corrections may be required before amplitudes can be interpreted as particle energies or time differences can be converted to time-of-flight; these are called pass-1 (or higher) calibrations. An example a pass-1 calibration is the LGD energy calibration based upon optimization of the observed mass of the π°, as described in another document. Pass-1 calibrations differ from detector to detector and are not even necessary in some cases. Pass-0 calibration is simpler and is fairly uniform across all detectors and counters. The description of pass-0 requires that the following three questions be addressed.
(bsd 5).
The following two formulas cover all cases.
t = -p (T - T ) + t
|
(1) |
a = g (A - A ) |
(2) |
are called
pedestals. These were evaluated periodically during the data taking by
dedicated runs, and were stored in the Radphi map database together with
estimates for the threshold between signal and noise for each adc channel.
The online pedestals are taken as correct, and not adjusted during pass-0
calibration. The gain coefficients
g
are adjusted during pass-0
to match the response of all counters in a detector to a reference counter,
with the absolute scale set by comparison with Monte Carlo to give either
dE/dx or total energy in units of MeV (scintillators) or GeV (calorimeters).
The g
coefficients are
looked up on a per-run and per-counter basis, as are the pedestals.
By contrast, the tdc clock period
p
is assigned the unique
value of 0.5ns for all counters and runs. The minus sign is present in
Eq. (1) because the tdc's were operated in common-stop mode, so that
small tdc values correspond to later signals relative to the trigger.
The time offsets
T
reflect the variation
in signal propagation times between counters.
Some care must be taken
in the definition of these offsets, because the most convenient convention
for use in the analysis does not always correspond to the exact time of
day that the flash appeared in the counter. For example, in the tagger
there is a dispersion in time-of-flight from the radiator to the focal
plane, depending on the photon energy, but such time-of-flight differences
are of no interest in the tagging coincidence analysis. The following
general rule is used in deciding how to determine the time offsets.
Time offsets are adjusted for each counter so that the time difference between a hit in a Radphi detector and a hit in the tagger gives the time of flight from the point of interaction in the Radphi target to the point of detection if the two hits correspond to the same gamma.This definition gives an unambiguous specification for how the time offsets are established for all counters, except because it deals only with differences it leaves undefined one overall shift. This ambiguity is left open during pass-0 for sake of flexibility in the calibration procedure, but at the end it is lifted by the use of a global t
(see above formula).
The same t
coefficient
is used for channels in a detector, but depends upon run number.
It was introduced to allow a convenient way to remove jumps in the
overall time scale that occurred at several points during the run when
the tdc window and start delay were changed. Intrinsic jitter in the
trigger start time make absolute hit times of limited interest, but
they are often used in the analysis to place broad windows around the
signals of interest in an event. The
t
coefficients are
adjusted so that the tagger coincidence peaks center around zero for
all runs.
Table 1: Summary of pass-0 calibration parameters.
| parameter | run dependent? | counter dependent? | found in map | name in map | name in makehits.h |
|---|---|---|---|---|---|
p![]() |
no | no | - | TDC_1877_GAIN | |
T (tag i) |
yes | yes | detector_params.map | TAG:tdc_offset_38 | tag_tdc_offset[i] |
T (cpv i) |
yes | yes | detector_params.map | CPV:tdc_offset_30 | cpv_tdc_offset[i] |
T (upv i) |
yes | yes | detector_params.map | UPV:tdc_offset_8 | upv_tdc_offset[i] |
T (bsd i) |
yes | yes | detector_params.map | BSD:tdc_offset_48 | bsd_tdc_offset[i] |
T (bgv i) |
yes | yes | detector_params.map | BGV:tdc_offset_48 | bgv_tdc_offset[i] |
t (tag) |
yes | no | detector_params.map | TAG:t0_offset | tag_t0_offset |
t (cpv) |
yes | no | detector_params.map | CPV:t0_offset | cpv_t0_offset |
t (upv) |
yes | no | detector_params.map | UPV:t0_offset | upv_t0_offset |
t (bsd) |
yes | no | detector_params.map | BSD:t0_offset | bsd_t0_offset |
t (bgv) |
yes | no | detector_params.map | BGV:t0_offset | bgv_t0_offset |
g (cpv i) |
yes | yes | calibration.map | CPV:cc_30 | cpv_cc[i] |
g (upv i) |
yes | yes | calibration.map | UPV:cc_8 | upv_cc[i] |
g (bsd i) |
yes | yes | calibration.map | BSD:cc_48 | bsd_cc[i] |
g (bgv i) |
yes | yes | calibration.map | BGV:cc_48 | bgv_cc[i] |
g (lgd i) |
yes | yes | calibration.map | LGD:cc_784 LGD:tune_784 |
lgd_cc[i] lgd_cc_tune[i] |
A (cpv i) |
yes | yes | pedestals.map | TAG:ped_30 | cpv_ped[i] |
(upv i) |
yes | yes | pedestals.map | UPV:ped_8 | upv_ped[i] |
A (bsd i) |
yes | yes | pedestals.map | BSD:ped_48 | bsd_ped[i] |
A (bgv i) |
yes | yes | pedestals.map | BGV:ped_48 | bgv_ped[i] |
A (lgd i) |
yes | yes | pedestals.map | LGD:ped_768 | lgd_ped[i] |
(0.5ns), these are the constants
t
(tag)
to be loaded into the map. It is important that these not be
confused with the
t
(cpv)
coefficients to be determined later.
| run range | cpv28 tdc peak | t (tag) |
|---|---|---|
| 7415-7475 | 604.0 | 302.0 ns |
| 7476-7810 | 580.0 | 290.0 ns |
| 7811-8020 | 303.0 | 151.5 ns |
| 8021-8150 | 199.0 | 99.5 ns |
| 8151-8220 | 102.5 | 51.3 ns |
| 8221-8731 | 108.0 | 54.0 ns |
(tag i) to be
loaded into the map.
(tag i) and
t
(tag)
evaluated in the previous steps, let us define a tagger "hit time"
using the formula (1) above. Now let us define a coincidence window
[-20ns, 20ns] for all tagger hits. Form a tdc histogram for each
bsd counter. For each event, for each tagger hit j within the
coincidence window of any tagging counter, for each tdc recorded for
bsd counter i, fill the corresponding histogram with the value
T(bsd i) + t(tag j)/p
.
Fit each of these histograms to a polynomial+Gaussian lineshape as
shown in Fig. 3 and record the centroid
for each counter. These are the are the constants
T
(bsd i) to be
loaded into the map.
(bsd) take the
constant value of 3ns.
. Fit each of these histograms to a polynomial+Gaussian lineshape as
shown in Fig. 4 and record the centroid
for each counter. These are the are the constants
T
(bgv i) to be
loaded into the map.
(bgv) take the
constant value of 3ns.
. Fit each of these histograms to a polynomial+Gaussian lineshape as
shown in Fig. 5 and record the centroid
for each counter. These are the are the constants
T
(cpv i) to be
loaded into the map.
(cpv) take the
constant value of 2ns.