PrimEx timing and the TRIGPHOTON bank

Oct. 14, 2005
Section 1

On Oct. 13th, 2005 the relative timing calibration for the E and T counters was replaced with a single set of constants covering the entire PrimEx run period. This was done in conjunction with the implementation of some additional calibration constants and 2 new banks which better represent the parts of the calibration that are run dependant.

The problem with the old scheme was that the relative timing between E and T counters was being used to shift the overall timing of the tagger w.r.t the trigger. This was not ideal since the E,T timing was not changing as shown in Figure 0:, a combination of over 50 runs(first file only) covering runs from 4346 - 5449.

Figure 1:

Section 2

One thing missing from the PrimEx reconstruction code has been a bank of calibrated trigger times. Specifically, we have had the following:

Raw BankCalibrated Bank


TAGTTAGTHIT
TAGETAGEHIT
VETOTVETOHIT
PSTPSHIT
TACTTACHIT
TRIGT???

With the notable calibrated counterpart to the TRIGT bank missing. Hence, the introduction of the TRIGTHIT bank:


//------------- TRIGTHIT Bank ---------------------
typedef struct {
  int id; /* Trigger bit */
  float t; /* Time relative to photon in TAGM bank (ns) */
  int tdc; /* Raw TDC value */
} trigthit_t;

Section 3

A new attribute was added to the TAGGER system in the caldb to hold the relative timing offset between the TAGM bank time (T-counter calibrated time) and each of the trigger bits called tagm2trig (length=12). This is used in constructing the TRIGTHIT bank so that one can cut on the TAGM, TRIGTHIT time difference directly:


if(fabs(tagm[i].t - trigthit[j].t)<10){...}

Section 4

There has not been a consistent way (that I know of) of comparing the TAGM time to other detector systems. Some elements exist in the caldb, but don't appear to be used much:

System:PS Attribute:ps2tag
System:TAC Attribute:tact_offset

In an attempt to make a consistent way of comparing TAGM times to other detector systems, the following attributes were added to the CALDB:

System:TAGGER Attribute:tagm2tac Size:1
System:TAGGER Attribute:tagm2ps Size:1
System:TAGGER Attribute:tagm2veto Size:1
System:TAGGER Attribute:tagm2trig Size:12

The tagm2trig values are already included in the TRIGTHIT bank. The others are read in inside of tagger_brun and can be used like this:


#include <tagger.h>
if(fabs(tagm[i].t - vetohit[j].t - TAGM2VETO)<10){...}
if(fabs(tagm[i].t - pshit[j].t - TAGM2PS)<10){...}
if(fabs(tagm[i].t - tachit[j].t - TAGM2TAC)<10){...}

Section 5

The timing window for the TDCs was more 16 μs wide. The ADC gate though covers only a very small portion of this time. Hence, not every TAGM, TRIGTHIT coincidence can correspond to the values read from the ADCs.What is needed is a subset of photons that were in the right time range that they could have contributed to the values read by the ADCs. Hence, the introduction of the TRIGPHOTON bank:


//------------- TRIGPHOTON Bank ---------------------
typedef struct {
  float energy; /* Energy of the photon in GeV */
  float t; /* T-counter time (ns) */
  int id; /* Trigger bit 1-12 */
  float tdiff; /* T-counter - trigger time difference (ns) */
} trigphoton_t;

The TRIGPHOTON bank first looks for TRIGTHIT banks whose raw TDC was in the proper range for it to be in time with the trigger. This is currently hardwired to be between 150-300 TDC counts.

Second, it looks for coincidences between the in-range TRIGTHITs and the TAGM bank. Because of the nature of the MOR, this coincidence will NOT be single peaked for trigger bits whose timing was determined by the MOR (bits 1,3, and 12). Hence, a range must be cut here as well. Those coincidences whose time difference falls between -15ns and +25ns are made into TRIGPHOTON banks.

Photons that could be in coindicence with the energy values read from HYCAL can therefore be found by looking for TRIGPHOTON banks with id==9.

Figure 2:

Figure 3:

Figure 4:


David Lawrence
davidl@jlab.org
Last Updated October 14 2005 05:25:16 PM