Skip to content
Snippets Groups Projects
Commit 77d900fc authored by Cdaq Account's avatar Cdaq Account
Browse files

Online Gui config and Macros for looking at hodoscope good hits

Includes efficieny and attenuation plots
parent 7813307d
No related branches found
No related tags found
No related merge requests found
#protorootfile ../ROOTfiles/hhodo_htrig_replay_XXXXX.root
protorootfile ../ROOTfiles/test_XXXXX.root
guicolor lightblue
canvassize 800 800
newpage 4 4
title X1 Neg ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1x16")
newpage 4 4
title X1 Pos ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1x16")
newpage 3 4
title Y1 Neg ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg1y10")
newpage 3 4
title Y1 Pos ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos1y10")
newpage 4 4
title X2 Neg ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2x16")
newpage 4 4
title X2 Pos ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2x16")
newpage 3 4
title Y2 Neg ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcneg2y10")
newpage 3 4
title Y2 Pos ADc v TDC
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvtdcpos2y10")
newpage 4 4
title X1 Eff Neg PMT
macro Macros/hodo_efficiency.C("uhdidneg1x1","uhshouldneg1x1")
macro Macros/hodo_efficiency.C("uhdidneg1x2","uhshouldneg1x2")
macro Macros/hodo_efficiency.C("uhdidneg1x3","uhshouldneg1x3")
macro Macros/hodo_efficiency.C("uhdidneg1x4","uhshouldneg1x4")
macro Macros/hodo_efficiency.C("uhdidneg1x5","uhshouldneg1x5")
macro Macros/hodo_efficiency.C("uhdidneg1x6","uhshouldneg1x6")
macro Macros/hodo_efficiency.C("uhdidneg1x7","uhshouldneg1x7")
macro Macros/hodo_efficiency.C("uhdidneg1x8","uhshouldneg1x8")
macro Macros/hodo_efficiency.C("uhdidneg1x9","uhshouldneg1x9")
macro Macros/hodo_efficiency.C("uhdidneg1x10","uhshouldneg1x10")
macro Macros/hodo_efficiency.C("uhdidneg1x11","uhshouldneg1x11")
macro Macros/hodo_efficiency.C("uhdidneg1x12","uhshouldneg1x12")
macro Macros/hodo_efficiency.C("uhdidneg1x13","uhshouldneg1x13")
macro Macros/hodo_efficiency.C("uhdidneg1x14","uhshouldneg1x14")
macro Macros/hodo_efficiency.C("uhdidneg1x15","uhshouldneg1x15")
macro Macros/hodo_efficiency.C("uhdidneg1x16","uhshouldneg1x16")
newpage 4 4
title X1 Eff Pos PMT
macro Macros/hodo_efficiency.C("uhdidpos1x1","uhshouldpos1x1")
macro Macros/hodo_efficiency.C("uhdidpos1x2","uhshouldpos1x2")
macro Macros/hodo_efficiency.C("uhdidpos1x3","uhshouldpos1x3")
macro Macros/hodo_efficiency.C("uhdidpos1x4","uhshouldpos1x4")
macro Macros/hodo_efficiency.C("uhdidpos1x5","uhshouldpos1x5")
macro Macros/hodo_efficiency.C("uhdidpos1x6","uhshouldpos1x6")
macro Macros/hodo_efficiency.C("uhdidpos1x7","uhshouldpos1x7")
macro Macros/hodo_efficiency.C("uhdidpos1x8","uhshouldpos1x8")
macro Macros/hodo_efficiency.C("uhdidpos1x9","uhshouldpos1x9")
macro Macros/hodo_efficiency.C("uhdidpos1x10","uhshouldpos1x10")
macro Macros/hodo_efficiency.C("uhdidpos1x11","uhshouldpos1x11")
macro Macros/hodo_efficiency.C("uhdidpos1x12","uhshouldpos1x12")
macro Macros/hodo_efficiency.C("uhdidpos1x13","uhshouldpos1x13")
macro Macros/hodo_efficiency.C("uhdidpos1x14","uhshouldpos1x14")
macro Macros/hodo_efficiency.C("uhdidpos1x15","uhshouldpos1x15")
macro Macros/hodo_efficiency.C("uhdidpos1x16","uhshouldpos1x16")
newpage 3 4
title Y1 Eff Neg PMT
macro Macros/hodo_efficiency.C("uhdidneg1y1","uhshouldneg1y1")
macro Macros/hodo_efficiency.C("uhdidneg1y2","uhshouldneg1y2")
macro Macros/hodo_efficiency.C("uhdidneg1y3","uhshouldneg1y3")
macro Macros/hodo_efficiency.C("uhdidneg1y4","uhshouldneg1y4")
macro Macros/hodo_efficiency.C("uhdidneg1y5","uhshouldneg1y5")
macro Macros/hodo_efficiency.C("uhdidneg1y6","uhshouldneg1y6")
macro Macros/hodo_efficiency.C("uhdidneg1y7","uhshouldneg1y7")
macro Macros/hodo_efficiency.C("uhdidneg1y8","uhshouldneg1y8")
macro Macros/hodo_efficiency.C("uhdidneg1y9","uhshouldneg1y9")
macro Macros/hodo_efficiency.C("uhdidneg1y10","uhshouldneg1y10")
newpage 3 4
title Y1 Eff Pos PMT
macro Macros/hodo_efficiency.C("uhdidpos1y1","uhshouldpos1y1")
macro Macros/hodo_efficiency.C("uhdidpos1y2","uhshouldpos1y2")
macro Macros/hodo_efficiency.C("uhdidpos1y3","uhshouldpos1y3")
macro Macros/hodo_efficiency.C("uhdidpos1y4","uhshouldpos1y4")
macro Macros/hodo_efficiency.C("uhdidpos1y5","uhshouldpos1y5")
macro Macros/hodo_efficiency.C("uhdidpos1y6","uhshouldpos1y6")
macro Macros/hodo_efficiency.C("uhdidpos1y7","uhshouldpos1y7")
macro Macros/hodo_efficiency.C("uhdidpos1y8","uhshouldpos1y8")
macro Macros/hodo_efficiency.C("uhdidpos1y9","uhshouldpos1y9")
macro Macros/hodo_efficiency.C("uhdidpos1y10","uhshouldpos1y10")
newpage 4 4
title X2 Eff Neg PMT
macro Macros/hodo_efficiency.C("uhdidneg2x1","uhshouldneg2x1")
macro Macros/hodo_efficiency.C("uhdidneg2x2","uhshouldneg2x2")
macro Macros/hodo_efficiency.C("uhdidneg2x3","uhshouldneg2x3")
macro Macros/hodo_efficiency.C("uhdidneg2x4","uhshouldneg2x4")
macro Macros/hodo_efficiency.C("uhdidneg2x5","uhshouldneg2x5")
macro Macros/hodo_efficiency.C("uhdidneg2x6","uhshouldneg2x6")
macro Macros/hodo_efficiency.C("uhdidneg2x7","uhshouldneg2x7")
macro Macros/hodo_efficiency.C("uhdidneg2x8","uhshouldneg2x8")
macro Macros/hodo_efficiency.C("uhdidneg2x9","uhshouldneg2x9")
macro Macros/hodo_efficiency.C("uhdidneg2x10","uhshouldneg2x10")
macro Macros/hodo_efficiency.C("uhdidneg2x11","uhshouldneg2x11")
macro Macros/hodo_efficiency.C("uhdidneg2x12","uhshouldneg2x12")
macro Macros/hodo_efficiency.C("uhdidneg2x13","uhshouldneg2x13")
macro Macros/hodo_efficiency.C("uhdidneg2x14","uhshouldneg2x14")
macro Macros/hodo_efficiency.C("uhdidneg2x15","uhshouldneg2x15")
macro Macros/hodo_efficiency.C("uhdidneg2x16","uhshouldneg2x16")
newpage 4 4
title X2 Eff Pos PMT
macro Macros/hodo_efficiency.C("uhdidpos2x1","uhshouldpos2x1")
macro Macros/hodo_efficiency.C("uhdidpos2x2","uhshouldpos2x2")
macro Macros/hodo_efficiency.C("uhdidpos2x3","uhshouldpos2x3")
macro Macros/hodo_efficiency.C("uhdidpos2x4","uhshouldpos2x4")
macro Macros/hodo_efficiency.C("uhdidpos2x5","uhshouldpos2x5")
macro Macros/hodo_efficiency.C("uhdidpos2x6","uhshouldpos2x6")
macro Macros/hodo_efficiency.C("uhdidpos2x7","uhshouldpos2x7")
macro Macros/hodo_efficiency.C("uhdidpos2x8","uhshouldpos2x8")
macro Macros/hodo_efficiency.C("uhdidpos2x9","uhshouldpos2x9")
macro Macros/hodo_efficiency.C("uhdidpos2x10","uhshouldpos2x10")
macro Macros/hodo_efficiency.C("uhdidpos2x11","uhshouldpos2x11")
macro Macros/hodo_efficiency.C("uhdidpos2x12","uhshouldpos2x12")
macro Macros/hodo_efficiency.C("uhdidpos2x13","uhshouldpos2x13")
macro Macros/hodo_efficiency.C("uhdidpos2x14","uhshouldpos2x14")
macro Macros/hodo_efficiency.C("uhdidpos2x15","uhshouldpos2x15")
macro Macros/hodo_efficiency.C("uhdidpos2x16","uhshouldpos2x16")
newpage 3 4
title Y2 Eff Neg PMT
macro Macros/hodo_efficiency.C("uhdidneg2y1","uhshouldneg2y1")
macro Macros/hodo_efficiency.C("uhdidneg2y2","uhshouldneg2y2")
macro Macros/hodo_efficiency.C("uhdidneg2y3","uhshouldneg2y3")
macro Macros/hodo_efficiency.C("uhdidneg2y4","uhshouldneg2y4")
macro Macros/hodo_efficiency.C("uhdidneg2y5","uhshouldneg2y5")
macro Macros/hodo_efficiency.C("uhdidneg2y6","uhshouldneg2y6")
macro Macros/hodo_efficiency.C("uhdidneg2y7","uhshouldneg2y7")
macro Macros/hodo_efficiency.C("uhdidneg2y8","uhshouldneg2y8")
macro Macros/hodo_efficiency.C("uhdidneg2y9","uhshouldneg2y9")
macro Macros/hodo_efficiency.C("uhdidneg2y10","uhshouldneg2y10")
newpage 3 4
title Y2 Eff Pos PMT
macro Macros/hodo_efficiency.C("uhdidpos2y1","uhshouldpos2y1")
macro Macros/hodo_efficiency.C("uhdidpos2y2","uhshouldpos2y2")
macro Macros/hodo_efficiency.C("uhdidpos2y3","uhshouldpos2y3")
macro Macros/hodo_efficiency.C("uhdidpos2y4","uhshouldpos2y4")
macro Macros/hodo_efficiency.C("uhdidpos2y5","uhshouldpos2y5")
macro Macros/hodo_efficiency.C("uhdidpos2y6","uhshouldpos2y6")
macro Macros/hodo_efficiency.C("uhdidpos2y7","uhshouldpos2y7")
macro Macros/hodo_efficiency.C("uhdidpos2y8","uhshouldpos2y8")
macro Macros/hodo_efficiency.C("uhdidpos2y9","uhshouldpos2y9")
macro Macros/hodo_efficiency.C("uhdidpos2y10","uhshouldpos2y10")
newpage 4 4
title X1 ADC int Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1x16")
newpage 3 4
title Y1 ADC int Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc1y10")
newpage 4 4
title X2 ADC int Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2x16")
newpage 3 4
title Y2 ADC int Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcintgtdc2y10")
newpage 4 4
title X1 TDC Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1x16")
newpage 3 4
title Y1 TDC Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc1y10")
newpage 4 4
title X2 TDC Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2x16")
newpage 3 4
title Y2 TDC Pos vs Neg
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dtdc2y10")
#protorootfile ../ROOTfiles/hhodo_htrig_replay_XXXXX.root
protorootfile ../ROOTfiles/test_XXXXX.root
guicolor lightblue
canvassize 800 800
newpage 4 4
title X1+ ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1x16")
newpage 4 4
title X1- ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1x16")
newpage 3 4
title Y1+ ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos1y10")
newpage 3 4
title Y1- ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg1y10")
newpage 4 4
title X2+ ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2x16")
newpage 4 4
title X2- ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x10")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x11")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x12")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x13")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x14")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x15")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2x16")
newpage 3 4
title Y2+ ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdispos2y10")
newpage 3 4
title Y2- ADC vs Dis
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y1")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y2")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y3")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y4")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y5")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y6")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y7")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y8")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y9")
macro Macros/gooddraw_2d_hhodo.C("uh2dadcvdisneg2y10")
// UserScript.C
//
// Helper macro to build additional histograms
void UserScript()
{
const UInt_t NPLANES = 4;
const UInt_t NSIDES = 2;
const UInt_t MAXBARS = 16;
const UInt_t MAXHITS = 16*16;
const UInt_t NSIGNALS = 2;
const UInt_t NADCSIGNALS = 1;
const UInt_t NTDCSIGNALS = 3;
const TString SPECTROMETER = "H";
const TString DETECTOR = "hod";
const TString plane_names[NPLANES] = {"1x", "1y", "2x", "2y"};
const TString plane_check_names[NPLANES] = {"1y", "1x", "2y", "2x"};
const UInt_t nbars[NPLANES] = {16, 10, 16, 10};
const UInt_t nbars_check[NPLANES] = {10, 16, 10, 16};
const TString sides[NSIDES] = {"GoodNeg", "GoodPos"};
const TString signals[NSIGNALS] = {"Adc", "Tdc"};
const TString adc_signals[NADCSIGNALS] = {"PulseInt"};
const Double_t adc_min[NADCSIGNALS] = {0};
const Double_t adc_max[NADCSIGNALS] = {5000};
const Int_t adc_nbins[NADCSIGNALS] = {500};
const TString tdc_signals[NTDCSIGNALS] = {"Chan", "TimeCorr", "TimeTOFCorr"};
const Double_t tdc_min[NTDCSIGNALS] = {0.,0.,0.};
const Double_t tdc_max[NTDCSIGNALS] = {4000.,50.,50.};
const Int_t tdc_nbins[NTDCSIGNALS] = {100,500,500};
Double_t adcbit_to_pC = 1.0/(50*4096)*4*1000. ;// 1V/(50 Ohms)/4096*4ns* = .020 pC
Double_t adcpeak_to_mV = 1.0/4096.*1000;// 1.0V per 4096 bits
Double_t fac_for_disc[4]= {2.0,2.,2.,2.};// Factor to have ADC at FADC match signal at discriminatir assuming split of 2/3 to 1/3( 2Y plane has linear FI/FO not a splitter)
Int_t nhits[NPLANES];
Double_t adc_tdc_ymin[4]={45.,45.,35.,35.};
Double_t adc_tdc_ymax[4]={65.,65.,55.,55.};
Int_t nhits_temp;
Double_t paddles[NPLANES][MAXHITS];
Double_t adc_values[NPLANES][NSIDES][NADCSIGNALS][MAXHITS];
Double_t tdc_values[NPLANES][NSIDES][NTDCSIGNALS][MAXHITS];
//
TH2F* htdc_tdc[NPLANES*MAXBARS];
TH2F* hadc_adc[NPLANES*MAXBARS];
TH2F* hadc_adc_good[NPLANES*MAXBARS];
TH2F* hadc_tdc[NPLANES*MAXBARS][2];
/*
make histogram of plane ADC versus position in perpendicalur plane
*/
TH2F* hadc_dis[NPLANES*MAXBARS][2];
Int_t dis_bin[4]={10,16,10,16};
Double_t dis_min[4];
Double_t dis_max[4];
Double_t dis_center_pad1[4]={33.75,-56.25,33.75,-56.25};
Double_t dis_sign[4]={-1.,1.,-1.,1.};
Double_t dis_space=7.5;
//
TH2F* hpadx;
TH2F* hpadxy1;
TH2F* hpady;
hpadx= new TH2F("hpadx",";paddle X1;paddle X2",16,1,17,16,1,17);
hpadxy1= new TH2F("hpadxy1",";paddle X1;paddle Y1",16,1,17,10,1,11);
hpady= new TH2F("hpady",";paddle Y1;paddle Y2",10,1,11,10,1,11);
//
/*
Histograms for Neg and Pos PMT efficiencies as function of paddle in other perpendicular plane
Each X1 paddle efficiency as function of Y1 paddle.
Each Y1 paddle efficiency as function of X1 paddle.
Each X2 paddle efficiency as function of Y2 paddle.
Each Y2 paddle efficiency as function of X2 paddle.
Tree has data in which at least one PMT had a good TDC time.
If the other PMT did not have a good time then its TDC =-999.
For each event
Set good_should=kTRUE if nhits==1 all planes.
Loop through all hits in each plane ip=0,3
If good_should=kTRUE and tdc_neg_val>0 good_neg[ip][bar]=kTRUE
If good_should=kTRUE and tdc_pos_val>0 good_neg[ip][bar]=kTRUE
endloop
Loop through all planes and all bars in that plane ib=0,nbars[ip]
if good_pos[ip][ib] then negative end should have had a hit
fill "should" neg PMT histogram with perpendicular paddle
if good_pos[ip][ib] and good_neg[ip][ib]
fill "did" neg PMT histogram with perpendicular paddle
if good_neg[ip][ib] then positive end should have had a hit
fill "should" pos PMT histogram with perpendicular paddle
if good_pos[ip][ib] and good_neg[ip][ib]
fill "did" pos PMT histogram with perpendicular paddle
end event
Efficiency is ratio of did/should which is calculated using hodo_efficiency.C
*/
TH1F* hgood_neg_should[4][16];
TH1F* hgood_pos_should[4][16];
TH1F* hgood_neg_did[4][16];
TH1F* hgood_pos_did[4][16];
//
Int_t adc_ihit, tdc_ihit;
TTree *T=(TTree*)gDirectory->Get("T");
//
for(UInt_t ip = 0; ip < NPLANES; ip++) {
for(UInt_t ibar = 0; ibar < nbars[ip]; ibar++) {
TString i2dbarname = Form("%d",ibar+1);
TString h2dttitle= "TDC 1ns/chan "+plane_names[ip]+i2dbarname+"; Neg ; Pos ";
TString h2dtname="uh2dtdc"+plane_names[ip]+i2dbarname;
htdc_tdc[ip*MAXBARS+ibar]= new TH2F(h2dtname,h2dttitle,200,25,75,200,25,75.);
TString h2dnegtitle= "Neg PMT Pad "+plane_names[ip]+i2dbarname+"; plane "+plane_check_names[ip]+" paddles; Counts neg ";
TString h2dnegname="uhdidneg"+plane_names[ip]+i2dbarname;
hgood_neg_did[ip][ibar]= new TH1F(h2dnegname,h2dnegtitle,nbars_check[ip],1,nbars_check[ip]+1);
TString h2dnegtitle= "Neg PMT Pad "+plane_names[ip]+i2dbarname+"; plane "+plane_check_names[ip]+" paddles; Counts neg ";
TString h2dnegname="uhshouldneg"+plane_names[ip]+i2dbarname;
hgood_neg_should[ip][ibar]= new TH1F(h2dnegname,h2dnegtitle,nbars_check[ip],1,nbars_check[ip]+1);
TString h2dpostitle= "Pos PMT Pad "+plane_names[ip]+i2dbarname+"; plane "+plane_check_names[ip]+" paddles;Counts pos ";
TString h2dposname="uhdidpos"+plane_names[ip]+i2dbarname;
hgood_pos_did[ip][ibar]= new TH1F(h2dposname,h2dpostitle,nbars_check[ip],1,nbars_check[ip]+1);
TString h2dpostitle="Pos PMT Pad "+plane_names[ip]+i2dbarname+"; plane "+plane_check_names[ip]+" paddles;Counts pos ";
TString h2dposname="uhshouldpos"+plane_names[ip]+i2dbarname;
hgood_pos_should[ip][ibar]= new TH1F(h2dposname,h2dpostitle,nbars_check[ip],1,nbars_check[ip]+1);
}
}
//
//
for(UInt_t ip = 0; ip < NPLANES; ip++) {
for(UInt_t ibar = 0; ibar < nbars[ip]; ibar++) {
TString i2dbarname = Form("%d",ibar+1);
TString h2dttitle= "ADC Int Amp "+plane_names[ip]+i2dbarname+"; Neg (pC); Pos (pC)";
TString h2dtname="uh2dadcint"+plane_names[ip]+i2dbarname;
hadc_adc[ip*MAXBARS+ibar]= new TH2F(h2dtname,h2dttitle,50,0,100,50,0,100.);
TString h2dttitle= "Good TDC ADC Int Amp "+plane_names[ip]+i2dbarname+"; Neg (pC); Pos (pC)";
TString h2dtname="uh2dadcintgtdc"+plane_names[ip]+i2dbarname;
hadc_adc_good[ip*MAXBARS+ibar]= new TH2F(h2dtname,h2dttitle,50,0,100,50,0,100.);
TString h2dttitle= "Neg PMT Pad "+plane_names[ip]+i2dbarname+"; Adc (pC); Time (ns)";
TString h2dtname="uh2dadcvtdcneg"+plane_names[ip]+i2dbarname;
hadc_tdc[ip*MAXBARS+ibar][0]= new TH2F(h2dtname,h2dttitle,50,0,100,50,adc_tdc_ymin[ip],adc_tdc_ymax[ip]);
TString h2dttitle= "Pos PMT Pad "+plane_names[ip]+i2dbarname+"; Adc (pC); Time (ns)";
TString h2dtname="uh2dadcvtdcpos"+plane_names[ip]+i2dbarname;
hadc_tdc[ip*MAXBARS+ibar][1]= new TH2F(h2dtname,h2dttitle,50,0,100,50,adc_tdc_ymin[ip],adc_tdc_ymax[ip]);
TString h2dttitle= "Neg PMT Pad "+plane_names[ip]+i2dbarname+"; Pos (cm); Adc (pC)";
TString h2dtname="uh2dadcvdisneg"+plane_names[ip]+i2dbarname;
hadc_dis[ip*MAXBARS+ibar][0]= new TH2F(h2dtname,h2dttitle,dis_bin[ip],dis_sign[ip]*dis_center_pad1[ip]-dis_space/2.,-dis_sign[ip]*dis_center_pad1[ip]+dis_space/2.,50,0,100);
TString h2dttitle= "Pos PMT Pad "+plane_names[ip]+i2dbarname+"; Pos (cm); Adc (pC)";
TString h2dtname="uh2dadcvdispos"+plane_names[ip]+i2dbarname;
hadc_dis[ip*MAXBARS+ibar][1]= new TH2F(h2dtname,h2dttitle,dis_bin[ip],dis_sign[ip]*dis_center_pad1[ip]-dis_space/2.,-dis_sign[ip]*dis_center_pad1[ip]+dis_space/2.,50,0,100);
}
}
// set up branches
for(UInt_t ip = 0; ip < NPLANES; ip++) {
TString base2_name = SPECTROMETER+"."+DETECTOR+"."+plane_names[ip];
TString ndata_name = "Ndata."+base2_name+".GoodPaddle";
T->SetBranchAddress(ndata_name, &nhits[ip]);
TString paddle_name = base2_name+".GoodPaddle";
T->SetBranchAddress(paddle_name, &paddles[ip][0]);
//s cout << ip << " " << paddle_name << endl;
for(UInt_t iside = 0; iside < NSIDES; iside++) {
for(UInt_t isignal = 0; isignal < NSIGNALS; isignal++) {
if(signals[isignal] == "Adc") {
TString adc_base_name = SPECTROMETER+"."+DETECTOR+"."+
plane_names[ip]+"."+sides[iside]+signals[isignal];
for (UInt_t iadcsignal = 0; iadcsignal < NADCSIGNALS; iadcsignal++) {
TString adclist_name = adc_base_name+adc_signals[iadcsignal];
T->SetBranchAddress(adclist_name, &adc_values[ip][iside][iadcsignal][0]);
}
}
if(signals[isignal] == "Tdc") {
TString tdc_base_name = SPECTROMETER+"."+DETECTOR+"."+
plane_names[ip]+"."+sides[iside]+signals[isignal];
for (UInt_t itdcsignal = 0; itdcsignal < NTDCSIGNALS; itdcsignal++) {
TString tdclist_name = tdc_base_name+tdc_signals[itdcsignal];
T->SetBranchAddress(tdclist_name, &tdc_values[ip][iside][itdcsignal][0]);
}
}
} // isginal
} //iside
} // ip
// Loop over the events, filling the histograms
Bool_t good_should;
Double_t good_pad[4];
Double_t good_adc[4][2];
Int_t check_plane[4]={1,0,3,2};
Bool_t good_neg[4][16],good_pos[4][16];
for(UInt_t iev = 0, N = T->GetEntries(); iev < N; iev++) {
T->GetEntry(iev);
if (iev%10000==0) cout << " iev = " << iev << endl;
// get events with x paddle number equal and y paddle equal
//
good_should=kFALSE;
for(UInt_t ip = 0; ip < NPLANES; ip++){
for(UInt_t ib = 0; ib < nbars[ip]; ib++){
good_neg[ip][ib]=kFALSE;
good_pos[ip][ib]=kFALSE;
}
}
if (nhits[0]==1&&nhits[1]==1&&nhits[2]==1&&nhits[3]==1) good_should = kTRUE;
for(UInt_t ip = 0; ip < NPLANES; ip++){
// cout << iev << " " << ip << " " << nhits[ip]<< endl;
for(Int_t ihit = 0; ihit < nhits[ip]; ihit++) {
UInt_t bar = TMath::Nint(paddles[ip][ihit]) - 1;
Double_t tdc_neg_val = tdc_values[ip][0][1][ihit];
Double_t tdc_pos_val =tdc_values[ip][1][1][ihit];
Double_t adc_neg_val = adc_values[ip][0][0][ihit]*adcbit_to_pC;
Double_t adc_pos_val = adc_values[ip][1][0][ihit]*adcbit_to_pC;
// cout << " " << ihit << " " << bar << " " << tdc_neg_val << endl;
htdc_tdc[ip*MAXBARS+bar]->Fill(tdc_neg_val,tdc_pos_val);
// if (tdc_neg_val > 0 && tdc_pos_val >0) hadc_adc[ip*MAXBARS+bar]->Fill(adc_neg_val,adc_pos_val);
hadc_adc[ip*MAXBARS+bar]->Fill(adc_neg_val,adc_pos_val);
if (tdc_pos_val>0 && tdc_neg_val>0 ) {
hadc_adc_good[ip*MAXBARS+bar]->Fill(adc_neg_val,adc_pos_val);
hadc_tdc[ip*MAXBARS+bar][0]->Fill(adc_neg_val,tdc_neg_val);
hadc_tdc[ip*MAXBARS+bar][1]->Fill(adc_pos_val,tdc_pos_val);
}
good_pad[ip]=bar+1;
good_adc[ip][0]=adc_neg_val;
good_adc[ip][1]=adc_pos_val;
if (good_should && tdc_neg_val>0 ) good_neg[ip][bar]=kTRUE;
if (good_should && tdc_pos_val>0 ) good_pos[ip][bar]=kTRUE;
}
}
//
if (good_should ) {
for(UInt_t ip = 0; ip < NPLANES; ip++){
// cout << " ip = " << ip << " " << good_should<< endl;
// cout << " pad = " << good_pad[check_plane[ip]] << " check_plane = " << check_plane[ip] << endl;
for(UInt_t ib = 0; ib < nbars[ip]; ib++){
// cout << ib << " " << good_neg[ip][ib] << " " << good_pos[ip][ib] << endl;
if (good_pos[ip][ib]) hgood_neg_should[ip][ib]->Fill(good_pad[check_plane[ip]]);
if (good_neg[ip][ib]) hgood_pos_should[ip][ib]->Fill(good_pad[check_plane[ip]]);
if (good_neg[ip][ib] && good_pos[ip][ib]) {
hgood_neg_did[ip][ib]->Fill(good_pad[check_plane[ip]]);
hgood_pos_did[ip][ib]->Fill(good_pad[check_plane[ip]]);
hadc_dis[ip*MAXBARS+ib][0]->Fill(dis_center_pad1[ip]+dis_sign[ip]*dis_space*(good_pad[check_plane[ip]]-1),good_adc[ip][0]);
hadc_dis[ip*MAXBARS+ib][1]->Fill(dis_center_pad1[ip]+dis_sign[ip]*dis_space*(good_pad[check_plane[ip]]-1),good_adc[ip][1]);
}
}
}
}
} // loop over entries
//
return;
}
void gooddraw_2d_hhodo(TString histname) {
TH1F* h1d;
TH2F* h2d;
h1d = (TH1F*) gDirectory->Get(histname);
h2d = (TH2F*) gDirectory->Get(histname);
if(!h1d && !h2d) {
UserScript();
h1d = (TH1F*) gDirectory->Get(histname);
h2d = (TH2F*) gDirectory->Get(histname);
if(!h1d || !h2d) {
cout << "User histogram " << histname << " not found" << endl;
exit(1);
}
}
if (h2d) {
h2d->SetStats(0);
h2d->Draw("colz");
h2d->GetXaxis()->SetTitleOffset(.6);
h2d->GetXaxis()->SetTitleSize(0.08);
h2d->GetYaxis()->SetTitleOffset(.6);
h2d->GetYaxis()->SetTitleSize(0.08);
}
else {
cout << "1d drawing " << histname << endl;
h1d->SetStats(0);
h1d->Draw();
h1d->GetXaxis()->SetTitleOffset(.6);
h1d->GetXaxis()->SetTitleSize(0.08);
h1d->GetYaxis()->SetTitleOffset(.6);
h1d->GetYaxis()->SetTitleSize(0.08);
}
}
void hodo_efficiency(TString hist1name, TString hist2name){
TH1F* H1;
TH1F* H2;
H1 = (TH1F*) gDirectory->Get(hist1name);
H2 = (TH1F*) gDirectory->Get(hist2name);
if (H1 && H2) {
H1->Sumw2();
H2->Sumw2();
TH1F* Hratio=(TH1F*)H1->Clone();
Hratio->Divide(H1,H2,1,1,"B");
Hratio->SetStats(0);
// Hratio->SetMinimum(0.4);
Hratio->SetMaximum(1.1);
Hratio->Draw("EP");
Hratio->GetXaxis()->SetTitleOffset(.6);
Hratio->GetXaxis()->SetTitleSize(0.08);
Hratio->GetYaxis()->SetTitleOffset(.6);
Hratio->GetYaxis()->SetTitleSize(0.08);
} else {
if (!H1) cout << " Histogram " << hist1name << " does not exist" << endl;
if (!H2) cout << " Histogram " << hist2name << " does not exist" << endl;
}
}
...@@ -15,6 +15,10 @@ void overlay(TString hist1name, TString hist2name, Bool_t golden=false,TString s ...@@ -15,6 +15,10 @@ void overlay(TString hist1name, TString hist2name, Bool_t golden=false,TString s
} else { } else {
H1->SetLineColor(4); H1->SetLineColor(4);
H2->SetLineColor(2); H2->SetLineColor(2);
H1->SetStats(0);
H2->SetStats(0);
H1->SetMinimum(0);
H2->SetMinimum(0);
} }
if(golden){ if(golden){
...@@ -37,6 +41,10 @@ void overlay(TString hist1name, TString hist2name, Bool_t golden=false,TString s ...@@ -37,6 +41,10 @@ void overlay(TString hist1name, TString hist2name, Bool_t golden=false,TString s
H1->Draw(samestr); H1->Draw(samestr);
if(!samestr.Contains("sames")) samestr += "sames"; if(!samestr.Contains("sames")) samestr += "sames";
H2->Draw(samestr); H2->Draw(samestr);
H2->GetXaxis()->SetTitleOffset(.6);
H2->GetXaxis()->SetTitleSize(0.08);
H2->GetYaxis()->SetTitleOffset(.6);
H2->GetYaxis()->SetTitleSize(0.08);
} }
} }
} else { } else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment