def options() : options = VP('standard') options.output = "topTuple.root" options.maxEvents = 100 options.register('isData', default = True, mytype = VP.varType.bool) options.register('isFastSim', default = False, mytype = VP.varType.bool) options.register('quiet', default = True, mytype = VP.varType.bool) options.register('requireLepton', default = True, mytype = VP.varType.bool) options.register('globalTag', mytype = VP.varType.string ) options.register('postfix','TR', mytype = VP.varType.string ) options.register('btags', mytype = VP.varType.string, mult = VP.multiplicity.list ) options.register('doElectronEA', default = True, mytype = VP.varType.bool) options.parseArguments() options._tagOrder =[] defaultGT = ('FT53_V21A_AN6' if options.isData else 'START53_V15') sync53 = '/store/mc/Summer12_DR53X/TTJets_MassiveBinDECAY_TuneZ2star_8TeV-madgraph-tauola/AODSIM/PU_S10_START53_V7A-v1/0000/FE4C2F81-D0E1-E111-9080-0030487E0A2D.root' SingleElRun2012A = "root://cmsxrootd.fnal.gov///store/data/Run2012A/SingleElectron/AOD/13Jul2012-v1/0000/001A2EB8-47D4-E111-B527-003048679070.root" defaultFiles = ( [sync53] if not options.isData else [SingleElRun2012A] ) # pickRelValInputFiles( cmsswVersion = 'CMSSW_5_3_6', # dataTier = 'RECO', # relVal = 'SingleMu', # globalTag = 'GR_R_53_V15_RelVal_mu2012A', # numberOfFiles = 10 # ) options.files = options.files if options.files else defaultFiles if not options.globalTag : options.globalTag = defaultGT if not options.quiet : print options options.btags = ['combinedSecondaryVertex','jetProbability'] return options
def options() : options = VP('standard') options.output = "topTuple.root" options.maxEvents = -1 options.register('procName', default = "PAT2", mytype = VP.varType.string) options.register('isData', default = False, mytype = VP.varType.bool) options.register('skim', default = True, mytype = VP.varType.bool) options.register('btag', default = False, mytype = VP.varType.bool) # options.register('outputModule', default = True, mytype = VP.varType.bool) options.register('quiet', default = False, mytype = VP.varType.bool) options.register('requireLepton', default = True, mytype = VP.varType.bool) options.register('globalTag', mytype = VP.varType.string ) options.register('postfix','TR', mytype = VP.varType.string ) options.register('btags', mytype = VP.varType.string, mult = VP.multiplicity.list ) options.register('doElectronEA', default = True, mytype = VP.varType.bool) options.register('noJetSmearing', default = False, mytype = VP.varType.bool) try: for key in options._register.keys(): setattr(options, key, cms_var.get(key, getattr(options, key))) except NameError: print "cms_var is not in __builtin__" print sys.argv if not "-create" in sys.argv: options.parseArguments() else: print "Found '-create' in sys.argv! Omitting options.parseArguments()" options._tagOrder =[] defaultGT = ('GR_R_53_V18' if options.isData else 'START53_V15') # FT_53_V21_AN4 # START53_V23 sync53 = 'file:/user/kuessel/files/Synchfiles/syncExercise53.root' diffStep1="file:/user/kuessel/CMSSW/Synch/CMSSW_5_3_8_patch3/src/pickevents.root" subset="file:/user/kuessel/CMSSW/Synch/CMSSW_5_3_8_patch3/src/testSkim.root" skim="/store/user/kuessel/TTJets_MassiveBinDECAY_TuneZ2star_8TeV-madgraph-tauola/YK_MC_MARCH13_TTbar/accebdcbeca2810af478d8af2493d41f/SynchSelMuJets_103_1_lgS.root" defaultFiles = [skim] # defaultFiles = [subset] # defaultFiles = [diffStep1] options.files = defaultFiles if not options.globalTag : options.globalTag = defaultGT options.btags = ['combinedSecondaryVertex','jetProbability'] if not options.quiet : print options return options
'not run the analyzer and store an edm file') options.register('nThreads', 1, VarParsing.multiplicity.singleton, VarParsing.varType.int, 'default number of threads') ## to be used when running crab jobs with local files options.register('isCrab', False, VarParsing.multiplicity.singleton, VarParsing.varType.bool, 'to be used to handle local files with crab') ## parsing command line arguments options.parseArguments() ### check consistentcy of basic options if options.isMC and 'dataRun2' in options.globalTag: options.globalTag = '80X_mcRun2_asymptotic_2016_miniAODv2_v1' options.JECEra = 'Spring16_25nsV10' if options.isMC and options.applyL2L3Residuals: options.applyL2L3Residuals = False if not options.isMC: options.crossSection = -1. if options.isMC and options.miniAODProcess != 'PAT': options.miniAODProcess = 'PAT' print "##### Settings ######" print "Running with isMC = ", options.isMC print "Running with filterHighMETEvents = ", options.filterHighMETEvents if options.filterHighMETEvents: print "Running with metCut = ", options.metCut
VarParsing.varType.float, "cross section") options.register("lumi", 1000, VarParsing.multiplicity.singleton, VarParsing.varType.float, "luminosity") options.register("nEvents", 1, VarParsing.multiplicity.singleton, VarParsing.varType.int, "number of events in sample") options.register("era", "2015_74x", VarParsing.multiplicity.singleton, VarParsing.varType.string, "data era") options.parseArguments() # re-set some defaults if options.globalTag is "NONE": # These GT contain the latest 2015-data derived JEC: # https://hypernews.cern.ch/HyperNews/CMS/get/JetMET/1630.html if options.isData: options.globalTag = "74X_dataRun2_Prompt_v2" else: options.globalTag = "74X_mcRun2_asymptotic_v2" if options.maxEvents is -1: # maxEvents is set in VarParsing class by default to -1 options.maxEvents = 1000 # print settings print "\n\n***** JOB SETUP *************************" print " label : " + options.label print " isData : " + str(options.isData) print " globalTag : " + options.globalTag print " era : " + options.era if not options.isData: print " xs : " + str(options.xs) print " lumi : " + str(options.lumi) print " nEvents : " + str(options.nEvents)
options.parseArguments() # Make shortcuts to access some of the configuration options easily runOnData = options.runOnData elChan = options.channels.find("e") != -1 muChan = options.channels.find("m") != -1 # Provide a default global tag if user has not given any. At the moment # chosen according to [1]. # [1] https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideFrontierConditions?rev=585 if len(options.globalTag) == 0: if runOnData: options.globalTag = "80X_dataRun2_2016SeptRepro_v6" else: options.globalTag = "80X_mcRun2_asymptotic_2016_TrancheIV_v7" print "WARNING: No global tag provided. Will use the default one (" + options.globalTag + ")" # Set the global tag process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_condDBv2_cff") from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag process.GlobalTag = GlobalTag(process.GlobalTag, options.globalTag) # Parse jet selection jetSelParsed = re.match(r"(\d+)j(\d+)", options.jetSel) if jetSelParsed is None:
VarParsing.varType.bool, "True for MC" ) options.register( 'dataType', 'Zmumu_mc', VarParsing.multiplicity.singleton, VarParsing.varType.string, 'Type of data file.' ) options.parseArguments() if ( '_mc' in options.dataType ) : options.runOnMC = True options.globalTag = 'START53_V23' options.channel = options.dataType[:-len('_mc')] elif ( '_data' in options.dataType ) : options.runOnMC = False options.globalTag = 'FT_53_V21_AN4' options.channel = options.dataType[:-len('_data')] else : sys.exit('Invalid dataType.') if not ( options.channel == 'Zmumu' or options.channel == 'Wenu' or options.channel == 'Wenu_loose' or options.channel == 'Dijet' or options.channel == 'Ttbar0lept' or options.channel == 'Ttbar1lept' or options.channel == 'Ttbar1lept_RunA' ) : sys.exit('Invalid channel.') process = cms.Process("Demo")
"sampleWeight", 1.0, VarParsing.multiplicity.singleton, VarParsing.varType.float, "not doing anything", ) options.parseArguments() print(options.sampleWeight) if options.maxEvents is -1: # maxEvents is set in VarParsing class by default to -1 options.maxEvents = 1001 # reset for testing if options.isData: if "2016" in options.dataEra: options.globalTag = "102X_dataRun2_v13" elif "2017" in options.dataEra: options.globalTag = "102X_dataRun2_v13" elif "2018" in options.dataEra: options.globalTag = "102X_dataRun2_v13" else: raise Exception( "dataEra " + options.dataEra + " not supported for this config: USE dataEra=2016/2017") elif not options.isData: if "2016" in options.dataEra: options.globalTag = "102X_mcRun2_asymptotic_v8" elif "2017" in options.dataEra: options.globalTag = "102X_mc2017_realistic_v8" elif "2018" in options.dataEra: options.globalTag = "102X_upgrade2018_realistic_v21"
runOnReclusteredJets = options.UseReclusteredJets print(runOnData) if runOnData: print('You are running on datas') else: print('You are running on MC') # Provide a default global tag if user has not given any. Chosen as # according to recommendations for JEC [1]. # [1] https://twiki.cern.ch/twiki/bin/viewauth/CMS/JECDataMC?rev=125 if len(options.globalTag) == 0: if runOnData: if runOnLegacy: options.globalTag = '94X_dataRun2_v10' else: options.globalTag = '80X_dataRun2_2016SeptRepro_v7' else: options.globalTag = '94X_mcRun2_asymptotic_v3' print 'WARNING: No global tag provided. Will use the default one: {}.'.format( options.globalTag ) if len(options.JECData) == 0: if runOnLegacy: options.JECData = 'Summer16_07Aug2017BCD_V1_DATA'
options.register( "label", "Analysis", VarParsing.multiplicity.singleton, VarParsing.varType.string, "prefix of out name" ) options.register( "isData", True, VarParsing.multiplicity.singleton, VarParsing.varType.bool, "is it data or MC?" ) options.register( "globalTag", "NONE", VarParsing.multiplicity.singleton, VarParsing.varType.string, "global tag" ) options.register( "xs", 1.0, VarParsing.multiplicity.singleton, VarParsing.varType.float, "cross section" ) options.register( "lumi", 1000, VarParsing.multiplicity.singleton, VarParsing.varType.float, "luminosity" ) options.register( "nEvents", 1, VarParsing.multiplicity.singleton, VarParsing.varType.int, "number of events in sample" ) options.register( "era", "2015_74x", VarParsing.multiplicity.singleton, VarParsing.varType.string, "data era" ) options.parseArguments() # re-set some defaults if options.globalTag is "NONE": # These GT contain the latest 2015-data derived JEC: # https://hypernews.cern.ch/HyperNews/CMS/get/JetMET/1630.html if options.isData: options.globalTag = "74X_dataRun2_Prompt_v2" else: options.globalTag = "74X_mcRun2_asymptotic_v2" if options.maxEvents is -1: # maxEvents is set in VarParsing class by default to -1 options.maxEvents = 1000 # print settings print "\n\n***** JOB SETUP *************************" print " label : "+options.label print " isData : "+str(options.isData) print " globalTag : "+options.globalTag print " era : "+options.era if not options.isData: print " xs : "+str(options.xs) print " lumi : "+str(options.lumi)
options.setType('outputFile', VarParsing.varType.string) options.setDefault('outputFile', 'sample.root') options.parseArguments() # Make shortcuts to access some of the configuration options easily runOnData = options.runOnData elChan = (options.channels.find('e') != -1) muChan = (options.channels.find('m') != -1) # Provide a default global tag if user has not given any. Chosen as # according to recommendations for JEC [1]. # [1] https://twiki.cern.ch/twiki/bin/viewauth/CMS/JECDataMC?rev=125 if len(options.globalTag) == 0: if runOnData: options.globalTag = '80X_dataRun2_2016SeptRepro_v7' else: options.globalTag = '80X_mcRun2_asymptotic_2016_TrancheIV_v8' print 'WARNING: No global tag provided. Will use the default one: {}.'.format( options.globalTag) # Set the global tag process.load( 'Configuration.StandardSequences.FrontierConditions_GlobalTag_condDBv2_cff' ) from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag process.GlobalTag = GlobalTag(process.GlobalTag, options.globalTag) # Define the input files
if options.period not in ['2016', '2017']: raise RuntimeError( 'Data-taking period "{}" is not supported.'.format(options.period) ) # Make shortcuts to access some of the configuration options easily is_data = options.runOnData # Provide a default global tag if user has not given any. Chosen # according to [1]. # [1] https://twiki.cern.ch/twiki/bin/viewauth/CMS/PdmVAnalysisSummaryTable?rev=10 if not options.globalTag: if options.period == '2016': if is_data: options.globalTag = '94X_dataRun2_v10' else: options.globalTag = '94X_mcRun2_asymptotic_v3' elif options.period == '2017': if is_data: options.globalTag = '94X_dataRun2_v11' else: options.globalTag = '94X_mc2017_realistic_v17' print( 'No global tag provided. Will use the default one: "{}".'.format( options.globalTag ) ) # Set the global tag
# Make shortcuts to access some of the configuration options easily runOnData = options.runOnData elChan = (options.channels.find('e') != -1) muChan = (options.channels.find('m') != -1) # Provide a default global tag if user has not given any. Chosen # according to [1]. # [1] https://twiki.cern.ch/twiki/bin/viewauth/CMS/PdmVAnalysisSummaryTable?rev=10 if not options.globalTag: if options.period == '2016': # The global tags below include JEC Summer16_07Aug2017_V11 and # JER Summer16_25nsV1 if runOnData: options.globalTag = '94X_dataRun2_v10' else: options.globalTag = '94X_mcRun2_asymptotic_v3' elif options.period == '2017': # The global tags below include JEC Fall17_17Nov2017B_V32 and # JER Fall17_V3 if runOnData: options.globalTag = '94X_dataRun2_v11' else: options.globalTag = '94X_mc2017_realistic_v17' print 'WARNING: No global tag provided. Will use the default one: {}.'.format( options.globalTag ) # Set the global tag