def main(): doTrackPlots = False doFEEs = False doResiduals = False doSummaryPlots = False doDerivatives = True #Style of plots utils.SetStyle() #MAX 4 FILES inputFiles = [ #these filesare the ones I'm interested the most. # # "AlignMonitoring_10103_FEESkims_TY_pass2_tight_TY_iter6.root", # "AlignMonitoring_10103_FEESkims_TY_TY_iter2.root", # "AlignMonitoring_10103_FEESkims_TY_TY_iter3.root", # "AlignMonitoring_10103_FEESkims_TY_TY_iter4.root", #"AlignMonitoring_10103_FEESkims_TY_TY_iter5.root", #"AlignMonitoring_10103_FEESkims_TY_pass2_tight_TY_iter6.root", #"AlignMonitoring_10103_FEESkims_TY_Nominal_iter0.root", #"AlignMonitoring_10103_FEESkims_TY_BOT_TY_SPLIT_iter1.root", #"AlignMonitoring_9921_FEESkims_TY_BOT_TY_SPLIT_9921_iter2.root", #"AlignMonitoring_9921_FEESkims_TY_BOT_TY_SPLIT_9921_iter3.root", #"AlignMonitoring_10666_FEE_MC_2019_Nominal_iter0.root", #"AlignMonitoring_10103_FEESkims_TY_BOT_KF_TY_SPLIT_iter1.root", #"AlignMonitoring_10666_FEE_MC_2019_KF_Nominal_iter0.root" #"AlignMonitoring_10103_FEESkims_TY_MOMC_ONLY_SEL_TY_iter5.root", #"AlignMonitoring_10666_FEE_MC_2019_Nominal_iter0.root", #"FEE_MC.slcio_gblplots.root", #Derivative files "GBLRefitterDriverplots.root", "KalmanToGBLDriverplots.root" ] #legends=["6", "2","3","4"] #legends = ["FEE 10103","Single e^{-} 4.5 GeV"] #legends = ["Nominal Geo", "FEE 10103 iter5", "FEE MC",] # legends = ["Nominal","AllDof It3","AllDofIt3 L1-L4 It1","Older L1-L4 Iteration","wrongSign","TopUCAllDof iter2"] #legends = ["ModL1L4","TopUCAllDof + L1L4 TyTx","TopUCAllDof + L1L4 TyTx + momC" ] #legends = ["Nominal","ModL1L4","MOMC-it2","MOMC-UC"] #legends = ["With Survey Constants","Without Survey Constants","BSC-MOMC 0","BSC-MOMC 1"]#,"Align pD0 noC"] #legends =["Nominal","PASS4 iter3 NH", "ONLY Y"] #legends = ["FEE 10103 Nominal Geo", "FEE 9921 align", "FEE 10103 align",] #legends = ["9921 ST+GBL", "FEE MC", "10103 ST+GBL", "10103 KF+GBL"] #legends = ["FEE MC STF+GBL", "FEE MC KF+GBL"] #legends = ["FEE MC STF+GBL"] #legends = ["FEE 10103 STF+GBL ali", "FEE 9921 STF+GBL UC level", "FEE 9921 STF+GBL module level"] legends = ["GBL rot der", "KF rot der"] inputF = [] for inputFile in inputFiles: inputF.append(r.TFile(inputFile)) if doSummaryPlots: plotLambdaKinks(inputF, legends) plotPhiKinks(inputF, legends) if (doResiduals): plotRes(inputF, legends) plot1DResiduals(inputF, "uresidual_GBL_module_L1b_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L1b_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L2b_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L2b_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L3b_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L3b_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L4b_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L4b_halfmodule_stereo_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5b_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5b_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5b_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5b_halfmodule_stereo_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6b_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6b_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6b_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6b_halfmodule_stereo_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7b_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7b_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7b_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7b_halfmodule_stereo_slot_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L1t_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L1t_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L2t_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L2t_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L3t_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L3t_halfmodule_stereo_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L4t_halfmodule_axial_sensor0", legends) plot1DResiduals(inputF, "uresidual_GBL_module_L4t_halfmodule_stereo_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5t_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5t_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5t_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L5t_halfmodule_stereo_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6t_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6t_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6t_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L6t_halfmodule_stereo_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7t_halfmodule_axial_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7t_halfmodule_axial_slot_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7t_halfmodule_stereo_hole_sensor0", legends) plot1DResiduals( inputF, "uresidual_GBL_module_L7t_halfmodule_stereo_slot_sensor0", legends) #doMultVtxPlots(inputF,legends) if (doTrackPlots): tp.trackPlots(inputFiles, "trackPlots", legends) if (doFEEs): feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_bottom") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_top") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_slot_top") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_hole_top") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_slot_bottom") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p_hole_bottom") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p6h_top") feePlots.feeMomentumPlot(inputF, legends, "trk_params/p6h_bottom") #feePlots.feeMomentumPlot(inputF,legends,"trk_params/p7h_bottom") if (doDerivatives): print "doDerivatives" #doDerPlots(inputF,"12101", legends) #doDerPlots(inputF,"12201", legends) doDerPlots(inputF, "12301", legends) #doDerPlots(inputF,"22101", legends) #doDerPlots(inputF,"22201", legends) doDerPlots(inputF, "22301", legends) #doDerPlots(inputF,"12105", legends) #doDerPlots(inputF,"12205", legends) doDerPlots(inputF, "12305", legends) #doDerPlots(inputF,"22105", legends) #doDerPlots(inputF,"22205", legends) doDerPlots(inputF, "22305", legends) #doDerPlots(inputF,"12110", legends) #doDerPlots(inputF,"12210", legends) doDerPlots(inputF, "12310", legends) #doDerPlots(inputF,"22110", legends) #doDerPlots(inputF,"22210", legends) doDerPlots(inputF, "22310", legends)
def massRes(mass): res = 3.21662e+00 - 7.07072e-03 * mass + 1.04779e-04 * mass * mass return res def calcLifetime(mass, eps2): return 8.0 * (3.7 / 10.0) * (1e-8 / eps2) * pow(100.0 / mass, 2) #gamma = 0.95 #hbar_c = 1.973e-13 #ct = hbar_c*3.0/(mass*(1/137.036)*10**logEps2) #gammact = hbar_c*3.0*2.3*gamma/(massFGeV*massFGeV*(1/137.036)*10**logEps2) #print "logEps2: %f gcTau: %f gammact: %f percent diff: %f"%(logEps2, gcTau, gammact, 1 - gammact/gcTau) #gcTau = gammact utils.SetStyle() parser = OptionParser() parser.add_option("-i", "--inputFile", type="string", dest="inputFile", help="Name of file to run on.", metavar="inputFile", default="toys/toys.root") parser.add_option("-o", "--outputFile", type="string", dest="outputFile", help="Specify the output filename.",
def main(): inputBaseDir = "/Users/pbutti/sw/hps-java-validation/plots/" #Max 4 inputTestDirs = [ "integration-tests-447cf1a03c75be10174ff3d05", #"integration-tests-68762eb41bc404d103671d3e7", "integration-tests-5c4ad3bf648abac769afcb602aaa3595e26a7928", #"integration-tests-7fc0885968113847ef9d6c3a9cff0951651566", #"integration-tests-c485652938aed93e1" "integration-tests-pass1devfix_68fe77b148d9b32d40a784c8e0e8d9a0279410d2" ] ReferenceFolder = "/Users/pbutti/sw/hps-java-validation/reference" # Style of plots utils.SetStyle() runV0Comparison = False runFEEComparison = False run2019FEEComparison = True if runV0Comparison: do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Bottom Track Momentum", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Invariant Mass", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Momentum", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Top Track Momentum", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Track Number of Hits", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Vertex x", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Vertex y", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Vertex z", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 Vertex z L1L1", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 x Momentum", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 y Momentum", ReferenceFolder) do2016V0Comparison(inputBaseDir, inputTestDirs, "V0 z Momentum", ReferenceFolder) if runFEEComparison: do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom 5 Hit Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom 6 Hit Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top 5 Hit Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top 6 Hit Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track X0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track Y0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track Z0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track Chisq per DoF", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track theta", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Bottom Track Number of Hits", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track Momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track X0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track Y0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track Z0", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track Chisq per DoF", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track theta", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Top Track Number of Hits", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Track deDx", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Track theta", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "Track momentum", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "track data time", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "cluster nHits", ReferenceFolder) do2016FEEComparison(inputBaseDir, inputTestDirs, "clusterSeedHit energy", ReferenceFolder) inputTestDirs = ["2019_integrationTests"] if run2019FEEComparison: tracksDir = "Tracks/GBLTracks/" do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/Hits per Track", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/Mean time of hits on track", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/Track Chi2", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/Tracks per Event", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/d0", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/omega", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/sinphi", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/tan(lambda)", ReferenceFolder) do2019FEEComparison(inputBaseDir, inputTestDirs, tracksDir + "all/z0", ReferenceFolder)