def setupJSON(process): print 'setting up JSON:' fileName = process.source.fileNames[0] json = jsonPick(fileName, jsonMap) print json applyJSON(process, json) return json
DYJets.nGenEvents, DY1Jets.nGenEvents, DY2Jets.nGenEvents, DY3Jets.nGenEvents, DY4Jets.nGenEvents ] for dy in mc_dy: dy.nevents = dy_nevents # Attach number of generated events for stitching w_nevents = [ WJets.nGenEvents, W1Jets.nGenEvents, W2Jets.nGenEvents, W3Jets.nGenEvents, W4Jets.nGenEvents ] for w in mc_w: w.nevents = w_nevents print[(s.name, s.dataset_entries) for s in allsamples] for mc in MC_list: mc.triggers = mc_triggers # allsamples.append(mc) for data in data_list: if len(data.files): data.json = jsonPick(data.files[0], jsonMap) data.triggers = data_triggers # allsamples.append(data) for embed in embed_list: if len(embed.files): embed.json = jsonPick(embed.files[0], jsonMap) embed.triggers = embed_triggers # No trigger requirements for embedded samples for c in allsamples: c.splitFactor = splitFactor(c, 5e4)
dy.nevents = dy_nevents # Attach number of generated events for stitching w_nevents = [ WJets.nGenEvents, W1Jets.nGenEvents+W1Jets_ext.nGenEvents, W2Jets.nGenEvents+W2Jets_ext.nGenEvents, W3Jets.nGenEvents+W3Jets_ext.nGenEvents, W4Jets.nGenEvents ] for w in mc_w+mc_w_ext: w.nevents = w_nevents print [(s.name, s.dataset_entries) for s in allsamples if s.dataset_entries] print [(s.name, s.dataset_entries) for s in allsamples if not s.dataset_entries] for mc in MC_list: mc.triggers = mc_triggers # allsamples.append(mc) for data in data_list: if len(data.files): data.json = jsonPick( data.files[0], jsonMap) data.triggers = data_triggers # allsamples.append(data) for embed in embed_list: if len(embed.files): embed.json = jsonPick( embed.files[0], jsonMap) embed.triggers = embed_triggers # No trigger requirements for embedded samples for c in allsamples: c.splitFactor = splitFactor(c, 5e3)
MC_list = copy.copy(mc_ewk) MC_list.extend(mc_diboson_inc) allsamples = copy.copy(MC_list) allsamples.extend(data_list) # the pattern provided to this function is a SQL pattern. # % represents the wildcard. # this pattern allows to select a whole group of samples. connect(allsamples, '%CMGPF_V5_16_0', 'cmgTuple.*root', aliases, cache=True, verbose=False) # guessing the best split factor for each component, # to get about the same number of events in each job for c in allsamples: c.splitFactor = splitFactor(c, nEventsPerJob=2e5) # picking up the json file automatically. Here, we use the dcs jsons. for data in data_list: if len(data.files): data.json = jsonPick(data.files[0], jsonMap) if __name__ == '__main__': from CMGTools.RootTools.fwlite.Config import printComps printComps(allsamples, True)
# W1Jets.nGenEvents+W1Jets_ext.nGenEvents, # W2Jets.nGenEvents+W2Jets_ext.nGenEvents, # W3Jets.nGenEvents+W3Jets_ext.nGenEvents, # W4Jets.nGenEvents # ] #for w in mc_w+mc_w_ext: # w.nevents = w_nevents print [(s.name, s.dataset_entries) for s in allsamples if s.dataset_entries] print [(s.name, s.dataset_entries) for s in allsamples if not s.dataset_entries] for mc in MC_list: mc.triggers = mc_triggers # mc.dataset_entries = 10000 # allsamples.append(mc) for data in data_list: if len(data.files): data.json = jsonPick( data.files[0], jsonMap) # data.triggers = data_parked_triggers_2012 data.triggers = data_triggers # allsamples.append(data) #for embed in embed_list: # if len(embed.files): # embed.json = jsonPick( embed.files[0], jsonMap) # embed.triggers = embed_triggers # No trigger requirements for embedded samples for c in allsamples: c.splitFactor = splitFactor(c, 5e3)
"/DoubleMu/Run2011A-16Jan2012-v1/AOD": pr2011, "/DoubleMu/Run2011B-16Jan2012-v1/AOD": pr2011, # Jan 13 re-reco - only use one JSON file ".*22Jan2013-v1.*": jan22_2013, ".*22Jan2013_v1.*": jan22_2013, } if __name__ == "__main__": from CMGTools.RootTools.json.jsonPick import jsonPick samples = [ "/TauPlusX/Run2012A-13Jul2012-v1/AOD", "/TauPlusX/Run2012B-13Jul2012-v1/AOD", "/TauPlusX/Run2012C-24Aug2012-v1/AOD", "/TauPlusX/Run2012C-PromptReco-v2/AOD", "/TauPlusX/Run2012D-PromptReco-v1/AOD", "/Tau/Run2012A-13Jul2012-v1/AOD", "/Tau/Run2012B-13Jul2012-v1/AOD", "/Tau/Run2012C-PromptReco-v1/AOD", "/Tau/Run2012C-24Aug2012-v1/AOD", "/Tau/Run2012D-PromptReco-v1/AOD", "/TauPlusX/Run2012D-22Jan2013-v1/AOD/", "/DoubleMuParked/StoreResults-Run2012D_22Jan2013_v1_RHembedded_trans1_tau116_ptmu1_16had1_18_v1-f456bdbb960236e5c696adfe9b04eaae/USER/V5_B", ] for sample in samples: print "Sample", sample print "\tJSON =", jsonPick(sample, jsonMap)
prompt_2015 = '/afs/cern.ch/cms/CAF/CMSCOMM/COMM_DQM/certification/Collisions15/13TeV/Cert_246908-260627_13TeV_PromptReco_Collisions15_25ns_JSON_v2.txt' prompt_2016 = '/afs/cern.ch/cms/CAF/CMSCOMM/COMM_DQM/certification/Collisions16/13TeV/Cert_271036-276384_13TeV_PromptReco_Collisions16_JSON_NoL1T.txt' rereco_2017 = '/afs/cern.ch/cms/CAF/CMSCOMM/COMM_DQM/certification/Collisions17/13TeV/ReReco/Cert_294927-306462_13TeV_EOY2017ReReco_Collisions17_JSON.txt' jsonMap = { # 2015 '.*Run2015C.*': prompt_2015, '.*Run2015D.*': prompt_2015, '.*Run2016.*': prompt_2016, '.*Run2017.*': rereco_2017 } if __name__ == '__main__': from CMGTools.RootTools.json.jsonPick import jsonPick samples = [ '/SingleMuon/Run2015D-PromptReco-v4/MINIAOD', 'root://eoscms.cern.ch//eos/cms/store/data/Run2015D/SingleMuon/MINIAOD/PromptReco-v4/000/258/159/00000/6CA1C627-246C-E511-8A6A-02163E014147.root' ] for sample in samples: print 'Sample', sample print '\tJSON =', jsonPick(sample, jsonMap)
from CMGTools.RootTools.json.jsonPick import jsonPick samples = [ '/TauPlusX/Run2012A-13Jul2012-v1/AOD', # '/TauPlusX/Run2012B-13Jul2012-v1/AOD', # '/TauPlusX/Run2012C-24Aug2012-v1/AOD', # '/TauPlusX/Run2012C-PromptReco-v2/AOD', # '/TauPlusX/Run2012D-PromptReco-v1/AOD', # '/Tau/Run2012A-13Jul2012-v1/AOD', # '/Tau/Run2012B-13Jul2012-v1/AOD', # '/Tau/Run2012C-PromptReco-v1/AOD', # '/Tau/Run2012C-24Aug2012-v1/AOD', # '/Tau/Run2012D-PromptReco-v1/AOD', # '/TauPlusX/Run2012D-22Jan2013-v1/AOD/', # '/DoubleMuParked/StoreResults-Run2012D_22Jan2013_v1_RHembedded_trans1_tau116_ptmu1_16had1_18_v1-f456bdbb960236e5c696adfe9b04eaae/USER/V5_B' '/Tau/Run2012A-13Jul2012-v1/AOD', '/TauParked/Run2012B-13Jul2012-v1/AOD', '/TauParked/Run2012C-13Jul2012-v1/AOD', '/TauParked/Run2012D-13Jul2012-v1/AOD', '/DoubleMu/StoreResults-Run2012A_22Jan2013_v1_RHembedded_trans1_tau132_pthad1_30had2_30_v1-f456bdbb960236e5c696adfe9b04eaae/USER', '/DoubleMuParked/StoreResults-Run2012B_22Jan2013_v1_RHembedded_trans1_tau132_pthad1_30had2_30_v1-f456bdbb960236e5c696adfe9b04eaae/USER', '/DoubleMuParked/StoreResults-Run2012C_22Jan2013_v1_RHembedded_trans1_tau132_pthad1_30had2_30_v1-f456bdbb960236e5c696adfe9b04eaae/USER', '/DoubleMuParked/StoreResults-Run2012D_22Jan2013_v1_RHembedded_trans1_tau132_pthad1_30had2_30_v1-f456bdbb960236e5c696adfe9b04eaae/USER', ] for sample in samples: print 'Sample', sample print '\tJSON =', jsonPick( sample, jsonMap )