def init_book_hist():
    """
    Creates empty plots.
    Returns
    -------
    h : dict
        Dictionary of plots.
    """

    h = {}  #dictionary of histograms

    ut.bookHist(h, 'TracksPassed', 'Tracks passing the pattern recognition', 8,
                -0.5, 7.5)
    h['TracksPassed'].GetXaxis().SetBinLabel(1, "Reconstructible tracks")
    h['TracksPassed'].GetXaxis().SetBinLabel(2, "Y view station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(3, "Stereo station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(4, "station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(5, "Y view station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(6, "Stereo station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(7, "station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(8, "Combined stations 1&2/3&4")

    ut.bookHist(h, 'TracksPassedU',
                'Tracks passing the pattern recognition. No clones.', 8, -0.5,
                7.5)
    h['TracksPassedU'].GetXaxis().SetBinLabel(1, "Reconstructible tracks")
    h['TracksPassedU'].GetXaxis().SetBinLabel(2, "Y view station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(3, "Stereo station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(4, "station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(5, "Y view station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(6, "Stereo station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(7, "station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(8, "Combined stations 1&2/3&4")

    ut.bookProf(h, 'TracksPassed_p',
                'Tracks passing the pattern recognition from momentum', 30, 0,
                150)
    h['TracksPassed_p'].GetXaxis().SetTitle('Momentum')
    h['TracksPassed_p'].GetYaxis().SetTitle('N')

    ut.bookHist(h, 'ptrue-p/ptrue', '(p - p-true)/p', 200, -1., 1.)

    ut.bookHist(h, 'n_hits_reco', 'Number of recognized hits per track, total',
                64, 0., 64.01)
    ut.bookHist(h, 'n_hits_reco_12',
                'Number of recognized hits per track, station 1&2', 32, 0.,
                32.01)
    ut.bookHist(h, 'n_hits_reco_y12',
                'Number of recognized hits per track, Y view station 1&2', 32,
                0., 32.01)
    ut.bookHist(
        h, 'n_hits_reco_stereo12',
        'Number of recognized hits per track, Stereo view station 1&2', 32, 0.,
        32.01)
    ut.bookHist(h, 'n_hits_reco_34',
                'Number of recognized hits per track, station 3&4', 32, 0.,
                32.01)
    ut.bookHist(h, 'n_hits_reco_y34',
                'Number of recognized hits per track, Y view station 3&4', 32,
                0., 32.01)
    ut.bookHist(
        h, 'n_hits_reco_stereo34',
        'Number of recognized hits per track, Stereo view station 3&4', 32, 0.,
        32.01)

    # Momentum dependences
    ut.bookProf(h, 'n_hits_total',
                'Number of recognized hits per track, total', 30, 0, 150)
    h['n_hits_total'].GetXaxis().SetTitle('Momentum')
    h['n_hits_total'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_y12',
                'Number of recognized hits per track, Y view station 1&2', 30,
                0, 150)
    h['n_hits_y12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_y12'].GetYaxis().SetTitle('N')

    ut.bookProf(
        h, 'n_hits_stereo12',
        'Number of recognized hits per track, Stereo view station 1&2', 30, 0,
        150)
    h['n_hits_stereo12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_stereo12'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_12',
                'Number of recognized hits per track, station 1&2', 30, 0, 150)
    h['n_hits_12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_12'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_y34',
                'Number of recognized hits per track, Y view station 3&4', 30,
                0, 150)
    h['n_hits_y34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_y34'].GetYaxis().SetTitle('N')

    ut.bookProf(
        h, 'n_hits_stereo34',
        'Number of recognized hits per track, Stereo view station 3&4', 30, 0,
        150)
    h['n_hits_stereo34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_stereo34'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_34',
                'Number of recognized hits per track, station 3&4', 30, 0, 150)
    h['n_hits_34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_34'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'perr', '(p - p-true)/p', 30, 0, 150)
    h['perr'].GetXaxis().SetTitle('Momentum')
    h['perr'].GetYaxis().SetTitle('(p - p-true)/p')

    ut.bookProf(h, 'perr_direction',
                '(p - p-true)/p from track direction in YZ plane', 20, 0,
                10.01)
    h['perr_direction'].GetXaxis().SetTitle('Degree')
    h['perr_direction'].GetYaxis().SetTitle('(p - p-true)/p')

    ut.bookProf(h, 'frac_total', 'Fraction of hits the same as MC hits, total',
                30, 0, 150)
    h['frac_total'].GetXaxis().SetTitle('Momentum')
    h['frac_total'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_y12',
                'Fraction of hits the same as MC hits, Y view station 1&2', 30,
                0, 150)
    h['frac_y12'].GetXaxis().SetTitle('Momentum')
    h['frac_y12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(
        h, 'frac_stereo12',
        'Fraction of hits the same as MC hits, Stereo view station 1&2', 30, 0,
        150)
    h['frac_stereo12'].GetXaxis().SetTitle('Momentum')
    h['frac_stereo12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_12',
                'Fraction of hits the same as MC hits, station 1&2', 30, 0,
                150)
    h['frac_12'].GetXaxis().SetTitle('Momentum')
    h['frac_12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_y34',
                'Fraction of hits the same as MC hits, Y view station 3&4', 30,
                0, 150)
    h['frac_y34'].GetXaxis().SetTitle('Momentum')
    h['frac_y34'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(
        h, 'frac_stereo34',
        'Fraction of hits the same as MC hits, Stereo view station 3&4', 30, 0,
        150)
    h['frac_stereo34'].GetXaxis().SetTitle('Momentum')
    h['frac_stereo34'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_34',
                'Fraction of hits the same as MC hits, station 3&4', 30, 0,
                150)
    h['frac_34'].GetXaxis().SetTitle('Momentum')
    h['frac_34'].GetYaxis().SetTitle('Fraction')

    # Fitted values
    ut.bookHist(h, 'chi2fittedtracks', 'Chi^2 per NDOF for fitted tracks', 210,
                -0.05, 20.05)
    ut.bookHist(h, 'pvalfittedtracks', 'pval for fitted tracks', 110, -0.05,
                1.05)
    ut.bookHist(h, 'momentumfittedtracks', 'momentum for fitted tracks', 251,
                -0.05, 250.05)
    ut.bookHist(h, 'xdirectionfittedtracks', 'x-direction for fitted tracks',
                91, -0.5, 90.5)
    ut.bookHist(h, 'ydirectionfittedtracks', 'y-direction for fitted tracks',
                91, -0.5, 90.5)
    ut.bookHist(h, 'zdirectionfittedtracks', 'z-direction for fitted tracks',
                91, -0.5, 90.5)
    ut.bookHist(h, 'massfittedtracks', 'mass fitted tracks', 210, -0.005,
                0.205)
    ut.bookHist(h, 'pvspfitted', 'p-patrec vs p-fitted', 401, -200.5, 200.5,
                401, -200.5, 200.5)

    return h
Beispiel #2
0
def init_book_hist():
    """
    Creates empty plots.
    Returns
    -------
    h : dict
        Dictionary of plots.
    """

    h={} #dictionary of histograms

    ut.bookHist(h,'TracksPassed','Tracks passing the pattern recognition', 8, -0.5, 7.5)
    h['TracksPassed'].GetXaxis().SetBinLabel(1,"Reconstructible tracks")
    h['TracksPassed'].GetXaxis().SetBinLabel(2,"Y view station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(3,"Stereo station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(4,"station 1&2")
    h['TracksPassed'].GetXaxis().SetBinLabel(5,"Y view station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(6,"Stereo station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(7,"station 3&4")
    h['TracksPassed'].GetXaxis().SetBinLabel(8,"Combined stations 1&2/3&4")
    
    ut.bookHist(h,'TracksPassedU','Tracks passing the pattern recognition. No clones.', 8, -0.5, 7.5)
    h['TracksPassedU'].GetXaxis().SetBinLabel(1,"Reconstructible tracks")
    h['TracksPassedU'].GetXaxis().SetBinLabel(2,"Y view station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(3,"Stereo station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(4,"station 1&2")
    h['TracksPassedU'].GetXaxis().SetBinLabel(5,"Y view station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(6,"Stereo station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(7,"station 3&4")
    h['TracksPassedU'].GetXaxis().SetBinLabel(8,"Combined stations 1&2/3&4")

    ut.bookProf(h, 'TracksPassed_p', 'Tracks passing the pattern recognition from momentum', 30, 0, 150)
    h['TracksPassed_p'].GetXaxis().SetTitle('Momentum')
    h['TracksPassed_p'].GetYaxis().SetTitle('N')

    ut.bookHist(h,'ptrue-p/ptrue','(p - p-true)/p',200,-0.25,0.25)
    ut.bookHist(h,'pttrue-pt/pttrue','(pt - pt-true)/pt',200,-0.25,0.25)
    ut.bookHist(h,'pxtrue-px/pxtrue','(px - px-true)/px',200,-0.25,0.25)
    ut.bookHist(h,'pytrue-py/pytrue','(py - py-true)/py',200,-0.25,0.25)
    ut.bookHist(h,'pztrue-pz/pztrue','(pz - pz-true)/pz',200,-0.25,0.25)


    ut.bookHist(h,'n_hits_reco','Number of recognized hits per track, total',64,0.,64.01)
    ut.bookHist(h,'n_hits_reco_12','Number of recognized hits per track, station 1&2',32,0.,32.01)
    ut.bookHist(h,'n_hits_reco_y12','Number of recognized hits per track, Y view station 1&2',32,0.,32.01)
    ut.bookHist(h,'n_hits_reco_stereo12','Number of recognized hits per track, Stereo view station 1&2',32,0.,32.01)
    ut.bookHist(h,'n_hits_reco_34','Number of recognized hits per track, station 3&4',32,0.,32.01)
    ut.bookHist(h,'n_hits_reco_y34','Number of recognized hits per track, Y view station 3&4',32,0.,32.01)
    ut.bookHist(h,'n_hits_reco_stereo34','Number of recognized hits per track, Stereo view station 3&4',32,0.,32.01)

    # Momentum dependences
    ut.bookProf(h, 'n_hits_total', 'Number of recognized hits per track, total', 30, 0, 150)
    h['n_hits_total'].GetXaxis().SetTitle('Momentum')
    h['n_hits_total'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_y12', 'Number of recognized hits per track, Y view station 1&2', 30, 0, 150)
    h['n_hits_y12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_y12'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_stereo12', 'Number of recognized hits per track, Stereo view station 1&2', 30, 0, 150)
    h['n_hits_stereo12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_stereo12'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_12', 'Number of recognized hits per track, station 1&2', 30, 0, 150)
    h['n_hits_12'].GetXaxis().SetTitle('Momentum')
    h['n_hits_12'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_y34', 'Number of recognized hits per track, Y view station 3&4', 30, 0, 150)
    h['n_hits_y34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_y34'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_stereo34', 'Number of recognized hits per track, Stereo view station 3&4', 30, 0, 150)
    h['n_hits_stereo34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_stereo34'].GetYaxis().SetTitle('N')

    ut.bookProf(h, 'n_hits_34', 'Number of recognized hits per track, station 3&4', 30, 0, 150)
    h['n_hits_34'].GetXaxis().SetTitle('Momentum')
    h['n_hits_34'].GetYaxis().SetTitle('N')

    ut.bookProf(h,'perr','(p - p-true)/p',30, 0, 150)
    h['perr'].GetXaxis().SetTitle('Momentum')
    h['perr'].GetYaxis().SetTitle('(p - p-true)/p')

    ut.bookProf(h,'perr_direction','(p - p-true)/p from track direction in YZ plane',20, 0, 10.01)
    h['perr_direction'].GetXaxis().SetTitle('Degree')
    h['perr_direction'].GetYaxis().SetTitle('(p - p-true)/p')


    ut.bookProf(h, 'frac_total', 'Fraction of hits the same as MC hits, total', 30, 0, 150)
    h['frac_total'].GetXaxis().SetTitle('Momentum')
    h['frac_total'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_y12', 'Fraction of hits the same as MC hits, Y view station 1&2', 30, 0, 150)
    h['frac_y12'].GetXaxis().SetTitle('Momentum')
    h['frac_y12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_stereo12', 'Fraction of hits the same as MC hits, Stereo view station 1&2', 30, 0, 150)
    h['frac_stereo12'].GetXaxis().SetTitle('Momentum')
    h['frac_stereo12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_12', 'Fraction of hits the same as MC hits, station 1&2', 30, 0, 150)
    h['frac_12'].GetXaxis().SetTitle('Momentum')
    h['frac_12'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_y34', 'Fraction of hits the same as MC hits, Y view station 3&4', 30, 0, 150)
    h['frac_y34'].GetXaxis().SetTitle('Momentum')
    h['frac_y34'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_stereo34', 'Fraction of hits the same as MC hits, Stereo view station 3&4', 30, 0, 150)
    h['frac_stereo34'].GetXaxis().SetTitle('Momentum')
    h['frac_stereo34'].GetYaxis().SetTitle('Fraction')

    ut.bookProf(h, 'frac_34', 'Fraction of hits the same as MC hits, station 3&4', 30, 0, 150)
    h['frac_34'].GetXaxis().SetTitle('Momentum')
    h['frac_34'].GetYaxis().SetTitle('Fraction')

    ut.bookHist(h,'frac_y12_dist','Fraction of hits the same as MC hits, Y view station 1&2',50,0.5,1.001)
    ut.bookHist(h,'frac_stereo12_dist','Fraction of hits the same as MC hits, Stereo view station 1&2',50,0.5,1.001)
    ut.bookHist(h,'frac_12_dist','Fraction of hits the same as MC hits, station 1&2',50,0.5,1.001)
    ut.bookHist(h,'frac_y34_dist','Fraction of hits the same as MC hits, Y view station 3&4',50,0.5,1.001)
    ut.bookHist(h,'frac_stereo34_dist','Fraction of hits the same as MC hits, Stereo view station 3&4',50,0.5,1.001)
    ut.bookHist(h,'frac_34_dist','Fraction of hits the same as MC hits, station 3&4',50,0.5,1.001)
    ut.bookHist(h,'frac_total_dist','Fraction of hits the same as MC hits, total',50,0.5,1.001)


    ut.bookHist(h,'Reco_tracks','Number of recognized tracks, clones and ghosts for reconstructible tracks.', 5, -0.5, 4.5)
    h['Reco_tracks'].GetXaxis().SetBinLabel(1,"N total")
    h['Reco_tracks'].GetXaxis().SetBinLabel(2,"N recognized tracks")
    h['Reco_tracks'].GetXaxis().SetBinLabel(3,"N clones")
    h['Reco_tracks'].GetXaxis().SetBinLabel(4,"N ghosts")
    h['Reco_tracks'].GetXaxis().SetBinLabel(5,"N others")


    # Fitted values
    ut.bookHist(h,'chi2fittedtracks','Chi^2 per NDOF for fitted tracks',210,-0.05,20.05)
    ut.bookHist(h,'pvalfittedtracks','pval for fitted tracks',110,-0.05,1.05)
    ut.bookHist(h,'momentumfittedtracks','momentum for fitted tracks',251,-0.05,250.05)
    ut.bookHist(h,'xdirectionfittedtracks','x-direction for fitted tracks',91,-0.5,90.5)
    ut.bookHist(h,'ydirectionfittedtracks','y-direction for fitted tracks',91,-0.5,90.5)
    ut.bookHist(h,'zdirectionfittedtracks','z-direction for fitted tracks',91,-0.5,90.5)
    ut.bookHist(h,'massfittedtracks','mass fitted tracks',210,-0.005,0.205)
    ut.bookHist(h,'pvspfitted','p-patrec vs p-fitted',401,-200.5,200.5,401,-200.5,200.5)


    ut.bookHist(h,'abs(x - x-true)','Hits abs(x - x-true)',260,-0.05,5.05)
    ut.bookHist(h,'abs(y - y-true)','Hits abs(y - y-true)',260,-0.05,5.05)

    ut.bookHist(h,'rmse_x','Hits x fit rmse',260,-0.05,5.05)
    ut.bookHist(h,'rmse_y','Hits y fit rmse',260,-0.05,5.05)



    return h
Beispiel #3
0
if withHists:
    ut.bookHist(h, 'distu', 'distance to wire', 100, 0., 5.)
    ut.bookHist(h, 'distv', 'distance to wire', 100, 0., 5.)
    ut.bookHist(h, 'disty', 'distance to wire', 100, 0., 5.)
    ut.bookHist(h, 'nmeas', 'nr measurements', 100, 0., 50.)
    ut.bookHist(h, 'chi2', 'Chi2/DOF', 100, 0., 20.)
    ut.bookHist(h, 'p-fittedtracks', 'p of fitted tracks', 40, 0., 400.)
    ut.bookHist(h, '1/p-fittedtracks', '1/p of fitted tracks', 120, -0.2, 1.)
    ut.bookHist(h, 'pt-fittedtracks', 'pt of fitted tracks', 100, 0., 10.)
    ut.bookHist(h, '1/pt-fittedtracks', '1/pt of fitted tracks', 120, -0.2, 1.)
    ut.bookHist(h, 'ptruth', 'ptruth', 40, 0., 400.)
    ut.bookHist(h, 'delPOverP', 'Pfitted/Ptrue-1 vs Ptrue', 40, 0., 400., 50,
                -2.0, 2.0)
    ut.bookHist(h, 'invdelPOverP', '1/Pfitted-1/Ptrue)/(1/Ptrue) vs Ptrue', 40,
                0., 400., 50, -2.0, 2.0)
    ut.bookProf(h, 'deltaPOverP', 'Pfitted/Ptrue-1 vs Ptrue', 40, 0., 400.,
                -10., 10.0)
    ut.bookHist(h, 'Pfitted-Pgun', 'P-fitted vs P-gun', 40, 0., 400., 50, 0.,
                500.0)
    ut.bookHist(h, 'Px/Pzfitted', 'Px/Pz-fitted', 100, -0.04, 0.04)
    ut.bookHist(h, 'Py/Pzfitted', 'Py/Pz-fitted', 100, -0.04, 0.04)
    ut.bookHist(h, 'Px/Pztrue', 'Px/Pz-true', 100, -0.04, 0.04)
    ut.bookHist(h, 'Py/Pztrue', 'Py/Pz-true', 100, -0.04, 0.04)
    ut.bookHist(h, 'Px/Pzfitted-noT4', 'Px/Pz-fitted only T1,T2,T3 ', 100,
                -0.04, 0.04)
    ut.bookHist(h, 'Py/Pzfitted-noT4', 'Py/Pz-fitted only T1,T2,T3', 100,
                -0.04, 0.04)
    ut.bookHist(h, 'Px/Pztrue-noT4', 'Px/Pz-true only T1,T2,T3', 100, -0.04,
                0.04)
    ut.bookHist(h, 'Py/Pztrue-noT4', 'Py/Pz-true only T1,T2,T3', 100, -0.04,
                0.04)
    ut.bookHist(h, 'Px/Pzfitted-all', 'Px/Pz-fitted', 100, -0.04, 0.04)
Beispiel #4
0
h={}
log={}
if withHists:
 ut.bookHist(h,'distu','distance to wire',100,0.,5.)
 ut.bookHist(h,'distv','distance to wire',100,0.,5.)
 ut.bookHist(h,'disty','distance to wire',100,0.,5.)
 ut.bookHist(h,'nmeas','nr measurements',100,0.,50.)
 ut.bookHist(h,'chi2','Chi2/DOF',100,0.,20.)
 ut.bookHist(h,'p-fittedtracks','p of fitted tracks',40,0.,400.)
 ut.bookHist(h,'1/p-fittedtracks','1/p of fitted tracks',120,-0.2,1.)
 ut.bookHist(h,'pt-fittedtracks','pt of fitted tracks',100,0.,10.)
 ut.bookHist(h,'1/pt-fittedtracks','1/pt of fitted tracks',120,-0.2,1.)
 ut.bookHist(h,'ptruth','ptruth',40,0.,400.)
 ut.bookHist(h,'delPOverP','Pfitted/Ptrue-1 vs Ptrue',40,0.,400.,50,-2.0,2.0)
 ut.bookHist(h,'invdelPOverP','1/Pfitted-1/Ptrue)/(1/Ptrue) vs Ptrue',40,0.,400.,50,-2.0,2.0)
 ut.bookProf(h,'deltaPOverP','Pfitted/Ptrue-1 vs Ptrue',40,0.,400.,-10.,10.0)
 ut.bookHist(h,'Pfitted-Pgun','P-fitted vs P-gun',40,0.,400.,50,0.,500.0)
 ut.bookHist(h,'Px/Pzfitted','Px/Pz-fitted',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pzfitted','Py/Pz-fitted',100,-0.04,0.04) 
 ut.bookHist(h,'Px/Pztrue','Px/Pz-true',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pztrue','Py/Pz-true',100,-0.04,0.04) 
 ut.bookHist(h,'Px/Pzfitted-noT4','Px/Pz-fitted only T1,T2,T3 ',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pzfitted-noT4','Py/Pz-fitted only T1,T2,T3',100,-0.04,0.04)
 ut.bookHist(h,'Px/Pztrue-noT4','Px/Pz-true only T1,T2,T3',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pztrue-noT4','Py/Pz-true only T1,T2,T3',100,-0.04,0.04)
 ut.bookHist(h,'Px/Pzfitted-all','Px/Pz-fitted',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pzfitted-all','Py/Pz-fitted',100,-0.04,0.04)
 ut.bookHist(h,'Px/Pztrue-all','Px/Pz-true',100,-0.04,0.04)
 ut.bookHist(h,'Py/Pztrue-all','Py/Pz-true',100,-0.04,0.04)
 ut.bookHist(h,'Px/Pzfitted-Px/Pztruth','Px/Pz-fitted - Px/Pz-true vs P-true',40,0.,400.,100,-0.002,0.002)
 ut.bookHist(h,'Py/Pzfitted-Py/Pztruth','Py/Pz-fitted - Py/Pz-true vs P-true',40,0.,400.,50,-0.02,0.02)