diff --git a/Configuration/Applications/python/ConfigBuilder.py b/Configuration/Applications/python/ConfigBuilder.py index 2e0589e823851..549b373761edd 100644 --- a/Configuration/Applications/python/ConfigBuilder.py +++ b/Configuration/Applications/python/ConfigBuilder.py @@ -1813,7 +1813,7 @@ def prepare_NANO(self, stepSpec = '' ): _nanoCustoms = [cust if cust!='' else self.NANODefaultCustom for cust in _nanoCustoms] # build and inject the sequence if len(_nanoSeq) < 1 and '@' in stepSpec: - raise Exception(f'The specified mapping: {stepSpec} generates an empty NANO sequence. Please provide a valid mappign') + raise Exception(f'The specified mapping: {stepSpec} generates an empty NANO sequence. Please provide a valid mapping') _seqToSchedule = [] for _subSeq in _nanoSeq: if '.' in _subSeq: diff --git a/Configuration/PyReleaseValidation/python/relval_nano.py b/Configuration/PyReleaseValidation/python/relval_nano.py index 32aaee41534cf..2f48c05b380cc 100644 --- a/Configuration/PyReleaseValidation/python/relval_nano.py +++ b/Configuration/PyReleaseValidation/python/relval_nano.py @@ -177,6 +177,10 @@ def subnext(self): steps['EGMNano_mc13.0'] = merge([{'-s':'NANO:@EGM,DQM:@nanoAODDQM', '-n' : '1000'}, steps['NANO_mc13.0']]) + +steps['jmeNano_data13.0'] = merge([{'-s':'NANO:@JME', '-n' : '1000'}, + steps['NANO_data13.0']]) + steps['lepTimeLifeNANO_data13.0']=merge([{'-s' : 'NANO:@LepTimeLife,DQM:@nanoAODDQM', '-n' : '1000'}, steps['NANO_data13.0']]) @@ -196,6 +200,9 @@ def subnext(self): steps['EGMNano_mc13.2'] = merge([{'-s':'NANO:@EGM,DQM:@nanoAODDQM', '-n' : '1000'}, steps['NANO_mc13.2']]) +steps['jmeNANO_mc13.2']=merge([{'-s' : 'NANO:@JME ', '-n' : '1000'}, + steps['NANO_mc13.2']]) + steps['lepTimeLifeNANO_mc13.2']=merge([{'-s' : 'NANO:@LepTimeLife,DQM:@nanoAODDQM', '-n' : '1000'}, steps['NANO_mc13.2']]) @@ -257,17 +264,19 @@ def subnext(self): workflows[_wfn()] = ['NANOdata130Xrun3', ['MuonEG2023MINIAOD13.0', 'NANO_data13.0_prompt', 'HRV_NANO_data']] workflows[_wfn()] = ['muDPGNANO130Xrun3', ['ZMuSkim2023DRAWRECO13.0', 'muDPGNANO_data13.0']] workflows[_wfn()] = ['muDPGNANOBkg130Xrun3', ['ZeroBias2023DRAW13.0', 'muDPGNANOBkg_data13.0']] -workflows[_wfn()] = ['muPOGNANO_data13.0', ['MuonEG2023MINIAOD13.0', 'muPOGNANO_data13.0']] +workflows[_wfn()] = ['muPOGNANO130Xrun3', ['MuonEG2023MINIAOD13.0', 'muPOGNANO_data13.0']] workflows[_wfn()] = ['EGMNANOdata130Xrun3', ['MuonEG2023MINIAOD13.0', 'EGMNano_data13.0']] -workflows[_wfn()] = ['lepTimeLifeNANO_data13.0', ['MuonEG2023MINIAOD13.0', 'lepTimeLifeNANO_data13.0']] +workflows[_wfn()] = ['jmeNANOdata130Xrun3', ['MuonEG2023MINIAOD13.0', 'jmeNano_data13.0']] +workflows[_wfn()] = ['lepTimeLifeNANOdata130Xrun3', ['MuonEG2023MINIAOD13.0', 'lepTimeLifeNANO_data13.0']] _wfn.next() ################ #13.2 workflows workflows[_wfn()] = ['NANOmc132X', ['TTBarMINIAOD13.2', 'NANO_mc13.2', 'HRV_NANO_mc']] -workflows[_wfn()] = ['muPOGNANO_mc13.2', ['TTBarMINIAOD13.2', 'muPOGNANO_mc13.2']] +workflows[_wfn()] = ['muPOGNANOmc132X', ['TTBarMINIAOD13.2', 'muPOGNANO_mc13.2']] workflows[_wfn()] = ['EGMNANOmc132X', ['TTBarMINIAOD13.2', 'EGMNano_mc13.2']] -workflows[_wfn()] = ['lepTimeLifeNANO_mc13.2', ['TTBarMINIAOD13.2', 'lepTimeLifeNANO_mc13.2']] +workflows[_wfn()] = ['jmeNANOmc132X', ['TTBarMINIAOD13.2', 'jmeNANO_mc13.2']] +workflows[_wfn()] = ['lepTimeLifeNANOmc132X', ['TTBarMINIAOD13.2', 'lepTimeLifeNANO_mc13.2']] _wfn.next() ################ diff --git a/PhysicsTools/NanoAOD/python/autoNANO.py b/PhysicsTools/NanoAOD/python/autoNANO.py index 33dd0558a1991..b580e42007ec3 100644 --- a/PhysicsTools/NanoAOD/python/autoNANO.py +++ b/PhysicsTools/NanoAOD/python/autoNANO.py @@ -28,6 +28,8 @@ def expandNanoMapping(seqList, mapping, key): # L1 flavours: add tables through customize, supposed to be combined with PHYS 'L1' : {'customize': 'nanoL1TrigObjCustomize'}, 'L1FULL' : {'customize': 'nanoL1TrigObjCustomizeFull'}, + 'JME' : { 'sequence': '@PHYS', + 'customize': '@PHYS+PhysicsTools/NanoAOD/custom_jme_cff.PrepJMECustomNanoAOD'}, # Muon POG flavours : add tables through customize, supposed to be combined with PHYS 'MUPOG' : {'customize' : 'PhysicsTools/NanoAOD/custom_muon_cff.PrepMuonCustomNanoAOD'}, # MUDPG flavours: use their own sequence diff --git a/PhysicsTools/NanoAOD/python/custom_jme_cff.py b/PhysicsTools/NanoAOD/python/custom_jme_cff.py index 36fbda6cb38ca..72e5df847ee5c 100644 --- a/PhysicsTools/NanoAOD/python/custom_jme_cff.py +++ b/PhysicsTools/NanoAOD/python/custom_jme_cff.py @@ -1232,8 +1232,11 @@ def RemoveAllJetPtCuts(proc): # CUSTOMIZATION function # #=========================================================================== -def PrepJMECustomNanoAOD(process,runOnMC): - +def PrepJMECustomNanoAOD(process): + ## TODO : find a better way to handle data or MC by modifying the proper Tasks + runOnMC=True + if hasattr(process,"NANOEDMAODoutput") or hasattr(process,"NANOAODoutput"): + runOnMC = False ############################################################################ # Remove all default jet pt cuts from jets_cff.py ############################################################################ @@ -1343,12 +1346,3 @@ def addAK4JetTasks(proc, addAK4CHSJetTasks, addAK4PuppiJetTasks): process.genWeightsTable.keepAllPSWeights = True return process - -def PrepJMECustomNanoAOD_MC(process): - process = PrepJMECustomNanoAOD(process,runOnMC=True) - - return process - -def PrepJMECustomNanoAOD_Data(process): - process = PrepJMECustomNanoAOD(process,runOnMC=False) - return process