Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:33:26

0001 import FWCore.ParameterSet.Config as cms
0002 from DQMServices.Core.DQMEDHarvester import DQMEDHarvester
0003 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0004 
0005 def _addNoFlow(module):
0006     _noflowSeen = set()
0007     for eff in module.efficiency.value():
0008         tmp = eff.split(" ")
0009         if "cut" in tmp[0]:
0010             continue
0011         ind = -1
0012         if tmp[ind] == "fake" or tmp[ind] == "simpleratio":
0013             ind = -2
0014         if not tmp[ind] in _noflowSeen:
0015             module.noFlowDists.append(tmp[ind])
0016         if not tmp[ind-1] in _noflowSeen:
0017             module.noFlowDists.append(tmp[ind-1])
0018 
0019 _defaultSubdirs = ["Tracking/Track/*", "Tracking/TrackTPPtLess09/*", "Tracking/TrackFromPV/*", "Tracking/TrackFromPVAllTP/*", "Tracking/TrackAllTPEffic/*", "Tracking/TrackBuilding/*","Tracking/TrackConversion/*", "Tracking/TrackGsf/*"]
0020 _defaultSubdirsSummary = [e.replace("/*","") for e in _defaultSubdirs]
0021 
0022 postProcessorTrack = DQMEDHarvester("DQMGenericClient",
0023     subDirs = cms.untracked.vstring(_defaultSubdirs),
0024     efficiency = cms.vstring(
0025     "effic 'Efficiency vs #eta' num_assoc(simToReco)_eta num_simul_eta",
0026     "efficPt 'Efficiency vs p_{T}' num_assoc(simToReco)_pT num_simul_pT",
0027 #    "efficPtvseta 'Efficiency in p_{T}-#eta plane' num_assoc(simToReco)_pTvseta num_simul_pTvseta",
0028     "effic_vs_hit 'Efficiency vs hit' num_assoc(simToReco)_hit num_simul_hit",
0029     "effic_vs_layer 'Efficiency vs layer' num_assoc(simToReco)_layer num_simul_layer",
0030     "effic_vs_pixellayer 'Efficiency vs pixel layer' num_assoc(simToReco)_pixellayer num_simul_pixellayer",
0031     "effic_vs_3Dlayer 'Efficiency vs 3D layer' num_assoc(simToReco)_3Dlayer num_simul_3Dlayer",
0032     "effic_vs_pu 'Efficiency vs pu' num_assoc(simToReco)_pu num_simul_pu",
0033     "effic_vs_phi 'Efficiency vs #phi' num_assoc(simToReco)_phi num_simul_phi",
0034     "effic_vs_dxy 'Efficiency vs Dxy' num_assoc(simToReco)_dxy num_simul_dxy",
0035     "effic_vs_dz 'Efficiency vs Dz' num_assoc(simToReco)_dz num_simul_dz",
0036     "effic_vs_dxypv 'Efficiency vs Dxy(PV)' num_assoc(simToReco)_dxypv num_simul_dxypv",
0037     "effic_vs_dzpv 'Efficiency vs Dz(PV)' num_assoc(simToReco)_dzpv num_simul_dzpv",
0038     "effic_vs_dxypv_zoomed 'Efficiency vs Dxy(PV)' num_assoc(simToReco)_dxypv_zoomed num_simul_dxypv_zoomed",
0039     "effic_vs_dzpv_zoomed 'Efficiency vs Dz(PV)' num_assoc(simToReco)_dzpv_zoomed num_simul_dzpv_zoomed",
0040     "duplicatesRate 'Duplicates Rate vs #eta' num_duplicate_eta num_reco_eta",
0041     "duplicatesRate_Pt 'Duplicates Rate vs p_{T}' num_duplicate_pT num_reco_pT",
0042 #    "duplicatesRate_Ptvseta 'Duplicates Rate in (p_{T}-#eta) plane' num_duplicate_pTvseta num_reco_pTvseta",
0043     "duplicatesRate_hit 'Duplicates Rate vs hit' num_duplicate_hit num_reco_hit",
0044     "duplicatesRate_layer 'Duplicates Rate vs layer' num_duplicate_layer num_reco_layer",
0045     "duplicatesRate_pixellayer 'Duplicates Rate vs pixel layer' num_duplicate_pixellayer num_reco_pixellayer",
0046     "duplicatesRate_3Dlayer 'Duplicates Rate vs layer' num_duplicate_3Dlayer num_reco_3Dlayer",
0047     "duplicatesRate_pu 'Duplicates Rate vs pu' num_duplicate_pu num_reco_pu",
0048     "duplicatesRate_phi 'Duplicates Rate vs #phi' num_duplicate_phi num_reco_phi",
0049     "duplicatesRate_dxy 'Duplicates Rate vs Dxy' num_duplicate_dxy num_reco_dxy",
0050     "duplicatesRate_dz 'Duplicates Rate vs Dz' num_duplicate_dz num_reco_dz",
0051     "duplicatesRate_dxypv 'Duplicates Rate vs Dxy(PV)' num_duplicate_dxypv num_reco_dxypv",
0052     "duplicatesRate_dzpv 'Duplicates Rate vs Dz(PV)' num_duplicate_dzpv num_reco_dzpv",
0053     "duplicatesRate_dxypv_zoomed 'Duplicates Rate vs Dxy(PV)' num_duplicate_dxypv_zoomed num_reco_dxypv_zoomed",
0054     "duplicatesRate_dzpv_zoomed 'Duplicates Rate vs Dz(PV)' num_duplicate_dzpv_zoomed num_reco_dzpv_zoomed",
0055     "duplicatesRate_vertpos 'Duplicates Rate vs vertpos' num_duplicate_vertpos num_reco_vertpos",
0056     "duplicatesRate_zpos 'Duplicates Rate vs zpos' num_duplicate_zpos num_reco_zpos",
0057     "duplicatesRate_dr 'Duplicates Rate vs dr' num_duplicate_dr num_reco_dr",
0058     "duplicatesRate_drj 'Duplicates Rate vs dr (track,jet)' num_duplicate_drj num_reco_drj",
0059     "duplicatesRate_chi2 'Duplicates Rate vs normalized #chi^{2}' num_duplicate_chi2 num_reco_chi2",
0060     "duplicatesRate_seedingLayerSet 'Duplicates rate vs. seedingLayerSet' num_duplicate_seedingLayerSet num_reco_seedingLayerSet",
0061     "chargeMisIdRate 'Charge MisID Rate vs #eta' num_chargemisid_eta num_reco_eta",
0062 #    "chargeMisIdRate_Ptvseta 'Charge MisID Rate in (p_{T}-#eta) plane' num_chargemisid_pTvseta num_reco_pTvseta",
0063     "chargeMisIdRate_hit 'Charge MisID Rate vs hit' num_chargemisid_hit num_reco_hit",
0064     "chargeMisIdRate_layer 'Charge MisID Rate vs layer' num_chargemisid_hit num_reco_layer",
0065     "chargeMisIdRate_pixellayer 'Charge MisID Rate vs pixel layer' num_chargemisid_hit num_reco_pixellayer",
0066     "chargeMisIdRate_3Dlayer 'Charge MisID Rate vs 3Dlayer' num_chargemisid_hit num_reco_3Dlayer",
0067     "chargeMisIdRate_pu 'Charge MisID Rate vs pu' num_chargemisid_pu num_reco_pu",
0068     "chargeMisIdRate_phi 'Charge MisID Rate vs #phi' num_chargemisid_phi num_reco_phi",
0069     "chargeMisIdRate_dxy 'Charge MisID Rate vs Dxy' num_chargemisid_dxy num_reco_dxy",
0070     "chargeMisIdRate_dz 'Charge MisID Rate vs Dz' num_chargemisid_versus_dz num_reco_dz",
0071     "chargeMisIdRate_dxypv 'Charge MisID Rate vs Dxy(PV)' num_chargemisid_dxypv num_reco_dxypv",
0072     "chargeMisIdRate_dzpv 'Charge MisID Rate vs Dz(PV)' num_chargemisid_versus_dzpv num_reco_dzpv",
0073     "chargeMisIdRate_dxypv_zoomed 'Charge MisID Rate vs Dxy(PV)' num_chargemisid_dxypv_zoomed num_reco_dxypv_zoomed",
0074     "chargeMisIdRate_dzpv_zoomed 'Charge MisID Rate vs Dz(PV)' num_chargemisid_versus_dzpv_zoomed num_reco_dzpv_zoomed",
0075     "chargeMisIdRate_chi2 'Charge MisID Rate vs normalized #chi^{2}' num_chargemisid_chi2 num_reco_chi2",
0076     "effic_vs_vertpos 'Efficiency vs vertpos' num_assoc(simToReco)_vertpos num_simul_vertpos",
0077     "effic_vs_zpos 'Efficiency vs zpos' num_assoc(simToReco)_zpos num_simul_zpos",
0078     "effic_vs_dr 'Efficiency vs dr' num_assoc(simToReco)_dr num_simul_dr",
0079     "effic_vs_drj 'Efficiency vs dr (track,jet)' num_assoc(simToReco)_drj num_simul_drj",
0080     "effic_vertcount_barrel 'efficiency in barrel vs N of pileup vertices' num_assoc(simToReco)_vertcount_barrel num_simul_vertcount_barrel",
0081     "effic_vertcount_fwdpos 'efficiency in endcap(+) vs N of pileup vertices' num_assoc(simToReco)_vertcount_fwdpos num_simul_vertcount_fwdpos",
0082     "effic_vertcount_fwdneg 'efficiency in endcap(-) vs N of pileup vertices' num_assoc(simToReco)_vertcount_fwdneg num_simul_vertcount_fwdneg",
0083     "effic_vertz_barrel 'efficiency in barrel vs z of primary interaction vertex' num_assoc(simToReco)_vertz_barrel num_simul_vertz_barrel",
0084     "effic_vertz_fwdpos 'efficiency in endcap(+) vs z of primary interaction vertex' num_assoc(simToReco)_vertz_fwdpos num_simul_vertz_fwdpos",
0085     "effic_vertz_fwdneg 'efficiency in endcap(-) vs z of primary interaction vertex' num_assoc(simToReco)_vertz_fwdneg num_simul_vertz_fwdneg",
0086     "pileuprate 'Pileup Rate vs #eta' num_pileup_eta num_reco_eta",
0087     "pileuprate_Pt 'Pileup rate vs p_{T}' num_pileup_pT num_reco_pT",
0088 #    "pileuprate_Ptvseta 'Pileup rate in (p_{T}-#eta) plane' num_pileup_pTvseta num_reco_pTvseta",
0089     "pileuprate_hit 'Pileup rate vs hit' num_pileup_hit num_reco_hit",
0090     "pileuprate_layer 'Pileup rate vs layer' num_pileup_layer num_reco_layer",
0091     "pileuprate_pixellayer 'Pileup rate vs layer' num_pileup_pixellayer num_reco_pixellayer",
0092     "pileuprate_3Dlayer 'Pileup rate vs 3D layer' num_pileup_3Dlayer num_reco_3Dlayer",
0093     "pileuprate_pu 'Pileup rate vs pu' num_pileup_pu num_reco_pu",
0094     "pileuprate_phi 'Pileup rate vs #phi' num_pileup_phi num_reco_phi",
0095     "pileuprate_dxy 'Pileup rate vs dxy' num_pileup_dxy num_reco_dxy",
0096     "pileuprate_dz 'Pileup rate vs dz' num_pileup_dz num_reco_dz",
0097     "pileuprate_dxypv 'Pileup rate vs dxy(PV)' num_pileup_dxypv num_reco_dxypv",
0098     "pileuprate_dzpv 'Pileup rate vs dz(PV)' num_pileup_dzpv num_reco_dzpv",
0099     "pileuprate_dxypv_zoomed 'Pileup rate vs dxy(PV)' num_pileup_dxypv_zoomed num_reco_dxypv_zoomed",
0100     "pileuprate_dzpv_zoomed 'Pileup rate vs dz(PV)' num_pileup_dzpv_zoomed num_reco_dzpv_zoomed",
0101     "pileuprate_vertpos 'Pileup rate vs vertpos' num_pileup_vertpos num_reco_vertpos",
0102     "pileuprate_zpos 'Pileup rate vs zpos' num_pileup_zpos num_reco_zpos",
0103     "pileuprate_dr 'Pileup rate vs dr' num_pileup_dr num_reco_dr",
0104     "pileuprate_drj 'Pileup rate vs dr (track,jet)' num_pileup_drj num_reco_drj",
0105     "pileuprate_chi2 'Pileup rate vs normalized #chi^{2}' num_pileup_chi2 num_reco_chi2",
0106     "pileuprate_seedingLayerSet 'Pileup rate vs. seedingLayerSet' num_pileup_seedingLayerSet num_reco_seedingLayerSet",
0107     "fakerate 'Fake rate vs #eta' num_assoc(recoToSim)_eta num_reco_eta fake",
0108     "fakeratePt 'Fake rate vs p_{T}' num_assoc(recoToSim)_pT num_reco_pT fake",
0109 #    "fakeratePtvseta 'Fake rate in (p_{T}-#eta) plane' num_assoc(recoToSim)_pTvseta num_reco_pTvseta fake",
0110     "fakerate_vs_hit 'Fake rate vs hit' num_assoc(recoToSim)_hit num_reco_hit fake",
0111     "fakerate_vs_layer 'Fake rate vs layer' num_assoc(recoToSim)_layer num_reco_layer fake",
0112     "fakerate_vs_pixellayer 'Fake rate vs layer' num_assoc(recoToSim)_pixellayer num_reco_pixellayer fake",
0113     "fakerate_vs_3Dlayer 'Fake rate vs 3D layer' num_assoc(recoToSim)_3Dlayer num_reco_3Dlayer fake",
0114     "fakerate_vs_pu 'Fake rate vs pu' num_assoc(recoToSim)_pu num_reco_pu fake",
0115     "fakerate_vs_phi 'Fake rate vs phi' num_assoc(recoToSim)_phi num_reco_phi fake",
0116     "fakerate_vs_dxy 'Fake rate vs dxy' num_assoc(recoToSim)_dxy num_reco_dxy fake",
0117     "fakerate_vs_dz 'Fake rate vs dz' num_assoc(recoToSim)_dz num_reco_dz fake",
0118     "fakerate_vs_dxypv 'Fake rate vs dxypv' num_assoc(recoToSim)_dxypv num_reco_dxypv fake",
0119     "fakerate_vs_dzpv 'Fake rate vs dzpv' num_assoc(recoToSim)_dzpv num_reco_dzpv fake",
0120     "fakerate_vs_dxypv_zoomed 'Fake rate vs dxypv' num_assoc(recoToSim)_dxypv_zoomed num_reco_dxypv_zoomed fake",
0121     "fakerate_vs_dzpv_zoomed 'Fake rate vs dzpv' num_assoc(recoToSim)_dzpv_zoomed num_reco_dzpv_zoomed fake",
0122     "fakerate_vs_vertpos 'Fake rate vs vertpos' num_assoc(recoToSim)_vertpos num_reco_vertpos fake",
0123     "fakerate_vs_zpos 'Fake rate vs vertpos' num_assoc(recoToSim)_zpos num_reco_zpos fake",
0124     "fakerate_vs_dr 'Fake rate vs dr' num_assoc(recoToSim)_dr num_reco_dr fake",
0125     "fakerate_vs_drj 'Fake rate vs dr (track,jet)' num_assoc(recoToSim)_drj num_reco_drj fake",
0126     "fakerate_vs_chi2 'Fake rate vs normalized #chi^{2}' num_assoc(recoToSim)_chi2 num_reco_chi2 fake",
0127     "fakerate_vs_seedingLayerSet 'Fake rate vs. seedingLayerSet' num_assoc(recoToSim)_seedingLayerSet num_reco_seedingLayerSet fake",
0128     "fakerate_vertcount_barrel 'fake rate in barrel vs N of pileup vertices' num_assoc(recoToSim)_vertcount_barrel num_reco_vertcount_barrel fake",
0129     "fakerate_vertcount_fwdpos 'fake rate in endcap(+) vs N of pileup vertices' num_assoc(recoToSim)_vertcount_fwdpos num_reco_vertcount_fwdpos fake",
0130     "fakerate_vertcount_fwdneg 'fake rate in endcap(-) vs N of pileup vertices' num_assoc(recoToSim)_vertcount_fwdneg num_reco_vertcount_fwdneg fake"
0131     "fakerate_ootpu_entire 'fake rate from out of time pileup vs N of pileup vertices' num_assoc(recoToSim)_ootpu_entire num_reco_ootpu_entire",
0132     "fakerate_ootpu_barrel 'fake rate from out of time pileup in barrel vs N of pileup vertices' num_assoc(recoToSim)_ootpu_barrel num_reco_ootpu_barrel",
0133     "fakerate_ootpu_fwdpos 'fake rate from out of time pileup in endcap(+) vs N of pileup vertices' num_assoc(recoToSim)_ootpu_fwdpos num_reco_ootpu_fwdpos",
0134     "fakerate_ootpu_fwdneg 'fake rate from out of time pileup in endcap(-) vs N of pileup vertices' num_assoc(recoToSim)_ootpu_fwdneg num_reco_ootpu_fwdneg",
0135 
0136     "effic_vs_dzpvcut 'Efficiency vs. dz (PV)' num_assoc(simToReco)_dzpvcut num_simul_dzpvcut",
0137     "effic_vs_dzpvcut2 'Efficiency (tracking eff factorized out) vs. dz (PV)' num_assoc(simToReco)_dzpvcut num_simul2_dzpvcut",
0138     "fakerate_vs_dzpvcut 'Fake rate vs. dz(PV)' num_assoc(recoToSim)_dzpvcut num_reco_dzpvcut fake",
0139     "pileuprate_dzpvcut 'Pileup rate vs. dz(PV)' num_pileup_dzpvcut num_reco_dzpvcut",
0140 
0141     "effic_vs_dzpvsigcut 'Efficiency vs. dz(PV)/dzError' num_assoc(simToReco)_dzpvsigcut num_simul_dzpvsigcut",
0142     "effic_vs_dzpvsigcut2 'Efficiency (tracking eff factorized out) vs. dz(PV)/dzError' num_assoc(simToReco)_dzpvsigcut num_simul2_dzpvsigcut",
0143     "fakerate_vs_dzpvsigcut 'Fake rate vs. dz(PV)/dzError' num_assoc(recoToSim)_dzpvsigcut num_reco_dzpvsigcut fake",
0144     "pileuprate_dzpvsigcut 'Pileup rate vs. dz(PV)/dzError' num_pileup_dzpvsigcut num_reco_dzpvsigcut",
0145 
0146     "effic_vs_simpvz 'Efficiency vs. sim PV z' num_assoc(simToReco)_simpvz num_simul_simpvz",
0147     "fakerate_vs_simpvz 'Fake rate vs. sim PV z' num_assoc(recoToSim)_simpvz num_reco_simpvz fake",
0148     "duplicatesRate_simpvz 'Duplicates Rate vs sim PV z' num_duplicate_simpvz num_reco_simpvz",
0149     "pileuprate_simpvz 'Pileup rate vs. sim PV z' num_pileup_simpvz num_reco_simpvz",
0150 
0151     "fakerate_vs_mva1 'Fake rate vs. MVA1' num_assoc(recoToSim)_mva1 num_reco_mva1 fake",
0152     "fakerate_vs_mva2 'Fake rate vs. MVA2' num_assoc(recoToSim)_mva2 num_reco_mva2 fake",
0153     "fakerate_vs_mva3 'Fake rate vs. MVA3' num_assoc(recoToSim)_mva3 num_reco_mva3 fake",
0154 
0155     "effic_vs_mva1cut 'Efficiency (tracking eff factorized out) vs. MVA1' num_assoc(simToReco)_mva1cut num_simul2_mva1cut",
0156     "fakerate_vs_mva1cut 'Fake rate vs. MVA1' num_assoc(recoToSim)_mva1cut num_reco_mva1cut fake",
0157     "effic_vs_mva2cut 'Efficiency (tracking eff factorized out) vs. MVA2' num_assoc(simToReco)_mva2cut num_simul2_mva2cut",
0158     "effic_vs_mva2cut_hp 'Efficiency (tracking eff factorized out) vs. MVA2' num_assoc(simToReco)_mva2cut_hp num_simul2_mva2cut_hp",
0159     "fakerate_vs_mva2cut 'Fake rate vs. MVA2' num_assoc(recoToSim)_mva2cut num_reco_mva2cut fake",
0160     "fakerate_vs_mva2cut_hp 'Fake rate vs. MVA2' num_assoc(recoToSim)_mva2cut_hp num_reco_mva2cut_hp fake",
0161     "effic_vs_mva3cut 'Efficiency (tracking eff factorized out) vs. MVA3' num_assoc(simToReco)_mva3cut num_simul2_mva3cut",
0162     "effic_vs_mva3cut_hp 'Efficiency (tracking eff factorized out) vs. MVA3' num_assoc(simToReco)_mva3cut_hp num_simul2_mva3cut_hp",
0163     "fakerate_vs_mva3cut 'Fake rate vs. MVA3' num_assoc(recoToSim)_mva3cut num_reco_mva3cut fake",
0164     "fakerate_vs_mva3cut_hp 'Fake rate vs. MVA3' num_assoc(recoToSim)_mva3cut_hp num_reco_mva3cut_hp fake",
0165     ),
0166     resolution = cms.vstring(
0167                              "cotThetares_vs_eta '#sigma(cot(#theta)) vs #eta' cotThetares_vs_eta",
0168                              "cotThetares_vs_pt '#sigma(cot(#theta)) vs p_{T}' cotThetares_vs_pt",
0169                              "h_dxypulleta 'd_{xy} Pull vs #eta' dxypull_vs_eta",
0170                              "h_dxypullpt 'd_{xy} Pull vs p_{T}' dxypull_vs_pt",
0171                              "dxyres_vs_eta '#sigma(d_{xy}) vs #eta' dxyres_vs_eta",
0172                              "dxyres_vs_phi '#sigma(d_{xy}) vs #phi' dxyres_vs_phi",
0173                              "dxyres_vs_pt '#sigma(d_{xy}) vs p_{T}' dxyres_vs_pt",
0174                              "h_dzpulleta 'd_{z} Pull vs #eta' dzpull_vs_eta",
0175                              "h_dzpullpt 'd_{z} Pull vs p_{T}' dzpull_vs_pt",
0176                              "dzres_vs_eta '#sigma(d_{z}) vs #eta' dzres_vs_eta",
0177                              "dzres_vs_phi '#sigma(d_{z}) vs #phi' dzres_vs_phi",
0178                              "dzres_vs_pt '#sigma(d_{z}) vs p_{T}' dzres_vs_pt",
0179                              "etares_vs_eta '#sigma(#eta) vs #eta' etares_vs_eta",
0180                              "h_phipulleta '#phi Pull vs #eta' phipull_vs_eta",
0181                              "h_phipullpt '#phi Pull vs p_{T}' phipull_vs_pt",
0182                              "h_phipullphi '#phi Pull vs #phi' phipull_vs_phi",
0183                              "phires_vs_eta '#sigma(#phi) vs #eta' phires_vs_eta",
0184                              "phires_vs_phi '#sigma(#phi) vs #phi' phires_vs_phi",
0185                              "phires_vs_pt '#sigma(#phi) vs p_{T}' phires_vs_pt",
0186                              "h_ptpulleta 'p_{T} Pull vs #eta' ptpull_vs_eta",
0187                              "h_ptpullpt 'p_{T} Pull vs p_{T}' ptpull_vs_pt",
0188                              "h_ptpullphi 'p_{T} Pull vs #phi' ptpull_vs_phi",
0189                              "ptres_vs_eta '#sigma(p_{T}) vs #eta' ptres_vs_eta",
0190                              "ptres_vs_phi '#sigma(p_{T}) vs #phi' ptres_vs_phi",
0191                              "ptres_vs_pt '#sigma(p_{T}) vs p_{T}' ptres_vs_pt",
0192                              "h_thetapulleta '#theta Pull vs #eta' thetapull_vs_eta",
0193                              "h_thetapullpt '#theta Pull vs p_{T}' thetapull_vs_pt",
0194                              "h_thetapullphi '#theta Pull vs #phi' thetapull_vs_phi"
0195                              ),
0196     cumulativeDists = cms.untracked.vstring(
0197         "num_reco_dzpvcut",
0198         "num_assoc(recoToSim)_dzpvcut",
0199         "num_assoc(simToReco)_dzpvcut",
0200         "num_simul_dzpvcut",
0201         "num_simul2_dzpvcut",
0202         "num_pileup_dzpvcut",
0203         "num_reco_dzpvsigcut",
0204         "num_assoc(recoToSim)_dzpvsigcut",
0205         "num_assoc(simToReco)_dzpvsigcut",
0206         "num_simul_dzpvsigcut",
0207         "num_simul2_dzpvsigcut",
0208         "num_pileup_dzpvsigcut",
0209         "num_reco_mva1cut descending",
0210         "num_reco_mva2cut descending",
0211         "num_reco_mva2cut_hp descending",
0212         "num_reco_mva3cut descending",
0213         "num_reco_mva3cut_hp descending",
0214         "num_assoc(recoToSim)_mva1cut descending",
0215         "num_assoc(recoToSim)_mva2cut descending",
0216         "num_assoc(recoToSim)_mva2cut_hp descending",
0217         "num_assoc(recoToSim)_mva3cut descending",
0218         "num_assoc(recoToSim)_mva3cut_hp descending",
0219         "num_assoc(simToReco)_mva1cut descending",
0220         "num_assoc(simToReco)_mva2cut descending",
0221         "num_assoc(simToReco)_mva2cut_hp descending",
0222         "num_assoc(simToReco)_mva3cut descending",
0223         "num_assoc(simToReco)_mva3cut_hp descending",
0224         "num_simul2_mva1cut descending",
0225         "num_simul2_mva2cut descending",
0226         "num_simul2_mva2cut_hp descending",
0227         "num_simul2_mva3cut descending",
0228         "num_simul2_mva3cut_hp descending",
0229     ),
0230     noFlowDists = cms.untracked.vstring(),
0231     outputFileName = cms.untracked.string("")
0232 )
0233 
0234 _addNoFlow(postProcessorTrack)
0235 
0236 postProcessorTrack2D = DQMEDHarvester("DQMGenericClient",
0237     makeGlobalEffienciesPlot = cms.untracked.bool(False),
0238     subDirs = cms.untracked.vstring(_defaultSubdirs),
0239     efficiency = cms.vstring(
0240     "efficPtvseta 'Efficiency in p_{T}-#eta plane' num_assoc(simToReco)_pTvseta num_simul_pTvseta",
0241     "duplicatesRate_Ptvseta 'Duplicates Rate in (p_{T}-#eta) plane' num_duplicate_pTvseta num_reco_pTvseta",
0242     "chargeMisIdRate_Ptvseta 'Charge MisID Rate in (p_{T}-#eta) plane' num_chargemisid_pTvseta num_reco_pTvseta",
0243     "pileuprate_Ptvseta 'Pileup rate in (p_{T}-#eta) plane' num_pileup_pTvseta num_reco_pTvseta",
0244     "fakeratePtvseta 'Fake rate in (p_{T}-#eta) plane' num_assoc(recoToSim)_pTvseta num_reco_pTvseta fake",
0245     ),
0246     resolution = cms.vstring(),
0247     noFlowDists = cms.untracked.vstring(),
0248     outputFileName = cms.untracked.string("")
0249 )
0250 
0251 _addNoFlow(postProcessorTrack2D)
0252 
0253 # nrec/nsim makes sense only for
0254 # - all tracks vs. all in-time TrackingParticles
0255 # - PV tracks vs. signal TrackingParticles
0256 postProcessorTrackNrecVsNsim = DQMEDHarvester("DQMGenericClient",
0257     subDirs = cms.untracked.vstring("Tracking/TrackFromPV/*", "Tracking/TrackAllTPEffic/*"),
0258     efficiency = cms.vstring(
0259         "nrecPerNsim 'Tracks/TrackingParticles vs #eta' num_reco2_eta num_simul_eta simpleratio",
0260         "nrecPerNsimPt 'Tracks/TrackingParticles vs p_{T}' num_reco2_pT num_simul_pT simpleratio",
0261 #        "nrecPerNsimPtvseta 'Tracks/TrackingParticles in (p_{T}-#eta) plane' num_reco2_pTvseta num_simul_pTvseta simpleratio",
0262         "nrecPerNsim_vs_pu 'Tracks/TrackingParticles vs pu' num_reco2_pu num_simul_pu simpleratio",
0263     ),
0264     resolution = cms.vstring(),
0265     noFlowDists = cms.untracked.vstring(),
0266 )
0267 _addNoFlow(postProcessorTrackNrecVsNsim)
0268 postProcessorTrackNrecVsNsim2D = DQMEDHarvester("DQMGenericClient",
0269     makeGlobalEffienciesPlot = cms.untracked.bool(False),
0270     subDirs = cms.untracked.vstring("Tracking/TrackFromPV/*", "Tracking/TrackAllTPEffic/*"),
0271     efficiency = cms.vstring(
0272         "nrecPerNsimPtvseta 'Tracks/TrackingParticles in (p_{T}-#eta) plane' num_reco2_pTvseta num_simul_pTvseta simpleratio",
0273     ),
0274     resolution = cms.vstring(),
0275     noFlowDists = cms.untracked.vstring(),
0276 )
0277 _addNoFlow(postProcessorTrackNrecVsNsim2D)
0278 
0279 
0280 postProcessorTrackSummary = DQMEDHarvester("DQMGenericClient",
0281     subDirs = cms.untracked.vstring(_defaultSubdirsSummary),
0282     efficiency = cms.vstring(
0283     "effic_vs_coll 'Efficiency vs track collection' num_assoc(simToReco)_coll num_simul_coll",
0284     "effic_vs_coll_allPt 'Efficiency vs track collection' num_assoc(simToReco)_coll_allPt num_simul_coll_allPt",
0285     "duplicatesRate_coll 'Duplicates Rate vs track collection' num_duplicate_coll num_reco_coll",
0286     "pileuprate_coll 'Pileup rate vs track collection' num_pileup_coll num_reco_coll",
0287     "fakerate_vs_coll 'Fake rate vs track collection' num_assoc(recoToSim)_coll num_reco_coll fake",
0288     ),
0289     resolution = cms.vstring(),
0290     noFlowDists = cms.untracked.vstring(),
0291 )
0292 _addNoFlow(postProcessorTrackSummary)
0293 
0294 postProcessorTrackSequence = cms.Sequence(
0295     postProcessorTrack+
0296     postProcessorTrackNrecVsNsim+
0297     postProcessorTrackSummary
0298 )
0299 
0300 from Configuration.ProcessModifiers.seedingDeepCore_cff import seedingDeepCore
0301 postProcessorTrackDeepCore = postProcessorTrack.clone()
0302 postProcessorTrackDeepCore.subDirs.extend(["Tracking/JetCore/*"])
0303 seedingDeepCore.toReplaceWith(postProcessorTrack,postProcessorTrackDeepCore)
0304 postProcessorTrackSummaryDeepCore = postProcessorTrackSummary.clone()
0305 postProcessorTrackSummaryDeepCore.subDirs.extend(["Tracking/JetCore/*"])
0306 seedingDeepCore.toReplaceWith(postProcessorTrackSummary,postProcessorTrackSummaryDeepCore)
0307 postProcessorTrack2DDeepCore = postProcessorTrack2D.clone()
0308 postProcessorTrack2DDeepCore.subDirs.extend(["Tracking/JetCore/*"])
0309 seedingDeepCore.toReplaceWith(postProcessorTrack2D,postProcessorTrack2DDeepCore)
0310 
0311 
0312 fastSim.toModify(postProcessorTrack, subDirs = [e for e in _defaultSubdirs if e not in ["Tracking/TrackGsf/*","Tracking/TrackConversion/*"]])
0313 fastSim.toModify(postProcessorTrackSummary, subDirs = [e for e in _defaultSubdirsSummary if e not in ["Tracking/TrackGsf","Tracking/TrackConversion"]])
0314 
0315 #######
0316 # Define a standalone seuquence to support the Standalone harvesting mode
0317 # see https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideMultiTrackValidator#cmsDriver_MTV_alone_i_e_standalone for more information
0318 ########
0319 
0320 postProcessorTrackStandalone = postProcessorTrack.clone(
0321     subDirs = _defaultSubdirs+["Tracking/TrackBHadron/*"]
0322 )
0323 postProcessorTrackSummaryStandalone = postProcessorTrackSummary.clone(
0324     subDirs = _defaultSubdirs+["Tracking/TrackBHadron"]
0325 )
0326 
0327 postProcessorTrackSequenceStandalone = cms.Sequence(
0328     postProcessorTrackStandalone+
0329     postProcessorTrackNrecVsNsim+
0330     postProcessorTrackSummaryStandalone
0331 )
0332 
0333 
0334 
0335 postProcessorTrackPhase2 = postProcessorTrack.clone()
0336 postProcessorTrackPhase2.subDirs.extend(["Tracking/TrackTPEtaGreater2p7/*"])
0337 postProcessorTrackSummaryPhase2 = postProcessorTrackSummary.clone()
0338 postProcessorTrackSummaryPhase2.subDirs.extend(["Tracking/TrackTPEtaGreater2p7/*"])
0339 
0340 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0341 phase2_tracker.toReplaceWith(postProcessorTrack,postProcessorTrackPhase2)
0342 phase2_tracker.toReplaceWith(postProcessorTrackSummary,postProcessorTrackSummaryPhase2)
0343 
0344 from Configuration.ProcessModifiers.displacedTrackValidation_cff import displacedTrackValidation
0345 postProcessorTrackDisplaced = postProcessorTrack.clone()
0346 postProcessorTrackDisplaced.subDirs.extend(["Tracking/TrackDisplaced/*"])
0347 postProcessorTrackSummaryDisplaced = postProcessorTrackSummary.clone()
0348 postProcessorTrackSummaryDisplaced.subDirs.extend(["Tracking/TrackDisplaced/*"])
0349 displacedTrackValidation.toReplaceWith(postProcessorTrack,postProcessorTrackDisplaced)
0350 displacedTrackValidation.toReplaceWith(postProcessorTrackSummary,postProcessorTrackSummaryDisplaced)
0351 
0352 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0353 
0354 _defaultSubdirsHIon =  _defaultSubdirs + ["Tracking/HIPixelTrack/*"]
0355 
0356 (pp_on_AA & ~phase2_tracker).toModify(postProcessorTrack,subDirs = _defaultSubdirsHIon)
0357 (pp_on_AA & ~phase2_tracker).toModify(postProcessorTrack2D,subDirs = _defaultSubdirsHIon)
0358 (pp_on_AA & ~phase2_tracker).toModify(postProcessorTrackSummary,subDirs = _defaultSubdirsHIon)
0359 
0360 
0361 postProcessorTrackTrackingOnly = postProcessorTrack.clone()
0362 postProcessorTrackTrackingOnly.subDirs.extend(["Tracking/TrackBHadron/*", "Tracking/TrackSeeding/*", "Tracking/PixelTrack/*", "Tracking/PixelTrackFromPV/*", "Tracking/PixelTrackFromPVAllTP/*", "Tracking/PixelTrackBHadron/*"])
0363 postProcessorTrackSummaryTrackingOnly = postProcessorTrackSummary.clone()
0364 postProcessorTrackSummaryTrackingOnly.subDirs.extend(["Tracking/TrackBHadron", "Tracking/TrackSeeding", "Tracking/PixelTrack", "Tracking/PixelTrackFromPV", "Tracking/PixelTrackFromPVAllTP", "Tracking/PixelTrackBHadron"])
0365 
0366 postProcessorTrackTrackingOnlyHIon = postProcessorTrackTrackingOnly.clone()
0367 postProcessorTrackTrackingOnlyHIon.subDirs.extend(["Tracking/HIPixelTrack/*"])
0368 
0369 postProcessorTrackSummaryTrackingOnlyHIon = postProcessorTrackSummaryTrackingOnly.clone()
0370 postProcessorTrackSummaryTrackingOnlyHIon.subDirs.extend(["Tracking/HIPixelTrack"])
0371 
0372 (pp_on_AA & ~phase2_tracker).toReplaceWith(postProcessorTrackTrackingOnly,postProcessorTrackTrackingOnlyHIon)
0373 (pp_on_AA & ~phase2_tracker).toReplaceWith(postProcessorTrackSummaryTrackingOnly,postProcessorTrackSummaryTrackingOnlyHIon)
0374 
0375 postProcessorTrackSequenceTrackingOnly = cms.Sequence(
0376     postProcessorTrackTrackingOnly+
0377     postProcessorTrackNrecVsNsim+
0378     postProcessorTrackSummaryTrackingOnly
0379 )
0380 
0381 fastSim.toModify(postProcessorTrackTrackingOnly,subDirs = [e for e in _defaultSubdirs if e not in ["Tracking/TrackGsf/*","Tracking/TrackConversion/*","Tracking/TrackBHadron/*"]])
0382 fastSim.toModify(postProcessorTrackSummaryTrackingOnly,subDirs = [e for e in _defaultSubdirsSummary if e not in ["Tracking/TrackGsf","Tracking/TrackConversion","Tracking/TrackBHadron"]])