Project

General

Profile

Instructions on how to use/read the online ROOT file of TDC data

Get a kerberos ticket

kinit -f username@FNAL.GOV

Setup the ROOT environment

This needs to be a newish version of ROOT i.e. > 5.30.

export ROOTSYS=/directory/with/root
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ROOTSYS/lib
export PATH=$PATH:$ROOTSYS/bin

Download the script setup-online-root-read.sh from here

chmod +x setup-online-root-read.sh
. ./setup-online-root-read.sh

This takes a couple of minutes since it copies the whole git tracker DAQ/readout repository (70 Mb) from FNAL.

In your current directory this copies/creates a subset of the files from the git repository. The key files are:

src/Gm2TrackerDaqAnalysisExample.cc
src/Makefile

To build the code:

cd src
make

To run the code

../bin/Gm2TrackerDaqAnalysisExample.exe name-of-Root-file

An example ROOT file (called Gm2TrackerDummyData.root) can be found here and this
was produced with ROOT 5.34/10 with g++ 4.4.7 (ie CERN SL6, FERMI SLF6).

Details

As can be seen from Gm2TrackerDummyData.root (and src/Gm2TrackerDaqAnalysisExample.cc) the ROOT data is associated with a given spill, readout-number and TDC. Since the testbeam spills will have a long duration (5 sec, every 60 secs) then we will have several "readouts" of a given TDC buffer per spill (and so necessarily some deadtime). We expect to read 5ms worth of spill data at a time from both TDCs with a deadtime (during readout) of a similar time and so we expect approx 500 TDC buffers worth of data per spill. Each buffer readout has as an associated readout number and so the data for the same readout number and spill number will be the data we expect to be in-coincidence between the two TDCs. There will be approx 500 readout numbers for a given spill.

The pertinent data for tracking is in the branch called "data" in the tree "READOUT_DATA". "hit_tdc_num" is the number identifying which TDC the data is for, "hit_channel" is the straw channel number and "hit_time_ns" the time of the hit on that straw.