Reco analyze for global tracking (package gtr_analyze)

24sep01 0815
Code version 0.21

An introduction to D0 global tracking may be found at http://www-d0.fnal.gov/global_tracking.


Links to code

The description below includes links to the code contained in this package. This version of the code may not be the most recent.

Description

Provides global tracking interface for the reco analyze ntuple.

The physical components include:

This package depends on many external packages:

The classes defined in the above components are described below. Each class is defined in a component of the same name unless otherwise indicated. The descriptions are brief. See the header files for details.


GtrAnalyze

Adds global tracking branches to the reco analyze ntuple.

Block names

The blocks are constructed from the content of top level rcp in the following way. User specify gtr_cid, trk_srf_param and trk_srf and block name would be constructed from them as GtrcidatSrf (hereafter you need to substitute red names with appropriate values). In the case of MC you'll have GtrMCatSrf. A few examples:
int gtr_cid          = (   0    401    101  301  )
double trk_srf_param = (  0.0   0.0   25.0  20.0 )
string trk_srf       = ( "DCA" "DCA" "Cyl" "Cyl" )

will give us four blocks: GtrMCatDCA, Gtr401atDCA, Gtr101atCyl and Gtr301atCyl.
You can also specify matching blocks using the following parameters: match_srf_param, match_srf, match_types, match1 and match2 (plesae pay attention to order which is important, i.e. match_srf cannot be specifyied without its parameter match_srf_param). Example:
double match_srf_param = (  0.0     20.0  ) 
string match_srf       = ( "DCA"   "Cyl"  )
string match_types     = ( "kine"  "kine" )
int match1             = (  401      101  )
int match2             = (   0       301  )

which will give you the following blocks: GtrMC_401atDCA and Gtr101_301atCyl.

Block content

Blocks with reconstructed tracks: GtrcidatSrf:
cid		chunk id 
parsrf		parameter of the surface (for DCA it is equal to zero).
ntrkcid		is the index of tracks (cid is chunk id).
nhit		number of hits
nmeas		number of measurements.
par0,1,2,3,4	five track parameters at given sruface (for Cylinder
		you have par0=phi, par1=z, par2=alpha=phi_dir-phi, 
		par3=tan(lambda)=dz/dsT, par4=q/pT
		(1/GeV/c); in the case of DCA: 
		(par0=r, par1=z, par2=phi_dir, par3=tan(lamda), par4=q/pT).
err00, etc.	are matrix elements of error matrix 
chsq		chi square of the track.


Block with MC track information: GtrMCatSrf:
parsrf		parameter of the surface (for DCA it is equal to zero, in the case
		of cylinder it is its radius).
ntrkmc		index of MC tracks
mstates		MC states
mcparent	parent of MC track
pdgid		particle data group id of the track
mcfthits	number of MC cft hits
msmthits	number of MC smt hits
par0,1,2,3,4	track parameters.


Blocks with matching information: Gtrcid1_cid2atSrf:
cid1 and cid2	are chunk ids
parsrf		parameter of the surface (for DCA it is equal to zero, in the case
		of cylinder it is its radius).
ncid1_cid2	index for this block.
match1		list of indeces of cid1 in its tracking block.
match2		list of indeces of cid2 in its tracking block.

In order to get tracking information from matching block you need to loop over match1 and match2 and extract those values from tracking blocks.


Questions or comments to vkuznet@fnal.gov.