Adding BBC & VPD vertex info to the analysis tree

TAC difference of BBC small tiles, large tiles and VPD have been decoded from trigger files and added to the anaysis tree in Output.root. The way these vertex info were read out is a little bit different from what the original code was doing. Since the algorithm in laryer 0 and layer 1 DSM will take care of all the ADC threshold setting and make cuts to TAC and ADC, it seems unnecessary to calculate the ADC sum from QT data or select the max TAC by ourselves.

We can read laryer 2 vertex DSM VT201 to get the three TAC differences between east and west BBC and VPD:

          BbcLTacDiff = (Vtxdsm[2] & 0x1fff)
          BbcSTacDiff = (Vtxdsm[3] & 0x1fff)
          VpdTacDiff = (Vtxdsm[7] & 0x1fff)

This is derived from the code of online L0 trigger monitoring, taking into account of the necessary byte swap. Results from the same trigger file have been checked against the online L0 trigger plot to ensure consistency.

Here are some plots from the analysis on day 80's data:

1.BBC large tile v.s, Vpd TAC difference:                                                                                           2. BBC small tile vs large tile TAC difference:

                                      

3. BBC small tile vs Vpd TAC difference:

                     

Note that all the valid TAC differences have been shifted by 4096 channels, and the stripes on the far left and bottom represent the events that did not have a "good hit" as defined by the DSM algorithm, and therefore were set to zero.

4. TAC differences for pion candidates:

We see that VPD has much more "bad hits" because of its limited acceptance.

5. invariant mass of pion and eta candidates vs BBC small tile TAC difference:                              6. invariant mass of pion and eta candidates vs Vpd TAC difference

                                      

 

I am still working on the analysis to see if this additional vertex information could help to improve the mass resolution.