Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:15

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("TagProbe")
0004 process.source = cms.Source("EmptySource")
0005 process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1) )
0006 
0007 process.load("FWCore.MessageService.MessageLogger_cfi")
0008 process.MessageLogger.cerr.FwkReport.reportEvery = 1000
0009 
0010 
0011 ##                      _              _       
0012 ##   ___ ___  _ __  ___| |_ __ _ _ __ | |_ ___ 
0013 ##  / __/ _ \| '_ \/ __| __/ _` | '_ \| __/ __|
0014 ## | (_| (_) | | | \__ \ || (_| | | | | |_\__ \
0015 ##  \___\___/|_| |_|___/\__\__,_|_| |_|\__|___/
0016 ##                                              
0017 ################################################
0018 
0019 
0020 isMC = True
0021 InputFileName = "testNewWrite.root"
0022 OutputFilePrefix = "efficiency-data-"
0023 
0024 
0025 
0026 ################################################
0027 HLTDef = "probe_passingHLT"
0028 PDFName = "pdfSignalPlusBackground"
0029 
0030 if isMC:
0031     PDFName = ""
0032     OutputFilePrefix = "efficiency-mc-"
0033 ################################################
0034 
0035 #specifies the binning of parameters
0036 EfficiencyBins = cms.PSet(
0037     probe_sc_et = cms.vdouble( 25, 30, 35, 40, 45, 50, 200 ),
0038     probe_sc_eta = cms.vdouble( -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5 )
0039 )
0040 ## for super clusters
0041 EfficiencyBinsSC = cms.PSet(
0042     probe_et = cms.vdouble( 25, 30, 35, 40, 45, 50, 200 ),
0043     probe_eta = cms.vdouble( -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5 )
0044 )
0045 
0046 #### For data: except for HLT step
0047 EfficiencyBinningSpecification = cms.PSet(
0048     #specifies what unbinned variables to include in the dataset, the mass is needed for the fit
0049     UnbinnedVariables = cms.vstring("mass"),
0050     #specifies the binning of parameters
0051     BinnedVariables = cms.PSet(EfficiencyBins),
0052     #first string is the default followed by binRegExp - PDFname pairs
0053     BinToPDFmap = cms.vstring(PDFName)
0054 )
0055 
0056 
0057 #### For super clusters
0058 EfficiencyBinningSpecificationSC = cms.PSet(
0059     UnbinnedVariables = cms.vstring("mass"),
0060     BinnedVariables = cms.PSet(EfficiencyBinsSC),
0061     BinToPDFmap = cms.vstring(PDFName)
0062 )
0063 EfficiencyBinningSpecificationSCMC = cms.PSet(
0064     UnbinnedVariables = cms.vstring("mass"),
0065     BinnedVariables = cms.PSet(EfficiencyBinsSC,mcTrue = cms.vstring("true")),
0066     BinToPDFmap = cms.vstring()  
0067 )
0068 
0069 
0070 #### For MC truth: do truth matching
0071 EfficiencyBinningSpecificationMC = cms.PSet(
0072     UnbinnedVariables = cms.vstring("mass"),
0073     BinnedVariables = cms.PSet(
0074     probe_et = cms.vdouble( 25, 30, 35, 40, 45, 50, 200 ),
0075     probe_eta = cms.vdouble( -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5 ),
0076     mcTrue = cms.vstring("true")
0077     ),
0078     BinToPDFmap = cms.vstring()  
0079 )
0080 
0081 #### For HLT step: just do cut & count
0082 EfficiencyBinningSpecificationHLT = cms.PSet(
0083     UnbinnedVariables = cms.vstring("mass"),
0084     BinnedVariables = cms.PSet(EfficiencyBins),
0085     BinToPDFmap = cms.vstring()  
0086 )
0087 
0088 ##########################################################################################
0089 ############################################################################################
0090 if isMC:
0091     mcTruthModules = cms.PSet(
0092 ##         MCtruth_WP95 = cms.PSet(
0093 ##         EfficiencyBinningSpecificationMC,
0094 ##         EfficiencyCategoryAndState = cms.vstring("probe_isWP95","pass"),
0095 ##         ),
0096         MCtruth_WP90 = cms.PSet(
0097         EfficiencyBinningSpecificationMC,
0098         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isWP90","pass"),
0099         ),
0100         MCtruth_WP85 = cms.PSet(
0101         EfficiencyBinningSpecificationMC,    
0102         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isWP85","pass"),
0103         ),
0104         MCtruth_WP80 = cms.PSet(
0105         EfficiencyBinningSpecificationMC,   
0106         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isWP80","pass"),
0107         ),
0108 ##         MCtruth_WP70 = cms.PSet(
0109 ##         EfficiencyBinningSpecificationMC,    
0110 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isWP70","pass"),
0111 ##         ),      
0112 ##         MCtruth_WP60 = cms.PSet(
0113 ##         EfficiencyBinningSpecificationMC,      
0114 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isWP60","pass"),
0115 ##         ),
0116 ##         MCtruth_CicVeryLoose = cms.PSet(
0117 ##         EfficiencyBinningSpecificationMC,     
0118 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicVeryLoose","pass"),
0119 ##         ),
0120         MCtruth_CicLoose = cms.PSet(
0121         EfficiencyBinningSpecificationMC,    
0122         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicLoose","pass"),
0123         ),
0124 ##         MCtruth_CicMedium = cms.PSet(
0125 ##         EfficiencyBinningSpecificationMC,    
0126 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicMedium","pass"),
0127 ##         ),
0128         MCtruth_CicTight = cms.PSet(
0129         EfficiencyBinningSpecificationMC,
0130         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicTight","pass"),
0131         ),
0132         MCtruth_CicSuperTight = cms.PSet(
0133         EfficiencyBinningSpecificationMC,    
0134         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicSuperTight","pass"),
0135         ),        
0136         MCtruth_CicHyperTight1 = cms.PSet(
0137         EfficiencyBinningSpecificationMC,    
0138         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicHyperTight1","pass"),
0139         ),
0140 ##         MCtruth_CicHyperTight2 = cms.PSet(
0141 ##         EfficiencyBinningSpecificationMC,    
0142 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicHyperTight2","pass"),
0143 ##         ),
0144 ##         MCtruth_CicHyperTight3 = cms.PSet(
0145 ##         EfficiencyBinningSpecificationMC,    
0146 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicHyperTight3","pass"),
0147 ##         ),
0148 ##         MCtruth_CicHyperTight4 = cms.PSet(
0149 ##         EfficiencyBinningSpecificationMC, 
0150 ##         EfficiencyCategoryAndState = cms.vstring("probe_passConvRej","pass","probe_isCicHyperTight4","pass"),
0151 ##         ),
0152         )
0153 else:
0154     mcTruthModules = cms.PSet()
0155 ##########################################################################################
0156 ##########################################################################################
0157 
0158 
0159         
0160 
0161 ############################################################################################
0162 ############################################################################################
0163 ####### GsfElectron->Id / selection efficiency 
0164 ############################################################################################
0165 ############################################################################################
0166 
0167 process.GsfElectronToId = cms.EDAnalyzer("TagProbeFitTreeAnalyzer",
0168     # IO parameters:
0169     InputFileNames = cms.vstring(InputFileName),
0170     InputDirectoryName = cms.string("GsfElectronToId"),
0171     InputTreeName = cms.string("fitter_tree"),
0172     OutputFileName = cms.string(OutputFilePrefix+"GsfElectronToId.root"),
0173     #numbrer of CPUs to use for fitting
0174     NumCPU = cms.uint32(1),
0175     # specifies wether to save the RooWorkspace containing the data for each bin and
0176     # the pdf object with the initial and final state snapshots
0177     SaveWorkspace = cms.bool(True),
0178     floatShapeParameters = cms.bool(True),
0179     #fixVars = cms.vstring("mean"),
0180                                                  
0181     # defines all the real variables of the probes available in the input tree and intended for use in the efficiencies
0182     Variables = cms.PSet(
0183         mass = cms.vstring("Tag-Probe Mass", "60.0", "120.0", "GeV/c^{2}"),
0184         probe_sc_et = cms.vstring("Probe E_{T}", "0", "1000", "GeV/c"),
0185         probe_sc_eta = cms.vstring("Probe #eta", "-2.5", "2.5", ""),                
0186     ),
0187 
0188     # defines all the discrete variables of the probes available in the input tree and intended for use in the efficiency calculations
0189     Categories = cms.PSet(
0190         weight = cms.vstring("weight", "0.0", "10.0", ""),
0191         mcTrue = cms.vstring("MC true", "dummy[true=1,false=0]"),
0192         probe_passConvRej = cms.vstring("probe_passConvRej", "dummy[pass=1,fail=0]"), 
0193 ##         probe_isWP95 = cms.vstring("probe_isWP95", "dummy[pass=1,fail=0]"),
0194         probe_isWP90 = cms.vstring("probe_isWP90", "dummy[pass=1,fail=0]"),
0195         probe_isWP85 = cms.vstring("probe_isWP85", "dummy[pass=1,fail=0]"),
0196         probe_isWP80 = cms.vstring("probe_isWP80", "dummy[pass=1,fail=0]"),
0197 ##         probe_isWP70 = cms.vstring("probe_isWP70", "dummy[pass=1,fail=0]"),
0198 ##         probe_isWP60 = cms.vstring("probe_isWP60", "dummy[pass=1,fail=0]"),
0199 ##         probe_isCicVeryLoose = cms.vstring("probe_isCicVeryLoose", "dummy[pass=1,fail=0]"),
0200         probe_isCicLoose = cms.vstring("probe_isCicLoose", "dummy[pass=1,fail=0]"),
0201 ##         probe_isCicMedium = cms.vstring("probe_isCicMedium", "dummy[pass=1,fail=0]"),
0202         probe_isCicTight = cms.vstring("probe_isCicTight", "dummy[pass=1,fail=0]"),
0203         probe_isCicSuperTight = cms.vstring("probe_isCicSuperTight", "dummy[pass=1,fail=0]"),
0204         probe_isCicHyperTight1 = cms.vstring("probe_isCicHyperTight1", "dummy[pass=1,fail=0]"),
0205 ##         probe_isCicHyperTight2 = cms.vstring("probe_isCicHyperTight2", "dummy[pass=1,fail=0]"),
0206 ##         probe_isCicHyperTight3 = cms.vstring("probe_isCicHyperTight3", "dummy[pass=1,fail=0]"),
0207 ##         probe_isCicHyperTight4 = cms.vstring("probe_isCicHyperTight4", "dummy[pass=1,fail=0]"),         
0208     ),
0209     # defines all the PDFs that will be available for the efficiency calculations; uses RooFit's "factory" syntax;
0210     # each pdf needs to define "signal", "backgroundPass", "backgroundFail" pdfs, "efficiency[0.9,0,1]" and "signalFractionInPassing[0.9]" are used for initial values  
0211     PDFs = cms.PSet(
0212         pdfSignalPlusBackground = cms.vstring(
0213 ##     "CBExGaussShape::signalRes(mass, mean[2.0946e-01], sigma[8.5695e-04],alpha[3.8296e-04], n[6.7489e+00], sigma_2[2.5849e+00], frac[6.5704e-01])",  ### the signal function goes here
0214      "CBExGaussShape::signalResPass(mass, meanP[0.], sigmaP[8.5695e-04, 0., 3.],alphaP[3.8296e-04], nP[6.7489e+00], sigmaP_2[2.5849e+00], fracP[6.5704e-01])",  ### signal resolution for "pass" sample
0215      "CBExGaussShape::signalResFail(mass, meanF[2.0946e-01, -5., 5.], sigmaF[8.5695e-04, 0., 5.],alphaF[3.8296e-04], nF[6.7489e+00], sigmaF_2[2.5849e+00], fracF[6.5704e-01])",  ### signal resolution for "fail" sample     
0216     "ZGeneratorLineShape::signalPhy(mass)", ### NLO line shape
0217     "RooCMSShape::backgroundPass(mass, alphaPass[60.,50.,70.], betaPass[0.001, 0.,0.1], betaPass, peakPass[90.0])",
0218     "RooCMSShape::backgroundFail(mass, alphaFail[60.,50.,70.], betaFail[0.001, 0.,0.1], betaFail, peakFail[90.0])",
0219     "FCONV::signalPass(mass, signalPhy, signalResPass)",
0220     "FCONV::signalFail(mass, signalPhy, signalResFail)",     
0221     "efficiency[0.9,0,1]",
0222     "signalFractionInPassing[1.0]"     
0223     #"Gaussian::signal(mass, mean[91.2, 89.0, 93.0], sigma[2.3, 0.5, 10.0])",
0224     #"RooExponential::backgroundPass(mass, cPass[-0.02,-5,0])",
0225     #"RooExponential::backgroundFail(mass, cFail[-0.02,-5,0])",
0226     #"efficiency[0.9,0,1]",
0227     #"signalFractionInPassing[0.9]"
0228         ),
0229     ),
0230 
0231     # defines a set of efficiency calculations, what PDF to use for fitting and how to bin the data;
0232     # there will be a separate output directory for each calculation that includes a simultaneous fit, side band subtraction and counting. 
0233     Efficiencies = cms.PSet(
0234     mcTruthModules,
0235 ##     #the name of the parameter set becomes the name of the directory
0236 ##     WP95 = cms.PSet(
0237 ##     EfficiencyBinningSpecification,
0238 ##     #specifies the efficiency of which category and state to measure 
0239 ##     EfficiencyCategoryAndState = cms.vstring("probe_isWP95","pass"),
0240 ##     ),
0241     WP90 = cms.PSet(
0242     EfficiencyBinningSpecification,
0243     EfficiencyCategoryAndState = cms.vstring("probe_isWP90","pass"),
0244     ),
0245     WP85 = cms.PSet(
0246     EfficiencyBinningSpecification,    
0247     EfficiencyCategoryAndState = cms.vstring("probe_isWP85","pass"),
0248     ),
0249     WP80 = cms.PSet(
0250     EfficiencyBinningSpecification,   
0251     EfficiencyCategoryAndState = cms.vstring("probe_isWP80","pass"),
0252     ),
0253 ##     WP70 = cms.PSet(
0254 ##     EfficiencyBinningSpecification,    
0255 ##     EfficiencyCategoryAndState = cms.vstring("probe_isWP70","pass"),
0256 ##     ),      
0257 ##     WP60 = cms.PSet(
0258 ##     EfficiencyBinningSpecification,      
0259 ##     EfficiencyCategoryAndState = cms.vstring("probe_isWP60","pass"),
0260 ##     ),
0261 ##     CicVeryLoose = cms.PSet(
0262 ##     EfficiencyBinningSpecification,     
0263 ##     EfficiencyCategoryAndState = cms.vstring("probe_isCicVeryLoose","pass"),
0264 ##     ),
0265     CicLoose = cms.PSet(
0266     EfficiencyBinningSpecification,    
0267     EfficiencyCategoryAndState = cms.vstring("probe_isCicLoose","pass"),
0268     ),
0269 ##     CicMedium = cms.PSet(
0270 ##     EfficiencyBinningSpecification,    
0271 ##     EfficiencyCategoryAndState = cms.vstring("probe_isCicMedium","pass"),
0272 ##     ),
0273     CicTight = cms.PSet(
0274     EfficiencyBinningSpecification,
0275     EfficiencyCategoryAndState = cms.vstring("probe_isCicTight","pass"),
0276     ),
0277     CicSuperTight = cms.PSet(
0278     EfficiencyBinningSpecification,    
0279     EfficiencyCategoryAndState = cms.vstring("probe_isCicSuperTight","pass"),
0280     ),        
0281     CicHyperTight1 = cms.PSet(
0282     EfficiencyBinningSpecification,    
0283     EfficiencyCategoryAndState = cms.vstring("probe_isCicHyperTight1","pass"),
0284     ),
0285 ##     CicHyperTight2 = cms.PSet(
0286 ##     EfficiencyBinningSpecification,    
0287 ##     EfficiencyCategoryAndState = cms.vstring("probe_isCicHyperTight2","pass"),
0288 ##     ),
0289 ##     CicHyperTight3 = cms.PSet(
0290 ##     EfficiencyBinningSpecification,    
0291 ##     EfficiencyCategoryAndState = cms.vstring("probe_isCicHyperTight3","pass"),
0292 ##     ),
0293 ##     CicHyperTight4 = cms.PSet(
0294 ##     EfficiencyBinningSpecification, 
0295 ##     EfficiencyCategoryAndState = cms.vstring("probe_isCicHyperTight4","pass"),
0296 ##     ),  
0297 ############################################################################################
0298 ############################################################################################
0299     )
0300 )
0301 if isMC:
0302     process.GsfElectronToId.WeightVariable = cms.string("PUweight")
0303 
0304 
0305 ############################################################################################
0306 ############################################################################################
0307 ####### SC->GsfElectron efficiency 
0308 ############################################################################################
0309 ############################################################################################
0310 if isMC:
0311     SCmcTruthModules = cms.PSet(
0312         MCtruth_efficiency = cms.PSet(
0313         EfficiencyBinningSpecificationSCMC,
0314         EfficiencyCategoryAndState = cms.vstring( "probe_passingGsf", "pass" ),
0315         ),
0316     )
0317 else:
0318     SCmcTruthModules = cms.PSet()    
0319 
0320 
0321 process.SCToGsfElectron = process.GsfElectronToId.clone()
0322 process.SCToGsfElectron.InputDirectoryName = cms.string("SuperClusterToGsfElectron")
0323 process.SCToGsfElectron.OutputFileName = cms.string(OutputFilePrefix+"SCToGsfElectron.root")
0324 process.SCToGsfElectron.Variables = cms.PSet(
0325         mass = cms.vstring("Tag-Probe Mass", "60.0", "120.0", "GeV/c^{2}"),
0326         probe_et = cms.vstring("Probe E_{T}", "0", "1000", "GeV/c"),
0327         probe_eta = cms.vstring("Probe #eta", "-2.5", "2.5", ""),                
0328     )
0329 process.SCToGsfElectron.Categories = cms.PSet(
0330     mcTrue = cms.vstring("MC true", "dummy[true=1,false=0]"),           
0331     probe_passingGsf = cms.vstring("probe_passingGsf", "dummy[pass=1,fail=0]"),                        
0332     )
0333 process.SCToGsfElectron.Efficiencies = cms.PSet(
0334     SCmcTruthModules,
0335     efficiency = cms.PSet(
0336     EfficiencyBinningSpecificationSC,
0337     EfficiencyCategoryAndState = cms.vstring( "probe_passingGsf", "pass" ),
0338     ),
0339 )
0340 
0341 ############################################################################################
0342 ############################################################################################
0343 ####### HLT efficiency 
0344 ############################################################################################
0345 ############################################################################################
0346 
0347 
0348 if isMC:
0349     HLTmcTruthModules = cms.PSet(
0350         MCtruth_efficiency = cms.PSet(
0351         EfficiencyBinningSpecificationMC,
0352         EfficiencyCategoryAndState = cms.vstring( HLTDef, "pass" ),
0353         ),    
0354     )
0355 else:
0356     HLTmcTruthModules = cms.PSet()
0357 
0358 
0359 EfficienciesPset = cms.PSet(
0360     HLTmcTruthModules,
0361     efficiency = cms.PSet(
0362     EfficiencyBinningSpecificationHLT,
0363     EfficiencyCategoryAndState = cms.vstring( HLTDef, "pass" ),
0364     ),
0365 )
0366 
0367 ########
0368 process.WP95ToHLT = process.GsfElectronToId.clone()
0369 process.WP95ToHLT.InputDirectoryName = cms.string("WP95ToHLT")
0370 process.WP95ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP95ToHLT.root")
0371 process.WP95ToHLT.Categories = cms.PSet(
0372     mcTrue = cms.vstring("MC true", "dummy[true=1,false=0]"),           
0373     probe_passingHLT = cms.vstring("probe_passingHLT", "dummy[pass=1,fail=0]"), 
0374     )
0375 process.WP95ToHLT.Efficiencies = EfficienciesPset
0376 process.WP95ToHLT.Efficiencies.efficiency.BinToPDFmap = cms.vstring()
0377 ########  
0378 process.WP90ToHLT = process.WP95ToHLT.clone()
0379 process.WP90ToHLT.InputDirectoryName = cms.string("WP90ToHLT")
0380 process.WP90ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP90ToHLT.root")
0381 ########  
0382 process.WP85ToHLT = process.WP95ToHLT.clone()
0383 process.WP85ToHLT.InputDirectoryName = cms.string("WP85ToHLT")
0384 process.WP85ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP85ToHLT.root")
0385 ########  
0386 process.WP80ToHLT = process.WP95ToHLT.clone()
0387 process.WP80ToHLT.InputDirectoryName = cms.string("WP80ToHLT")
0388 process.WP80ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP80ToHLT.root")
0389 ########  
0390 process.WP70ToHLT = process.WP95ToHLT.clone()
0391 process.WP70ToHLT.InputDirectoryName = cms.string("WP70ToHLT")
0392 process.WP70ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP70ToHLT.root")
0393 ########  
0394 process.WP60ToHLT = process.WP95ToHLT.clone()
0395 process.WP60ToHLT.InputDirectoryName = cms.string("WP60ToHLT")
0396 process.WP60ToHLT.OutputFileName = cms.string(OutputFilePrefix+"WP60ToHLT.root")
0397 ########  
0398 process.CicVeryLooseToHLT = process.WP95ToHLT.clone()
0399 process.CicVeryLooseToHLT.InputDirectoryName = cms.string("CicVeryLooseToHLT")
0400 process.CicVeryLooseToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicVeryLooseToHLT.root")
0401 ########  
0402 process.CicLooseToHLT = process.WP95ToHLT.clone()
0403 process.CicLooseToHLT.InputDirectoryName = cms.string("CicLooseToHLT")
0404 process.CicLooseToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicLooseToHLT.root")
0405 ########  
0406 process.CicMediumToHLT = process.WP95ToHLT.clone()
0407 process.CicMediumToHLT.InputDirectoryName = cms.string("CicMediumToHLT")
0408 process.CicMediumToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicMediumToHLT.root")
0409 ########  
0410 process.CicTightToHLT = process.WP95ToHLT.clone()
0411 process.CicTightToHLT.InputDirectoryName = cms.string("CicTightToHLT")
0412 process.CicTightToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicTightToHLT.root")
0413 ########  
0414 process.CicSuperTightToHLT = process.WP95ToHLT.clone()
0415 process.CicSuperTightToHLT.InputDirectoryName = cms.string("")
0416 process.CicSuperTightToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicSuperTightToHLT.root")
0417 ########  
0418 process.CicHyperTight1ToHLT = process.WP95ToHLT.clone()
0419 process.CicHyperTight1ToHLT.InputDirectoryName = cms.string("CicHyperTight1ToHLT")
0420 process.CicHyperTight1ToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicHyperTight1ToHLT.root")
0421 ########  
0422 process.CicHyperTight2ToHLT = process.WP95ToHLT.clone()
0423 process.CicHyperTight2ToHLT.InputDirectoryName = cms.string("CicHyperTight2ToHLT")
0424 process.CicHyperTight2ToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicHyperTight2ToHLT.root")
0425 ########  
0426 process.CicHyperTight3ToHLT = process.WP95ToHLT.clone()
0427 process.CicHyperTight3ToHLT.InputDirectoryName = cms.string("")
0428 process.CicHyperTight3ToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicHyperTight3ToHLT.root")
0429 ########  
0430 process.CicHyperTight4ToHLT = process.WP95ToHLT.clone()
0431 process.CicHyperTight4ToHLT.InputDirectoryName = cms.string("")
0432 process.CicHyperTight4ToHLT.OutputFileName = cms.string(OutputFilePrefix+"CicHyperTight4ToHLT.root")
0433 ########
0434 
0435 process.fit = cms.Path(
0436     process.GsfElectronToId  +
0437     process.SCToGsfElectron + 
0438 ##     process.WP95ToHLT +
0439     process.WP90ToHLT +
0440     process.WP85ToHLT + 
0441     process.WP80ToHLT +
0442 ##     process.WP70ToHLT + 
0443 ##     process.WP60ToHLT +
0444 ##     process.CicVeryLooseToHLT +
0445     process.CicLooseToHLT +
0446 ##     process.CicMediumToHLT +
0447     process.CicTightToHLT +
0448     process.CicSuperTightToHLT +
0449     process.CicHyperTight1ToHLT ##+
0450 ##     process.CicHyperTight2ToHLT +
0451 ##     process.CicHyperTight3ToHLT +
0452 ##     process.CicHyperTight4ToHLT   
0453     )