diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/PhysicsD3PDProdFlags.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/PhysicsD3PDProdFlags.py index 4639c0d18d159380bb6ca5f7ba299425a0637a59..d457e2870255d4bdc948557b2417c4e52f8b50c6 100644 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/PhysicsD3PDProdFlags.py +++ b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/PhysicsD3PDProdFlags.py @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration # $Id: PhysicsD3PDProdFlags.py 531461 2012-12-20 21:43:15Z nedwards $ # @@ -16,197 +16,3 @@ from AthenaCommon.JobProperties import JobProperty -class WriteSMWZD3PD (JobProperty): - """Produce the SMWZ D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWZ' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWZD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMWZSOFTD3PD (JobProperty): - """Produce the SMWZ soft D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWZSOFT' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWZsoftD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMWENUD3PD (JobProperty): - """Produce the SMWENU D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWENU' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWENUD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMWENUJJD3PD (JobProperty): - """Produce the SMWENUJJ D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWENUJJ' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWENUJJD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMZEED3PD (JobProperty): - """Produce the SMZEE D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMZEE' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMZEED3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMDYEED3PD (JobProperty): - """Produce the SMDYEE D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMDYEE' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMDYEED3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMBKGED3PD (JobProperty): - """Produce the SMBKGE D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMBKGE' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMBKGED3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMWMUNUD3PD (JobProperty): - """Produce the SMWMUNU D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWMUNU' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWMUNUD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMWMUNUJJD3PD (JobProperty): - """Produce the SMWMUNUJJ D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMWMUNUJJ' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMWMUNUJJD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMZMUMUD3PD (JobProperty): - """Produce the SMZMUMU D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMZMUMU' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMZMUMUD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMDYMUMUD3PD (JobProperty): - """Produce the SMDYMUMU D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMDYMUMU' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMDYMUMUD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMBKGMUD3PD (JobProperty): - """Produce the SMBKGMU D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMBKGMU' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMBKGMUD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMDILEPD3PD (JobProperty): - """Produce the SMDILEP D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMDILEP' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMDILEPD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMTRILEPD3PD (JobProperty): - """Produce the SMTRILEP D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMTRILEP' - FileName = '' - isVirtual = False - #DPDMakerScript = "SMEWTrilepSkim/SMTRILEPD3PD_prodJobOFragment.py" - DPDMakerScript = "PhysicsD3PDMaker/SMTRILEPD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] - - -class WriteSMLIGHTD3PD (JobProperty): - """Produce the SMLIGHT D3PD.""" - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - StreamName = 'StreamNTUP_SMLIGHT' - FileName = '' - isVirtual = False - DPDMakerScript = "PhysicsD3PDMaker/SMLIGHTD3PD_prodJobOFragment.py" - TreeNames = ['physics'] - SubSteps = ['a2d', 'e2d'] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMTrilepD3PD.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMTrilepD3PD.py deleted file mode 100644 index 1624020f38500e44d70ef5a219699ef5168897d7..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMTrilepD3PD.py +++ /dev/null @@ -1,744 +0,0 @@ -# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration - -# $Id: SMTrilepD3PD.py 531461 2012-12-20 21:43:15Z nedwards $ -# -# @file PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMTrilepD3PD.py -# @author maarten boonekamp <maarten.boonekamp@cea.fr> -# @date Sep, 2009 -# @brief Construct a Standard Model WZ physics D3PD. -# - - -import D3PDMakerCoreComps -from D3PDMakerCoreComps.resolveSGKey import testSGKey - -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags - -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr - -# event - -from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject -from EventCommonD3PDMaker.LBMetadataConfig import LBMetadataConfig - -# eletron/photon - -from egammaD3PDMaker.ElectronD3PDObject import ElectronD3PDObject -from egammaD3PDMaker.GSFElectronD3PDObject import GSFElectronD3PDObject -from egammaD3PDMaker.PhotonD3PDObject import PhotonD3PDObject -from egammaD3PDMaker.egammaTriggerBitsD3PDObject import egammaTriggerBitsD3PDObject - -# muons - -from MuonD3PDMaker.MuonD3PDObject import MuonD3PDObject -from MuonD3PDMaker.MuonSegmentD3PDObject import MuonSegmentD3PDObject -from MuonD3PDMaker.MuonTriggerBitsD3PDObject import MuonTriggerBitsD3PDObject - -# jet - -from JetD3PDMaker.JetD3PDObject import JetD3PDObject - -# tau - -from TauD3PDMaker.TauD3PDObject import TauD3PDObject -from TauD3PDMaker.makeTrackFilterAlg import makeTrackFilterAlg - -# calo - -from CaloD3PDMaker.MBTSD3PDObject import MBTSD3PDObject -from CaloD3PDMaker.MBTSTimeD3PDObject import MBTSTimeD3PDObject -from CaloD3PDMaker.MBTSTriggerBitsD3PDObject import MBTSTriggerBitsD3PDObject -from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject -from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject -from CaloD3PDMaker.ClusterD3PDObject import ClusterD3PDObject -from CaloD3PDMaker.EMClusterD3PDObject import EMClusterD3PDObject -from CaloD3PDMaker.makeClusterFilter import makeClusterFilter - -# baseline track config - -from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags - -TrackD3PDFlags.doTruth = True -TrackD3PDFlags.storeDetailedTruth = False -TrackD3PDFlags.storeDiagonalCovarianceAsErrors = True -TrackD3PDFlags.storeHitTruthMatching = True -TrackD3PDFlags.storePixelHitsOnTrack = False -TrackD3PDFlags.storePixelHolesOnTrack = False -TrackD3PDFlags.storePixelOutliersOnTrack = False -TrackD3PDFlags.storeSCTHitsOnTrack = False -TrackD3PDFlags.storeSCTHolesOnTrack = False -TrackD3PDFlags.storeSCTOutliersOnTrack = False -TrackD3PDFlags.storeTRTHitsOnTrack = False -TrackD3PDFlags.storeTRTHolesOnTrack = False -TrackD3PDFlags.storeTRTOutliersOnTrack = False -TrackD3PDFlags.storeTrackFitQuality = True -TrackD3PDFlags.storeTrackInfo = False -TrackD3PDFlags.storeTrackMomentum = True -TrackD3PDFlags.storeTrackPredictionAtBLayer = False -TrackD3PDFlags.storeTrackSummary = True -TrackD3PDFlags.storeTrackSummary.IDOutliers = True -TrackD3PDFlags.storeTrackSummary.PixelInfoPlus = True -TrackD3PDFlags.storeTrackSummary.SCTInfoPlus = True -TrackD3PDFlags.storeTrackSummary.TRTInfoPlus = True -TrackD3PDFlags.trackParametersAtBeamSpotLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtGlobalPerigeeLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtPrimaryVertexLevelOfDetails = 1 - -from TrackD3PDMaker.xAODTrackD3PDObject import xAODTrackParticleD3PDObject - -# PV config - -TrackD3PDFlags.storeVertexFitQuality = True -TrackD3PDFlags.storeVertexKinematics = True -TrackD3PDFlags.storeVertexPurity = False -TrackD3PDFlags.storeVertexTrackAssociation = False -TrackD3PDFlags.storeVertexTrackIndexAssociation = True -TrackD3PDFlags.vertexPositionLevelOfDetails = 2 - -from TrackD3PDMaker.xAODVertexD3PDObject import PrimaryxAODVertexD3PDObject - -# BeamSpot / MinBias - -from InDetD3PDMaker.BeamSpotD3PDObject import BeamSpotD3PDObject - -# MET - -from MissingETD3PDMaker.MissingETD3PDMakerFlags import MissingETD3PDMakerFlags -from MissingETD3PDMaker.MissingETD3PDObject import * -from MissingETD3PDMaker.MissingETD3PDTriggerBitsObject import * - -MissingETD3PDMakerFlags.doCellOutEflow=True - -# Trigger - -from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject -from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata -from TriggerD3PDMaker.BGCodeD3PDObject import BGCodeD3PDObject -#from TrigEgammaD3PDMaker.EFElectronD3PDObject import EFElectronD3PDObject -from TrigEgammaD3PDMaker.TrigEgammaD3PD import TrigEgammaD3PDObjects -from TrigMuonD3PDMaker.TrigMuonD3PD import TrigMuonD3PDObjects -#from D3PDMakerCoreComps.D3PDObject import make_Void_D3PDObject -#from TrigMuonD3PDMaker.MuonFeatureD3PDObject import MuonFeatureD3PDObject -#from TrigMuonD3PDMaker.CombinedMuonFeatureD3PDObject import CombinedMuonFeatureD3PDObject -#from TrigMuonD3PDMaker.TrigMuonEFInfoD3PDObject import TrigMuonEFInfoD3PDObject -#from TriggerD3PDMaker.TrigRoiDescD3PDObject import TrigRoiDescD3PDObject -#from TriggerD3PDMaker.TrigNaviD3PDObject import \ - #ChainEntryD3PDObject, CombLinksD3PDObjects - - -from RecExConfig.RecFlags import rec -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - - -def _args (level, name, kwin, **kw): - kw = kw.copy() - kw['level'] = level - for (k, v) in kwin.items(): - if k.startswith (name + '_'): - kw[k[len(name)+1:]] = v - return kw - - -def SMTrilepD3PD (alg = None, - #fileName = 'smtrilep.root', - tuplename = 'physics', - #streamname = 'NTUP_SMTRILEP', - stdElectronContainer = 'None', - gsfElectronContainer = 'None', - stacoMuonContainer = 'None', - muidMuonContainer = 'None', - caloMuonContainer = 'None', - thirdMuonContainer = 'None', - photonContainer = 'None', - jetContainer = 'None', - jetLC4Container = 'None', - clusterContainer = 'None', - tauContainer = 'None', - trackContainer = 'None', - addHadronicRecoil = False, - **kw): - - - preseq = AlgSequence (D3PDMakerFlags.PreD3PDAlgSeqName()) - - # perform recoil calculation - if addHadronicRecoil: - import HadronicRecoil.Configurables as hrc - preseq = hrc.add_hadronic_recoil_filters(preseq) - - - # configure the D3PD - if not alg: - from AthenaCommon.JobProperties import jobproperties - prodFlags = jobproperties.D3PDProdFlags - from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - fileName = buildFileName( prodFlags.WriteSMTRILEPD3PD ) - streamName = prodFlags.WriteSMTRILEPD3PD.StreamName - - alg = MSMgr.NewRootStream(StreamName = streamname, FileName = fileName, TreeName = tuplename) - - - alg += EventInfoD3PDObject (**_args (10, 'EventInfo', kw)) - alg += LArCollisionTimeD3PDObject (**_args (10, 'LArCollisionTime', kw)) - - from TriggerD3PDMaker.BunchStructureMetadata import addBunchStructureMetadata - addBunchStructureMetadata (alg) - - # Electron/Photon blocks - electron_excludes = [ - #'EMTrackFit', - #'EMTrackFitDetailsBrem', - #'EMTrackFitDetailsRefit', - 'EMTrackFitDetailsRefitCov', - #'TopoClusterIsolationCones', - 'UDTopoCones', 'Rings', 'TrackIsoIP', - 'ElecDiscrim','TraversedMaterial', 'TrkCovDiag','TrkCovOffDiag', - 'TrackSummaryPID','UnrefitTrk', 'ElectronPointingVariables','MVAIso', - 'IsIso','ElectronClusterQuantities' ] - - - if stdElectronContainer != 'None': - alg += ElectronD3PDObject (**_args (10, 'Electron', kw, - sgkey = stdElectronContainer, - prefix = 'el_', - exclude = electron_excludes, - allowMissing = True )) - - if (gsfElectronContainer != 'None') and testSGKey ('ElectronContainer', gsfElectronContainer): - alg += GSFElectronD3PDObject (**_args (1, 'GSFElectron', kw, - sgkey = gsfElectronContainer, - prefix = 'el_gsf_', - exclude = electron_excludes, - allowMissing = True )) - - D3PDMakerFlags.DoPAU = False - if photonContainer != 'None': - alg += PhotonD3PDObject (**_args (0, 'Photon', kw, - sgkey = photonContainer, - prefix = 'ph_', - exclude = ['OQRecalc'], - allowMissing = True )) - - # Muon blocks - - # ... add the scattering significance filler - to be removed when added in the MuonD3PDMaker - if not MuonD3PDObject.allBlocknames().has_key("MuonScatteringAngleSignificance"): - from AthenaCommon.AppMgr import ToolSvc - muonScatteringSigTool=None - if hasattr(ToolSvc, "MuonScatteringSigTool"): - muonScatteringSigTool=ToolSvc.MuonScatteringSigTool - from JetTagD3PDMaker import MuonScatteringAngleSignificanceFillerTool - MuonD3PDObject.defineBlock (100, "MuonScatteringAngleSignificance", - MuonScatteringAngleSignificanceFillerTool, - ScatteringSigTool=muonScatteringSigTool) - - std_muon_excludes = ['EFCBInfo', 'EFMGInfo', 'EFMEInfo', 'L2CBInfo', 'L1Info', 'MuonTimingFillerTool', 'Likelihood', 'MuonTimingFillerTool', 'PrimaryTrackDiagonalCovarianceAtPV', 'PrimaryTrackOffDiagonalCovarianceAtPV', 'IDTrackDiagonalCovarianceAtPV','IDTrackOffDiagonalCovarianceAtPV','METrackDiagonalCovarianceAtPV','METrackOffDiagonalCovarianceAtPV','TrkCovDiag','TrkCovOffDiag'] - calo_muon_excludes = ['EFCBInfo', 'EFMGInfo', 'EFMEInfo', 'L2CBInfo', 'L1Info', 'MuonTimingFillerTool', 'Likelihood', 'MuonTimingFillerTool', 'PrimaryTrackDiagonalCovarianceAtPV', 'PrimaryTrackOffDiagonalCovarianceAtPV', 'IDTrackDiagonalCovarianceAtPV','IDTrackOffDiagonalCovarianceAtPV','METrackDiagonalCovarianceAtPV','METrackOffDiagonalCovarianceAtPV','TrkCovDiag','TrkCovOffDiag', 'MGTrackDetails', 'MuGirlTrackBasics', 'CBTrackDetails', 'CombinedTrackBasics', 'MuonSpectrometerHitSummary'] - - if stacoMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'StacoMuon', kw, - sgkey=stacoMuonContainer, - prefix='mu_staco_', - #include = ['EFCBInfoIndex', 'EFMGInfoIndex', 'EFMEInfoIndex', - #'MuonScatteringAngleSignificance'], - exclude = std_muon_excludes, - allowMissing = True )) - - if muidMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'MuidMuon', kw, - sgkey=muidMuonContainer, - prefix='mu_muid_', - exclude = std_muon_excludes, - allowMissing = True )) - - if thirdMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'ThirdMuon', kw, - sgkey=thirdMuonContainer, - prefix='mu_', - exclude = std_muon_excludes, - allowMissing = True )) - - if caloMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'CaloMuon', kw, - sgkey=caloMuonContainer, - prefix='mu_calo_', - exclude = calo_muon_excludes, - allowMissing = True )) - - # Jet block - - from JetTagD3PDMaker.JetTagD3PDMakerFlags import JetTagD3PDFlags - from JetTagD3PDMaker.JetTagD3PDMakerKeys import JetTagD3PDKeys - - if jetContainer != 'None': - alg += JetD3PDObject (**_args ( 3, 'AK4TopoEMJet', kw, - sgkey=jetContainer, - allowMissing=True, - prefix='jet_AntiKt4TopoEM_', - JetVertexFraction_FromUD=True, - JetVertexFraction_FillFullJVF=True, - include = [ JetTagD3PDKeys.BTagWeightsBlockName(), - JetTagD3PDKeys.TruthInfoBlockName() ] )) - - if jetLC4Container != 'None': - alg += JetD3PDObject (**_args ( 3, 'AK4LCJet', kw, - sgkey=jetContainer, - allowMissing=True, - prefix='jet_AntiKt4LCTopo_', - JetVertexFraction_FromUD=True, - JetVertexFraction_FillFullJVF=True, - include = [ JetTagD3PDKeys.BTagWeightsBlockName(), - JetTagD3PDKeys.TruthInfoBlockName() ] )) - - - # Tau block - - if tauContainer != 'None': - alg += TauD3PDObject (**_args ( 0, 'Tau', kw, - allowMissing=True, - sgkey=tauContainer )) - - - # HF overlap removal (ALPGEN) - - from TopInputsD3PDMaker.HforD3PDObject import HforD3PDObject - alg += HforD3PDObject(**_args (0, 'HforInfo', kw)) - - - # MET blocks - # a whole mess to remove x,y components separately for all flavours - - alg += MissingETD3PDObject (**_args (10, 'MissingET', kw, - exclude=['MET_Base','MET_Base0','MET_Truth', - 'MET_RefFinal_Comps','MET_RefFinal_Regions', - 'MET_LocHadTopo_Comps','MET_LocHadTopo_Regions', - 'MET_CellOut_Comps','MET_CellOut_Regions', - 'MET_Calib', - 'MET_CorrTopo', - 'MET_Cryo', - 'MET_CryoCone', - 'MET_Final', - 'MET_LocHadTopoObj', - 'MET_Muid', - 'MET_Muid_Spectro', - 'MET_Muid_Track', - 'MET_MuonBoy', - 'MET_MuonBoy_Spectro', - 'MET_MuonBoy_Track', - 'MET_MuonMuid', - 'MET_Muon', - 'MET_Muon_Isol_Muid', - 'MET_Muon_Isol_Staco', - 'MET_Muon_NonIsol_Muid', - 'MET_Muon_NonIsol_Staco', - 'MET_Muon_Total_Muid', - 'MET_Muon_Total_Staco', - 'MET_RefEle_Comps','MET_RefEle_Regions', - 'MET_RefEle_em_Comps','MET_RefEle_em_Regions', - 'MET_RefGamma_Comps','MET_RefGamma_Regions', - 'MET_RefGamma_em_Comps','MET_RefGamma_em_Regions', - 'MET_RefJet_Comps','MET_RefJet_Regions', - 'MET_RefJet_em_Comps','MET_RefJet_em_Regions', - 'MET_RefMuon_Comps','MET_RefMuon_Regions', - 'MET_RefMuon_Muid_Comps','MET_RefMuon_Muid_Regions', - 'MET_RefMuon_Staco_Comps','MET_RefMuon_Staco_Regions', - 'MET_RefMuon_Track_Muid_Comps','MET_RefMuon_Track_Muid_Regions', - 'MET_RefMuon_Track_Staco_Comps','MET_RefMuon_Track_Staco_Regions', - 'MET_RefMuon_Track_em_Comps','MET_RefMuon_Track_em_Regions', - 'MET_RefMuon_Track_Comps','MET_RefMuon_Track_Regions', - 'MET_RefMuon_em_Comps','MET_RefMuon_em_Regions', - 'MET_RefTau_Comps','MET_RefTau_Regions', - 'MET_RefTau_em_Comps','MET_RefTau_em_Regions', - 'MET_SoftJets_Comps','MET_SoftJets_Regions', - 'MET_SoftJets_em_Comps','MET_SoftJets_em_Regions', - 'MET_Topo', - 'MET_TopoObj_Comps','MET_TopoObj_Regions', - 'MET_Track_Comps','MET_Track_Regions', - 'MET_Comps', - 'MET_Track_Weights','MET_Cluster_Weights', - 'MET_Regions','MET_Composition'], - allowMissing=True )) - - - # HadronicRecoil blocks - - if addHadronicRecoil: - - alg += ElectronD3PDObject(0, sgkey = 'HR_selectedElectrons', prefix = 'hr_el_',allowMissing=True ) - alg += MuonD3PDObject( 0, sgkey = 'HR_selectedMuons', prefix = 'hr_mu_', allowMissing=True ) - - # ... DR = 0.15 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_15', prefix = 'hr_roughRecoil_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_15', prefix = 'hr_ueCorrection_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_15', prefix = 'hr_corrRecoil_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_15', prefix = 'hr_MET_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_15', prefix = 'hr_roughRecoil_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_15', prefix = 'hr_ueCorrection_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_15', prefix = 'hr_corrRecoil_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_15', prefix = 'hr_MET_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_track_15", prefix = "hr_roughRecoil_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_track_15", prefix = "hr_ueCorrection_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_track_15", prefix = "hr_corrRecoil_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "MET_HR_track_15", prefix = "hr_MET_track_15", - exclude=['MET_Regions','MET_Comps'] ) - - # ... DR = 0.20 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_20', prefix = 'hr_roughRecoil_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_20', prefix = 'hr_ueCorrection_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_20', prefix = 'hr_corrRecoil_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_20', prefix = 'hr_MET_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_track_20', prefix = 'hr_roughRecoil_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_track_20', prefix = 'hr_ueCorrection_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_track_20', prefix = 'hr_corrRecoil_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_track_20', prefix = 'hr_MET_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_clusNoTrack_20', prefix = 'hr_roughRecoil_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_clusNoTrack_20', prefix = 'hr_ueCorrection_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_clusNoTrack_20', prefix = 'hr_corrRecoil_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_clusNoTrack_20', prefix = 'hr_MET_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_20', prefix = 'hr_roughRecoil_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_20', prefix = 'hr_ueCorrection_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_20', prefix = 'hr_corrRecoil_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_20', prefix = 'hr_MET_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - # ... DR = 0.25 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_25', prefix = 'hr_roughRecoil_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_25', prefix = 'hr_ueCorrection_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_25', prefix = 'hr_corrRecoil_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_25', prefix = 'hr_MET_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_25', prefix = 'hr_roughRecoil_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_25', prefix = 'hr_ueCorrection_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_25', prefix = 'hr_corrRecoil_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_25', prefix = 'hr_MET_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_track_25", prefix = "hr_roughRecoil_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_track_25", prefix = "hr_ueCorrection_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_track_25", prefix = "hr_corrRecoil_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "MET_HR_track_25", prefix = "hr_MET_track_25", - exclude=['MET_Regions','MET_Comps'] ) - - - # HR using truth leptons - if rec.doTruth(): - - ## ... DR = 0.15 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_15", - prefix = "hr_roughRecoil_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_15", - prefix = "hr_ueCorrection_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_15", - prefix = "hr_corrRecoil_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_15", - prefix = "hr_MET_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_15", - prefix = "hr_roughRecoil_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_15", - prefix = "hr_ueCorrection_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_15", - prefix = "hr_corrRecoil_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_15", - prefix = "hr_MET_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_15", - prefix = "hr_roughRecoil_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_15", - prefix = "hr_ueCorrection_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_15", - prefix = "hr_corrRecoil_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_15", - prefix = "hr_MET_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - - ## ... DR = 0.20 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_20", - prefix = "hr_roughRecoil_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_20", - prefix = "hr_ueCorrection_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_20", - prefix = "hr_corrRecoil_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_20", - prefix = "hr_MET_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_20", - prefix = "hr_roughRecoil_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_20", - prefix = "hr_ueCorrection_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_20", - prefix = "hr_corrRecoil_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_20", - prefix = "hr_MET_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_20", - prefix = "hr_roughRecoil_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_20", - prefix = "hr_ueCorrection_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_20", - prefix = "hr_corrRecoil_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_20", - prefix = "hr_MET_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - - ## ... DR = 0.25 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_25", - prefix = "hr_roughRecoil_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_25", - prefix = "hr_ueCorrection_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_25", - prefix = "hr_corrRecoil_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_25", - prefix = "hr_MET_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_25", - prefix = "hr_roughRecoil_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_25", - prefix = "hr_ueCorrection_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_25", - prefix = "hr_corrRecoil_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_25", - prefix = "hr_MET_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_25", - prefix = "hr_roughRecoil_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_25", - prefix = "hr_ueCorrection_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_25", - prefix = "hr_corrRecoil_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_25", - prefix = "hr_MET_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - - - # Cluster block - - # ... all clusters, very low LOD - - if clusterContainer != 'None': - alg += ClusterD3PDObject (**_args ( 0, 'Clusters', kw, - sgkey = clusterContainer, - exclude='SamplingBasics', - allowMissing=True )) - - - # Track block - - # ... good tracks only (nSCT>=6; no pt cut) - - if trackContainer != 'None': - alg += xAODTrackParticleD3PDObject (**_args ( 3, 'TrackParticleCandidate', kw, - sgkey = trackContainer, - label = 'trk', - prefix = 'trk_', - allowMissing=True )) - - - # Primary vertex block - May be missing in single-beam data. - - alg += PrimaryxAODVertexD3PDObject (**_args (1, 'PrimaryVertex', kw, - sgkey = D3PDMakerFlags.VertexSGKey(), - prefix = 'vxp_', - allowMissing=True )) - - # Truth - - if rec.doTruth(): - - from TruthD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject - from MuonD3PDMaker.TruthMuonD3PDObject import TruthMuonD3PDObject - alg += TruthMuonD3PDObject (**_args ( 2, 'TruthMuon', kw)) - - from AthenaCommon.AppMgr import ToolSvc - from TruthD3PDAnalysis.TruthD3PDAnalysisConf import D3PD__GenObjectsFilterTool - - # ... remove empty GenEvents - - smlightGenEvtFilterTool = D3PD__GenObjectsFilterTool( "smlightGenEvtFilterTool" ) - ToolSvc += smlightGenEvtFilterTool - smlightGenEvtFilterTool.RemoveDummyEvents = True - smlightGenEvtFilterTool.RemoveInTimePileUp = True - smlightGenEvtFilterTool.Remove2BCPileUp = True - smlightGenEvtFilterTool.Remove800nsPileUp = True - smlightGenEvtFilterTool.RemoveCavernBkg = True - smlightGenEvtFilterTool.RemoveEmptyEvents = True - - from TruthD3PDMaker.GenEventD3PDObject import GenEventD3PDObject - alg += GenEventD3PDObject (**_args ( 0, 'GenEvent', kw, filter = smlightGenEvtFilterTool )) - - - - # ... leptonic W/Z truth information - - smlightLepWZFilterTool = D3PD__GenObjectsFilterTool( "smlightLepWZFilterTool" ) - ToolSvc += smlightLepWZFilterTool - - smlightLepWZFilterTool.RemoveInTimePileUp = True - smlightLepWZFilterTool.Remove2BCPileUp = True - smlightLepWZFilterTool.Remove800nsPileUp = True - smlightLepWZFilterTool.RemoveCavernBkg = True - smlightLepWZFilterTool.RemoveEmptyEvents = True - smlightLepWZFilterTool.RemoveDummyEvents = True - smlightLepWZFilterTool.RemoveUnrequestedParticles=True - smlightLepWZFilterTool.KeepLeptonicWZBosons=True - smlightLepWZFilterTool.KeepLeptonicWZBosonDecayChains=True - smlightLepWZFilterTool.KeepLeptonicWZBosonsParents=True - - from TruthD3PDMaker.GenParticleD3PDObject import GenParticleD3PDObject - alg += GenParticleD3PDObject( **_args(10, "lepwzgenparticle", kw, prefix='mclepwzpart_', - filter = smlightLepWZFilterTool, - label = "LepWZTruthD3PDObject", - exclude = ["GenPartProdVertexAssoc","GenPartDecayVertexAssoc"], - GenParticle_WriteMotherType=False, - GenParticle_WriteMotherBarcode=False, - GenPartMotherAssoc_target="LepWZTruthD3PDObject", - GenPartChildAssoc_target="LepWZTruthD3PDObject" - ) - ) - - - if not rec.doTruth(): - alg += BeamSpotD3PDObject(10) - - - # Trigger - - if D3PDMakerFlags.DoTrigger(): - -# RedefineTriggerBits(alg, 'EF*') -# alg += SMTrilepTriggerBitsD3PDObject (**_args (10, 'SMTrilepTriggerBits', kw)) - - alg += TrigDecisionD3PDObject (**_args(10, 'TrigDecision', kw)) - addTrigConfMetadata(alg) - - # Bunch group info - - alg += BGCodeD3PDObject (**_args (2, 'BGCode', kw)) - - # Egamma and Mu - - TrigEgammaD3PDObjects (alg, 1) - TrigMuonD3PDObjects( alg, 1) - -# Event metadata - - alg.MetadataTools += [LBMetadataConfig()] - - if D3PDMakerFlags.FilterCollCand(): - from CaloD3PDMaker.CollisionFilterAlg import CollisionFilterAlg - alg.filterSeq += CollisionFilterAlg (tuplename + '_CollCandFilter') - - return alg diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZD3PD.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZD3PD.py deleted file mode 100644 index 09ae9af0672bac6e9e992f906a23a1ddbeafe430..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZD3PD.py +++ /dev/null @@ -1,896 +0,0 @@ -# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration - - - -# $Id: SMWZD3PD.py 566871 2013-10-23 21:04:01Z ssnyder $ -# -# @file PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZD3PD.py -# @author maarten boonekamp <maarten.boonekamp@cea.fr> -# @date Sep, 2009 -# @brief Construct a Standard Model WZ physics D3PD. -# - - -import D3PDMakerCoreComps -from D3PDMakerCoreComps.resolveSGKey import testSGKey - -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags - -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr - -# event - -from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject -from EventCommonD3PDMaker.LBMetadataConfig import LBMetadataConfig - -### EventShape variables Bertrand -from QcdD3PDMaker.QcdEventShapeD3PDObject import EventShapeD3PDObject - -# eletron/photon - -from egammaD3PDMaker.ElectronD3PDObject import ElectronD3PDObject -from egammaD3PDMaker.GSFElectronD3PDObject import GSFElectronD3PDObject -from egammaD3PDMaker.PhotonD3PDObject import PhotonD3PDObject -from egammaD3PDMaker.egammaTriggerBitsD3PDObject import egammaTriggerBitsD3PDObject - -# muons - -from MuonD3PDMaker.MuonD3PDObject import MuonD3PDObject -from MuonD3PDMaker.MuonSegmentD3PDObject import MuonSegmentD3PDObject -from MuonD3PDMaker.MuonTriggerBitsD3PDObject import MuonTriggerBitsD3PDObject - -# jet - -from JetD3PDMaker.JetD3PDObject import JetD3PDObject - -# tau - -from TauD3PDMaker.TauD3PDObject import TauD3PDObject -from TauD3PDMaker.makeTrackFilterAlg import makeTrackFilterAlg - -# calo - -from CaloD3PDMaker.MBTSD3PDObject import MBTSD3PDObject -from CaloD3PDMaker.MBTSTimeD3PDObject import MBTSTimeD3PDObject -from CaloD3PDMaker.MBTSTriggerBitsD3PDObject import MBTSTriggerBitsD3PDObject -from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject -from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject -from CaloD3PDMaker.ClusterD3PDObject import ClusterD3PDObject -from CaloD3PDMaker.EMClusterD3PDObject import EMClusterD3PDObject -from CaloD3PDMaker.makeClusterFilter import makeClusterFilter - -# baseline track config - -from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags - -TrackD3PDFlags.doTruth = True -TrackD3PDFlags.storeDetailedTruth = False -TrackD3PDFlags.storeDiagonalCovarianceAsErrors = True -TrackD3PDFlags.storeHitTruthMatching = True -TrackD3PDFlags.storePixelHitsOnTrack = False -TrackD3PDFlags.storePixelHolesOnTrack = False -TrackD3PDFlags.storePixelOutliersOnTrack = False -TrackD3PDFlags.storeSCTHitsOnTrack = False -TrackD3PDFlags.storeSCTHolesOnTrack = False -TrackD3PDFlags.storeSCTOutliersOnTrack = False -TrackD3PDFlags.storeTRTHitsOnTrack = False -TrackD3PDFlags.storeTRTHolesOnTrack = False -TrackD3PDFlags.storeTRTOutliersOnTrack = False -TrackD3PDFlags.storeTrackFitQuality = True -TrackD3PDFlags.storeTrackInfo = False -TrackD3PDFlags.storeTrackMomentum = True -TrackD3PDFlags.storeTrackPredictionAtBLayer = False -TrackD3PDFlags.storeTrackSummary = True -TrackD3PDFlags.storeTrackSummary.IDOutliers = True -TrackD3PDFlags.storeTrackSummary.PixelInfoPlus = True -TrackD3PDFlags.storeTrackSummary.SCTInfoPlus = True -TrackD3PDFlags.storeTrackSummary.TRTInfoPlus = True -TrackD3PDFlags.trackParametersAtBeamSpotLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtGlobalPerigeeLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtPrimaryVertexLevelOfDetails = 1 - -from TrackD3PDMaker.xAODTrackD3PDObject import xAODTrackParticleD3PDObject - -# PV config - -TrackD3PDFlags.storeVertexFitQuality = True -TrackD3PDFlags.storeVertexKinematics = True -TrackD3PDFlags.storeVertexPurity = False -TrackD3PDFlags.storeVertexTrackAssociation = False -TrackD3PDFlags.storeVertexTrackIndexAssociation = True -TrackD3PDFlags.vertexPositionLevelOfDetails = 2 - -from TrackD3PDMaker.xAODVertexD3PDObject import PrimaryxAODVertexD3PDObject - -# BeamSpot / MinBias - -from InDetD3PDMaker.BeamSpotD3PDObject import BeamSpotD3PDObject - -# MET - -from MissingETD3PDMaker.MissingETD3PDMakerFlags import MissingETD3PDMakerFlags -from MissingETD3PDMaker.MissingETD3PDObject import * -from MissingETD3PDMaker.MissingETD3PDTriggerBitsObject import * -from MissingET.METRefGetter_plup import * -MissingETD3PDMakerFlags.doCellOutEflow=True -MissingETD3PDMakerFlags.METDefaultJetCollectionSGKey = 'AntiKt4LCTopoJets' -MissingETD3PDMakerFlags.METDefaultJetPrefix = "jet_AntiKt4LCTopo_MET_" - -# Trigger - -from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject -from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata -from TriggerD3PDMaker.BGCodeD3PDObject import BGCodeD3PDObject -from TrigEgammaD3PDMaker.TrigEgammaD3PD import TrigEgammaD3PDObjects -from TrigMuonD3PDMaker.TrigMuonD3PD import TrigMuonD3PDObjects -from TriggerD3PDMaker.EnergySumROID3PDObject import EnergySumROID3PDObject -#from TrigMissingETD3PDMaker.TrigMETD3PDObject import TrigMETD3PDObject -from TrigMissingETD3PDMaker.TrigMETD3PD import TrigMETD3PDObjects -from PhysicsD3PDMaker.SMWZTriggerBitsD3PDObject import SMWZTriggerBitsD3PDObject - -from TrigBJetD3PDMaker.TrigBJetD3PD import TrigBJetD3PDObjects - - - -from RecExConfig.RecFlags import rec -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - - -def _args (level, name, kwin, **kw): - kw = kw.copy() - kw['level'] = level - for (k, v) in kwin.items(): - if k.startswith (name + '_'): - kw[k[len(name)+1:]] = v - return kw - - -def add_met1 (alg, cone, truthLep = False, add_pieces = []): - exc = ['MET_Regions','MET_Comps'] - tl_key = 'TruthLep_' if truthLep else '' - tl_pfx = 'trLep_' if truthLep else '' - key0 = 'RefinedRecoil_' if truthLep else 'MET_HR_' - - for piece in ['', 'Eflow_', 'track_'] + add_pieces: - key_suff = tl_key + piece + cone - pfx_suff = tl_pfx + piece + cone - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_" + key_suff, - prefix = "hr_roughRecoil_" + pfx_suff, - exclude= exc) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_" + key_suff, - prefix = "hr_ueCorrection_" + pfx_suff, - exclude= exc) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_" + key_suff, - prefix = "hr_corrRecoil_" + pfx_suff, - exclude=exc ) - alg += MissingETD3PDObject( 0, sgkey = key0 + key_suff, - prefix = "hr_MET_" + pfx_suff, - exclude=exc ) - - - return - -def add_met (alg): - - METRefAlg_HSG5 = make_METRefAlg(_suffix='_HSG5') - METRefAlg_HSG5.sequence = AlgSequence( D3PDMakerFlags.PreD3PDAlgSeqName() ) - METRefAlg_HSG5.jet_JetInputCollectionKey = "AntiKt4TopoEMJets" - METRefAlg_HSG5.jet_JetPtCut = 20.0*GeV - METRefAlg_HSG5.jet_ApplyJetScale = "No" - METRefAlg_HSG5.jet_UseJetMomentForScale = True - METRefAlg_HSG5.jet_JetMomentForScale = "EMJES" - METRefAlg_HSG5.jet_RunSoftJetsTool = False - METRefAlg_HSG5.jet_SoftJetsPtCut = 7.0*GeV - METRefAlg_HSG5.jet_SoftJetsMaxPtCut = 20.0*GeV - METRefAlg_HSG5.photon_doPhotonTool = False - METRefAlg_HSG5.tau_doTauTool = False - METRefAlg_HSG5.jet_SoftJetsCalibType = "EmScale" - METRefAlg_HSG5.jet_ApplySoftJetsScale = "No" - METRefAlg_HSG5.jet_calibType = "ExclRefCalib" - METRefAlg_HSG5.ele_calibType = "RefCalib" - METRefAlg_HSG5.gamma_calibType = "EmScale" - METRefAlg_HSG5.cellout_calibType = "Eflow" - METRefAlg_HSG5.tau_calibType = "EmScale" - METRefAlg_HSG5.cryo_ApplyCorrection = "Off" - METRefAlg_HSG5.muon_container = "MuidMuonCollection" - METRefAlg_HSG5.muon_algorithm = "Muid" - METRefAlg_HSG5.muon_isolationAlg = "dRJet" - # METRefAlg_HSG5.jet_ApplyJetJVF = "Yes" - # METRefAlg_HSG5.plupSuppCorr ='STVF' - # METRefAlg_HSG5.celloutCorrection ='STVF' - print METRefAlg_HSG5 - METRefAlg_HSG5() - - customMETs = ['MET_RefFinal', 'MET_RefGamma', 'MET_RefEle', 'MET_RefTau', 'MET_RefJet', - 'MET_CellOut', 'MET_Cryo', 'MET_SoftJets', - 'MET_RefJet_JVF', 'MET_RefJet_JVFCut', - 'MET_CellOut_Eflow_STVF', 'MET_CellOut_Eflow_JetArea', - 'MET_RefFinal_STVF' ] - - for custom in customMETs: - alg += MissingETD3PDObject (level=0, sgkey = custom+'_HSG5',prefix='MET_HSG5_'+custom[4:], - allowMissing=True) - - alg += MissingETCompositionD3PDObject ( level=4, sgkey = 'MET_RefComposition_HSG5', suffix='HSG5_', allowMissing =True, - jetSGKey='AntiKt4TopoEMJets', jetPrefix='jet_AntiKt4TopoEMJet_MET_') - - # adding STVF weights - # alg += MissingETCompositionD3PDObject ( level=4, - # sgkey = 'MET_RefComposition_HSG5', - # suffix='STVF_', - # allowMissing=True, - # jetSGKey='AntiKt4TopoEMJets', - # jetPrefix='jet_AntiKt4TopoEMJets_MET_') - # exclude = ['MET_Muid_Weights','MET_Muons_Weights'] - - # HadronicRecoil blocks - - alg += ElectronD3PDObject(0, sgkey = "HR_selectedElectrons", prefix = "hr_el_") - alg += MuonD3PDObject( 0, sgkey = "HR_selectedMuons", prefix = "hr_mu_" ) - - - add_met1 (alg, '15') - add_met1 (alg, '20', add_pieces = ['clusNoTrack_']) - add_met1 (alg, '25') - - - # HR using truth leptons - if rec.doTruth(): - add_met1 (alg, '15', True) - add_met1 (alg, '20', True) - add_met1 (alg, '25', True) - return - - -def SMWZD3PD (alg = None, - file = 'smwz.root', - tuplename = 'physics', - streamname = 'd3pdstream', - doSoftQCD = False, - doThirdMuonChain = True, - stdElectronContainer = D3PDMakerFlags.ElectronSGKey(), - gsfElectronContainer = D3PDMakerFlags.GSFElectronSGKey(), - muonContainer = 'None', # can be 'Muons' for third muon chain - stacoMuonContainer = 'StacoMuonCollection', - muidMuonContainer = 'MuidMuonCollection', - caloMuonContainer = 'CaloMuonCollection', - photonContainer = D3PDMakerFlags.PhotonSGKey(), - tauContainer = D3PDMakerFlags.TauSGKey(), - jetEM4Container = 'AntiKt4TopoEMJets', #Commented by Bertrand - jetEM6Container = 'AntiKt6TopoEMJets', - jetLC4Container = 'AntiKt4LCTopoJets', - jetLC6Container = 'AntiKt6LCTopoJets', - #jetEM4Container = 'AntiKt4TopoEMJetsReTagged', - #jetEM6Container = 'AntiKt6TopoEMJetsReTagged', - #jetLC4Container = 'AntiKt4LCTopoJetsReTagged', - #jetLC6Container = 'AntiKt6LCTopoJetsReTagged', - jetDetails = 3, # for the moment only level 2 and 3 are defined - METDetails = 3, # for the moment only level 2 and 3 are defined - **kw): - - if doThirdMuonChain and muonContainer == 'None': - muonContainer = 'Muons' - - # define associations - - if not PhotonD3PDObject.allBlocknames().has_key('RecoveryMatch'): - from PhotonD3PDMaker.PhotonRecoveryAssociation import PhotonRecoveryAssociation - if (stdElectronContainer != 'None'): - PhotonRecoveryAssoc = PhotonRecoveryAssociation(PhotonD3PDObject, - 'ElectronContainer', - stdElectronContainer, - prefix = 'el_', - blockname = 'RecoveryMatch', - target = 'ph_ElectronRecovered_') - - # define track and cluster filters - - preseq = AlgSequence (D3PDMakerFlags.PreD3PDAlgSeqName()) - - if not hasattr( preseq, "GoodTracks" ): - filter1 = makeTrackFilterAlg(TracksName = D3PDMakerFlags.TrackSGKey(), - OutputTracksName='GoodTracks', - ptCut=0.,nSCTPix=4) - preseq += filter1 - - if not hasattr( preseq, "HighPtTracks" ): - filter2 = makeTrackFilterAlg(TracksName = D3PDMakerFlags.TrackSGKey(), - OutputTracksName='HighPtTracks', - ptCut=4000.,nSCTPix=4) - preseq += filter2 - - if not hasattr( preseq, "HighPtClusters" ): - filter3 = makeClusterFilter(InputName = D3PDMakerFlags.ClusterSGKey(), - OutputName = 'HighPtClusters', - ptCut=10000.) - preseq += filter3 - - if not hasattr( preseq, "HighPtEMClusters" ): - filter4 = makeClusterFilter(InputName = D3PDMakerFlags.EMTopoClusterSGKey(), - OutputName = 'HighPtEMClusters', - ptCut=10000.) - preseq += filter4 - - - # perform recoil calculation - - import HadronicRecoil.Configurables as hrc - preseq = hrc.add_hadronic_recoil_filters(preseq) - - - # beam background stuff - - from RecBackgroundAlgs.RecBackgroundAlgsConf import BeamBackgroundFiller - if not hasattr( preseq, "BeamBackgroundFiller" ): - BeamBackgroundFiller=BeamBackgroundFiller() - preseq += BeamBackgroundFiller - - - - # now configure the D3PD - - if not alg: - alg = MSMgr.NewRootStream(StreamName = streamname, FileName = file, TreeName = tuplename) - - - alg += EventInfoD3PDObject (**_args (10, 'EventInfo', kw)) - alg += LArCollisionTimeD3PDObject (**_args (10, 'LArCollisionTime', kw)) - - from TriggerD3PDMaker.BunchStructureMetadata import addBunchStructureMetadata - addBunchStructureMetadata (alg) - - from BackgroundD3PDMaker.BeamBackgroundD3PDObject import BeamBackgroundD3PDObject - from BackgroundD3PDMaker.BackgroundWordD3PDObject import BackgroundWordD3PDObject - alg += BackgroundWordD3PDObject (**_args(0, 'BkgWord', kw)) - alg += BeamBackgroundD3PDObject(1) - - - # Electron/Photon blocks - - if (stdElectronContainer != 'None'): - alg += ElectronD3PDObject (**_args (10, 'Electron', kw, sgkey = stdElectronContainer)) - - if (gsfElectronContainer != 'None') and testSGKey ('ElectronContainer', gsfElectronContainer): - alg += GSFElectronD3PDObject (**_args (10, 'GSFElectron', kw, - sgkey = gsfElectronContainer, - prefix = 'el_gsf_')) - - if (photonContainer != 'None'): - alg += PhotonD3PDObject (**_args (10, 'Photon', kw, sgkey = photonContainer)) - - - # Muon blocks - -### Third muon chain variables! - if (muonContainer != 'None'): - alg += MuonD3PDObject (**_args (10, 'Muon', kw, - sgkey=muonContainer, prefix='mu_', - include = ["EFCBInfoIndex", "EFMGInfoIndex", "EFMEInfoIndex", - "L2CBInfoIndex", "L1InfoIndex"], - exclude = ["EFCBInfo", "EFMGInfo", "EFMEInfo", "L2CBInfo", "L1Info"], - allowMissing = True )) -### Third muon chain variables! - - if (muidMuonContainer != 'None'): - alg += MuonD3PDObject (**_args (10, 'MuidMuon', kw, - sgkey=muidMuonContainer, prefix='mu_muid_', - include = ["EFCBInfoIndex", "EFMGInfoIndex", "EFMEInfoIndex", - "L2CBInfoIndex", "L1InfoIndex"], - exclude = ["EFCBInfo", "EFMGInfo", "EFMEInfo", "L2CBInfo", "L1Info"], - allowMissing = True )) - - if (stacoMuonContainer != 'None'): - alg += MuonD3PDObject (**_args (10, 'StacoMuon', kw, - sgkey=stacoMuonContainer, prefix='mu_staco_', - include = ["EFCBInfoIndex", "EFMGInfoIndex", "EFMEInfoIndex", - "L2CBInfoIndex", "L1InfoIndex"], - exclude = ["EFCBInfo", "EFMGInfo", "EFMEInfo", "L2CBInfo", "L1Info"], - allowMissing = True )) - - if (caloMuonContainer != 'None'): - alg += MuonD3PDObject (**_args (10, 'CaloMuon', kw, - sgkey=caloMuonContainer, prefix='mu_calo_', - include = ["MuonHitSummary", "Authors", "Likelihood", - "Isolation", "CaloEnergyLoss", "Quality"] )) - - # Tau block - - if (tauContainer != 'None'): - alg += TauD3PDObject (**_args ( 1, 'Tau', kw, sgkey = tauContainer)) - - - # Jet blocks - from JetTagD3PDMaker.JetTagD3PDMakerFlags import JetTagD3PDFlags - from JetTagD3PDMaker.JetTagD3PDMakerKeys import JetTagD3PDKeys - - ## add MSV target to the jetd3pd object properties - if not kw.has_key ('AK4TopoEMJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target'): - kw['AK4TopoEMJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target']= JetTagD3PDKeys.MSVVtxInfoInJetGetterLabel() - if not kw.has_key ('AK6TopoEMJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target'): - kw['AK6TopoEMJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target']= JetTagD3PDKeys.MSVVtxInfoInJetGetterLabel() - - ## add track index for IPInfoPlus - if not kw.has_key ('AK4TopoEMJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target'): - kw['AK4TopoEMJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6TopoEMJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target'): - kw['AK6TopoEMJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target']= "trk" - ## add track index for SVInfoPlus - if not kw.has_key ('AK4TopoEMJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target'): - kw['AK4TopoEMJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6TopoEMJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target'): - kw['AK6TopoEMJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target']= "trk" - ## add track index for SV0InfoPlus - if not kw.has_key ('AK4TopoEMJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target'): - kw['AK4TopoEMJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6TopoEMJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target'): - kw['AK6TopoEMJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target']= "trk" - - - ## add MSV target to the jetd3pd object properties - if not kw.has_key ('AK4LCTopoJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target'): - kw['AK4LCTopoJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target']= JetTagD3PDKeys.MSVVtxInfoInJetGetterLabel() - if not kw.has_key ('AK6LCTopoJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target'): - kw['AK6LCTopoJet_'+JetTagD3PDKeys.MultiSVInfoPlusMSVVtxAssocBlockName()+'_target']= JetTagD3PDKeys.MSVVtxInfoInJetGetterLabel() - - ## add track index for IPInfoPlus - if not kw.has_key ('AK4LCTopoJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target'): - kw['AK4LCTopoJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6LCTopoJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target'): - kw['AK6LCTopoJet_'+JetTagD3PDKeys.IPInfoPlusTrackAssocBlockName()+'_target']= "trk" - ## add track index for SVInfoPlus - if not kw.has_key ('AK4LCTopoJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target'): - kw['AK4LCTopoJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6LCTopoJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target'): - kw['AK6LCTopoJet_'+JetTagD3PDKeys.SVInfoPlusTrackAssocBlockName()+'_target']= "trk" - ## add track index for SV0InfoPlus - if not kw.has_key ('AK4LCTopoJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target'): - kw['AK4LCTopoJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target']= "trk" - if not kw.has_key ('AK6LCTopoJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target'): - kw['AK6LCTopoJet_'+JetTagD3PDKeys.SV0InfoPlusTrackAssocBlockName()+'_target']= "trk" - - if jetDetails == 3: - jetInclude = JetTagD3PDFlags.StdInfoInclude()+[JetTagD3PDKeys.MultiSVInfoPlusBlockName()] - jetInclude += [JetTagD3PDKeys.JetFitterCharmTagInfoBlockName(), JetTagD3PDKeys.JetFitterCharmInfoBaseBlockName()] - else: - jetInclude = [ JetTagD3PDKeys.BTagWeightsBlockName(), JetTagD3PDKeys.TruthInfoBlockName() ] - - - if (jetEM4Container != 'None'): - alg += JetD3PDObject (**_args ( 4, 'AK4TopoEMJet', kw, - sgkey=jetEM4Container, prefix='jet_AntiKt4TopoEM_', - include = jetInclude+['BeamBackground','ConstituentScale','TracksMoments'], - JetVertexFraction_FromUD=False, - JetVertexFraction_FillFullJVF=False, - allowMissing = True)) - - if (jetEM6Container != 'None'): - alg += JetD3PDObject (**_args ( 4, 'AK6TopoEMJet', kw, - sgkey=jetEM6Container, prefix='jet_AntiKt6TopoEM_', - include = jetInclude+['BeamBackground','ConstituentScale','TracksMoments'], - JetVertexFraction_FromUD=False, - JetVertexFraction_FillFullJVF=False, - allowMissing = True)) - - if (jetLC4Container != 'None'): - alg += JetD3PDObject (**_args ( 4, 'AK4LCTopoJet', kw, - sgkey=jetLC4Container, prefix='jet_AntiKt4LCTopo_', - include = jetInclude+['BeamBackground','ConstituentScale','TracksMoments'], - JetVertexFraction_FromUD=False, - JetVertexFraction_FillFullJVF=False, - allowMissing = True)) - - if (jetLC6Container != 'None'): - alg += JetD3PDObject (**_args ( 4, 'AK6LCTopoJet', kw, - sgkey=jetLC6Container, prefix='jet_AntiKt6LCTopo_', - include = jetInclude+['BeamBackground','ConstituentScale','TracksMoments'], - JetVertexFraction_FromUD=False, - JetVertexFraction_FillFullJVF=False, - allowMissing = True)) - - - ### add the MSV block - MSVJetCollections = [] - if (jetEM4Container != 'None'): - MSVJetCollections += [jetEM4Container] - if (jetEM6Container != 'None'): - MSVJetCollections += [jetEM6Container] - if (jetLC4Container != 'None'): - MSVJetCollections += [jetLC4Container] - if (jetLC6Container != 'None'): - MSVJetCollections += [jetLC6Container] - ### link multisv to tracks - if not kw.has_key ('msvvtxinfo_JetTag_JetMultiSVVtxAssoc_target'): - kw['msvvtxinfo_JetTag_JetMultiSVVtxAssoc_target']= "trk" - - from JetTagD3PDMaker.JetTagMSVVtxInJetD3PDObject import getJetTagMSVVtxInfoInJetD3PDObject - alg += getJetTagMSVVtxInfoInJetD3PDObject(**_args(1,"msvvtxinfo", kw, - jetCollections=MSVJetCollections) - ) - - from TopInputsD3PDMaker.HforD3PDObject import HforD3PDObject - alg += HforD3PDObject(**_args (0, 'HforInfo', kw)) - - - # MET blocks - # a whole mess to remove x,y components separately for all flavours - - if METDetails >= 3: - alg += MissingETD3PDObject (**_args (10, 'MissingET', kw, - exclude=['MET_Base', 'MET_Base0', 'MET_Truth_Int', - 'MET_RefFinal_Comps','MET_Calib_Comps','MET_CellOut_Comps', - 'MET_CorrTopo_Comps','MET_Cryo_Comps','MET_CryoCone_Comps', - 'MET_Final_Comps','MET_LocHadTopo_Comps', - 'MET_LocHadTopoObj_Comps','MET_Muid_Comps', - 'MET_Muid_Spectro_Comps','MET_Muid_Track_Comps', - 'MET_MuonBoy_Comps','MET_MuonBoy_Spectro_Comps', - 'MET_MuonBoy_Track_Comps','MET_MuonMuid_Comps', - 'MET_Muon_Comps','MET_Muon_Isol_Muid_Comps', - 'MET_Muon_Isol_Staco_Comps','MET_Muon_NonIsol_Muid_Comps', - 'MET_Muon_NonIsol_Staco_Comps','MET_Muon_Total_Muid_Comps', - 'MET_Muon_Total_Staco_Comps','MET_RefEle_Comps', - 'MET_RefEle_em_Comps','MET_RefGamma_Comps', - 'MET_RefGamma_em_Comps','MET_RefJet_Comps', - 'MET_RefJet_em_Comps','MET_RefMuon_Comps', - 'MET_RefMuon_Muid_Comps','MET_RefMuon_Staco_Comps', - 'MET_RefMuon_Track_Muid_Comps','MET_RefMuon_Track_Staco_Comps', - 'MET_RefMuon_Track_em_Comps','MET_RefMuon_Track_Comps', - 'MET_RefMuon_em_Comps','MET_RefTau_Comps', - 'MET_RefTau_em_Comps','MET_SoftJets_Comps', - 'MET_SoftJets_em_Comps','MET_Topo_Comps', - 'MET_TopoObj_Comps','MET_Track_Comps','MET_Comps', - 'MET_Track_Weights','MET_Cluster_Weights'], - allowMissing=True)) - elif METDetails > 0: - alg += MissingETD3PDObject (**_args (10, 'MissingET', kw, - exclude=['MET_Base','MET_Base0','MET_Truth', - 'MET_CellOut_Comps','MET_CellOut_Regions', - 'MET_CellOut_em_Comps','MET_CellOut_em_Regions', - 'MET_CellOut_Eflow_Comps','MET_CellOut_Eflow_Regions', - 'MET_Calib', - 'MET_CorrTopo', - 'MET_Cryo', - 'MET_CryoCone', - 'MET_Final', - 'MET_LocHadTopo_Comps', - 'MET_LocHadTopoObj', - 'MET_Muid', - 'MET_Muid_Spectro', - 'MET_Muid_Track', - 'MET_MuonBoy_Regions', - 'MET_MuonBoy_Spectro', - 'MET_MuonBoy_Track', - 'MET_MuonMuid', - 'MET_Muon', - 'MET_Muon_Isol_Muid', - 'MET_Muon_Isol_Staco', - 'MET_Muon_NonIsol_Muid', - 'MET_Muon_NonIsol_Staco', - 'MET_Muon_Total_Muid', - 'MET_Muon_Total_Staco', - 'MET_RefEle_Comps','MET_RefEle_Regions', - 'MET_RefEle_em_Comps','MET_RefEle_em_Regions', - 'MET_RefGamma_Comps','MET_RefGamma_Regions', - 'MET_RefGamma_em_Comps','MET_RefGamma_em_Regions', - 'MET_RefJet_Comps','MET_RefJet_Regions', - 'MET_RefJet_em_Comps','MET_RefJet_em_Regions', - 'MET_RefMuon_Comps','MET_RefMuon_Regions', - 'MET_RefMuon_Muid_Comps','MET_RefMuon_Muid_Regions', - 'MET_RefMuon_Staco_Comps','MET_RefMuon_Staco_Regions', - 'MET_RefMuon_Track_Muid_Comps','MET_RefMuon_Track_Muid_Regions', - 'MET_RefMuon_Track_Staco_Comps','MET_RefMuon_Track_Staco_Regions', - 'MET_RefMuon_Track_em_Comps','MET_RefMuon_Track_em_Regions', - 'MET_RefMuon_Track_Comps','MET_RefMuon_Track_Regions', - 'MET_RefMuon_em_Comps','MET_RefMuon_em_Regions', - 'MET_RefTau_Comps','MET_RefTau_Regions', - 'MET_RefTau_em_Comps','MET_RefTau_em_Regions', - 'MET_SoftJets_Comps','MET_SoftJets_Regions', - 'MET_SoftJets_em_Comps','MET_SoftJets_em_Regions', - 'MET_Topo', - 'MET_TopoObj_Comps','MET_TopoObj_Regions', - 'MET_Track_Comps','MET_Track_Regions', - 'MET_Track_Weights','MET_Cluster_Weights', - 'MET_Comps' - ], - allowMissing=True )) - - - if METDetails > 0: - add_met (alg) - - - # track and cluster blocks - - # ... all clusters, very low LOD - - alg += ClusterD3PDObject (**_args ( 0, 'Clusters1', kw, - exclude='SamplingBasics')) - - # ... higher LOD for pt>10 GeV - - alg += ClusterD3PDObject (**_args ( 2, 'Clusters2', kw, - sgkey = 'HighPtClusters', - prefix = 'clpt10_')) - - alg += ClusterD3PDObject (**_args ( 3, 'Clusters3', kw, - sgkey = 'HighPtEMClusters', - prefix = 'emclpt10_')) - - from TrackD3PDMaker.xAODTrackD3PDObject import xAODTrackD3PDObject - - # ... good tracks only (nSCT>3; no pt cut) - - # turn on detailed track info if writing SoftQCD version of D3PD - if doSoftQCD : - - from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags as softQcdFlags - - softQcdFlags.doTruth = True - softQcdFlags.storeDetailedTruth = False - softQcdFlags.storeDiagonalCovarianceAsErrors = True - softQcdFlags.storeHitTruthMatching = True - softQcdFlags.storePixelHitsOnTrack = False - softQcdFlags.storePixelHolesOnTrack = False - softQcdFlags.storePixelOutliersOnTrack = False - softQcdFlags.storeSCTHitsOnTrack = False - softQcdFlags.storeSCTHolesOnTrack = False - softQcdFlags.storeSCTOutliersOnTrack = False - softQcdFlags.storeTRTHitsOnTrack = False - softQcdFlags.storeTRTHolesOnTrack = False - softQcdFlags.storeTRTOutliersOnTrack = False - softQcdFlags.storeTrackFitQuality = True - softQcdFlags.storeTrackInfo = True - softQcdFlags.storeTrackMomentum = True - softQcdFlags.storeTrackPredictionAtBLayer = True - softQcdFlags.storeTrackSummary = True - softQcdFlags.trackParametersAtBeamSpotLevelOfDetails = 0 - softQcdFlags.trackParametersAtGlobalPerigeeLevelOfDetails = 2 - softQcdFlags.trackParametersAtPrimaryVertexLevelOfDetails = 2 - - SoftQCDTrackParticleD3PDObject = xAODTrackD3PDObject(_label='trk', - _prefix='trk_', - _sgkey='GoodTracks', - flags=softQcdFlags) - - alg += SoftQCDTrackParticleD3PDObject(**_args ( 3, 'Tracks1', kw, - sgkey = 'GoodTracks', - label = 'trk', - prefix = 'trk_')) - - else : - - # ... use standard level of track info for 'GoodTracks' - - alg += xAODTrackParticleD3PDObject (**_args ( 3, 'Tracks1', kw, - sgkey = 'GoodTracks', - label = 'trk', - prefix = 'trk_')) - - # ... high-pt tracks (nSCT>3; pt>5 GeV) - - from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags as highPtFlags - highPtFlags.doTruth = True - highPtFlags.storeDiagonalCovarianceAsErrors = True - highPtFlags.storeHitTruthMatching = True - highPtFlags.storePixelHitsOnTrack = False - highPtFlags.storePixelHolesOnTrack = False - highPtFlags.storePixelOutliersOnTrack = False - highPtFlags.storeSCTHitsOnTrack = False - highPtFlags.storeSCTHolesOnTrack = False - highPtFlags.storeSCTOutliersOnTrack = False - highPtFlags.storeTRTHitsOnTrack = False - highPtFlags.storeTRTHolesOnTrack = False - highPtFlags.storeTRTOutliersOnTrack = False - highPtFlags.storeTrackFitQuality = True - highPtFlags.storeTrackMomentum = True - highPtFlags.storeTrackSummary = True - highPtFlags.storeTrackSummary.IDOutliers = True - highPtFlags.storeTrackSummary.PixelInfoPlus = True - highPtFlags.storeTrackSummary.SCTInfoPlus = True - highPtFlags.storeTrackSummary.TRTInfoPlus = True - highPtFlags.storeTrackSummary.InfoPlus = True - highPtFlags.trackParametersAtBeamSpotLevelOfDetails = 0 - highPtFlags.trackParametersAtGlobalPerigeeLevelOfDetails = 2 - highPtFlags.trackParametersAtPrimaryVertexLevelOfDetails = 3 - - HighPtTrackParticleD3PDObject = xAODTrackD3PDObject(_label='trkpt4', - _prefix='trkpt4_', - _sgkey='HighPtTracks', - flags=highPtFlags) - - alg += HighPtTrackParticleD3PDObject(**_args ( 3, 'Tracks2', kw, - sgkey = 'HighPtTracks', - label = 'trkpt4', - prefix = 'trkpt4_')) - - - # Primary vertex block - May be missing in single-beam data. - - alg += PrimaryxAODVertexD3PDObject (**_args (1, 'PrimaryVertex', kw, - allowMissing = True, - sgkey = D3PDMakerFlags.VertexSGKey(), - prefix = 'vxp_')) - - # MBTS - - alg += MBTSD3PDObject (**_args (10, 'MBTS', kw)) - alg += MBTSTimeD3PDObject (**_args (10, 'MBTSTime', kw)) - alg += MBTSTriggerBitsD3PDObject (**_args (10, 'MBTSTriggerBits', kw)) - #alg += CollisionDecisionD3PDObject(**_args (10, 'CollisionDecision', kw)) - - - ### EventShape variables Bertrand - alg += EventShapeD3PDObject(**_args(0, 'rho', kw)) - - - # Truth - - if rec.doTruth(): - - from TruthD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject - alg += TruthParticleD3PDObject(**_args ( 1, 'TruthParticle', kw)) - - from MuonD3PDMaker.TruthMuonD3PDObject import TruthMuonD3PDObject - alg += TruthMuonD3PDObject (**_args ( 2, 'TruthMuon', kw)) - - - from AthenaCommon.AppMgr import ToolSvc - from TruthD3PDAnalysis.TruthD3PDAnalysisConf import D3PD__GenObjectsFilterTool - - # ... remove empty GenEvents - - smwzGenEvtFilterTool = D3PD__GenObjectsFilterTool( "smwzGenEvtFilterTool" ) - ToolSvc += smwzGenEvtFilterTool - smwzGenEvtFilterTool.RemoveDummyEvents = True - smwzGenEvtFilterTool.RemoveInTimePileUp = True - smwzGenEvtFilterTool.Remove2BCPileUp = True - smwzGenEvtFilterTool.Remove800nsPileUp = True - smwzGenEvtFilterTool.RemoveCavernBkg = True - smwzGenEvtFilterTool.RemoveEmptyEvents = True - - from TruthD3PDMaker.GenEventD3PDObject import GenEventD3PDObject - alg += GenEventD3PDObject (**_args ( 0, 'GenEvent', kw, filter = smwzGenEvtFilterTool )) - - - # ... TruthJets - if not testSGKey ('JetCollection', 'AntiKt6TruthJets'): - make_StandardJetGetter('AntiKt', 0.6, 'Truth') - - alg += JetD3PDObject (**_args ( 1, 'AK4TruthJet', kw, - sgkey='AntiKt4TruthJets',prefix='jet_AntiKt4Truth_', - allowMissing = True)) - alg += JetD3PDObject (**_args ( 1, 'AK6TruthJet', kw, - sgkey='AntiKt6TruthJets', prefix='jet_AntiKt6Truth_', - allowMissing = True)) - alg += JetD3PDObject (**_args ( 1, 'AK4TruthJetALL', kw, - sgkey='AntiKt4TruthJets_ALL', prefix='jet_AntiKt4TruthALL_', - allowMissing = True)) - alg += JetD3PDObject (**_args ( 1, 'AK6TruthJetALL', kw, - sgkey='AntiKt6TruthJets_ALL', prefix='jet_AntiKt6TruthALL_', - allowMissing = True)) - alg += JetD3PDObject (**_args ( 1, 'AK4TruthJetWZ', kw, - sgkey='AntiKt4TruthJets_WZ', prefix='jet_AntiKt4TruthWZ_', - allowMissing = True)) - alg += JetD3PDObject (**_args ( 1, 'AK6TruthJetWZ', kw, - sgkey='AntiKt6TruthJets_WZ', prefix='jet_AntiKt6TruthWZ_', - allowMissing = True)) - - - # ... heavy flavor truth information - - from AthenaCommon.AppMgr import ToolSvc - from TruthD3PDAnalysis.TruthD3PDAnalysisConf import D3PD__GenObjectsFilterTool - smwzhfGenVtxFilterTool = D3PD__GenObjectsFilterTool( "SMWZHFGenVtxFilterTool" ) - ToolSvc += smwzhfGenVtxFilterTool - - smwzhfGenVtxFilterTool.RemoveInTimePileUp = False - smwzhfGenVtxFilterTool.Remove2BCPileUp = True - smwzhfGenVtxFilterTool.Remove800nsPileUp = True - smwzhfGenVtxFilterTool.RemoveCavernBkg = True - smwzhfGenVtxFilterTool.RemoveEmptyEvents = True - smwzhfGenVtxFilterTool.RemoveDummyEvents = True - smwzhfGenVtxFilterTool.RemoveUnrequestedParticles=True - smwzhfGenVtxFilterTool.KeepBCHadrons=True - - from TruthD3PDMaker.GenVertexD3PDObject import GenVertexD3PDObject - alg += GenVertexD3PDObject( **_args(0, "hfgenvertex", kw, prefix='mchfvtx_', - filter = smwzhfGenVtxFilterTool ) - ) - - smwzhfGenPartFilterTool = D3PD__GenObjectsFilterTool( "SMWZHFGenPartFilterTool" ) - ToolSvc += smwzhfGenPartFilterTool - - smwzhfGenPartFilterTool.RemoveInTimePileUp = False - smwzhfGenPartFilterTool.Remove2BCPileUp = True - smwzhfGenPartFilterTool.Remove800nsPileUp = True - smwzhfGenPartFilterTool.RemoveCavernBkg = True - smwzhfGenPartFilterTool.RemoveEmptyEvents = True - smwzhfGenPartFilterTool.RemoveDummyEvents = True - smwzhfGenPartFilterTool.RemoveUnrequestedParticles=True - smwzhfGenPartFilterTool.KeepBCQuarks=True - smwzhfGenPartFilterTool.KeepBCQuarkAncestors=True - smwzhfGenPartFilterTool.KeepBCHadrons=True - smwzhfGenPartFilterTool.KeepBCHadronDecayChain=True - smwzhfGenPartFilterTool.BCHadronsDescendantsPtCut=200 - smwzhfGenPartFilterTool.BCHadronsDescendantsBarcodeCut=300000 - smwzhfGenPartFilterTool.BCHadronsDescendantsEtaCut=5 - - from TruthD3PDMaker.GenParticleD3PDObject import GenParticleD3PDObject - alg += GenParticleD3PDObject( **_args(10, "hfgenparticle", kw, prefix='mchfpart_', - filter = smwzhfGenPartFilterTool, - GenParticle_WriteMotherType=False, - GenParticle_WriteMotherBarcode=False - ) - ) - - # ... leptonic W/Z truth information - - smwzlepwzGenPartFilterTool = D3PD__GenObjectsFilterTool( "SMWZLepWZGenPartFilterTool" ) - ToolSvc += smwzlepwzGenPartFilterTool - - smwzlepwzGenPartFilterTool.RemoveInTimePileUp = True - smwzlepwzGenPartFilterTool.Remove2BCPileUp = True - smwzlepwzGenPartFilterTool.Remove800nsPileUp = True - smwzlepwzGenPartFilterTool.RemoveCavernBkg = True - smwzlepwzGenPartFilterTool.RemoveEmptyEvents = True - smwzlepwzGenPartFilterTool.RemoveDummyEvents = True - smwzlepwzGenPartFilterTool.RemoveUnrequestedParticles=True - smwzlepwzGenPartFilterTool.KeepLeptonicWZBosons=True - smwzlepwzGenPartFilterTool.KeepLeptonicWZBosonDecayChains=True - smwzlepwzGenPartFilterTool.KeepLeptonicWZBosonsParents=True - - from TruthD3PDMaker.GenParticleD3PDObject import GenParticleD3PDObject - alg += GenParticleD3PDObject( **_args(10, "lepwzgenparticle", kw, prefix='mclepwzpart_', - filter = smwzlepwzGenPartFilterTool, - label = "LepWZTruthD3PDObject", - exclude = ["GenPartProdVertexAssoc","GenPartDecayVertexAssoc"], - GenParticle_WriteMotherType=False, - GenParticle_WriteMotherBarcode=False, - GenPartMotherAssoc_target="LepWZTruthD3PDObject", - GenPartChildAssoc_target="LepWZTruthD3PDObject" - ) - ) - - - if not rec.doTruth(): - alg += BeamSpotD3PDObject(10) - - - # Trigger - - if D3PDMakerFlags.DoTrigger(): - - alg += SMWZTriggerBitsD3PDObject (**_args (10, 'SMWZTriggerBits', kw)) - - # Trigger Decision + metadata - - alg += TrigDecisionD3PDObject (**_args(10, 'TrigDecision', kw)) - addTrigConfMetadata(alg) - - # Bunch group info - - alg += BGCodeD3PDObject (**_args (2, 'BGCode', kw)) - - # Egamma and Mu - - TrigEgammaD3PDObjects (alg, 1) - TrigMuonD3PDObjects( alg, 1) - - # MET - - TrigMETD3PDObjects (alg, 2) - - # The BJet information: - - TrigBJetD3PDObjects(alg,10, False, False, True, True, True) - -# Event metadata - - alg.MetadataTools += [LBMetadataConfig()] - - if D3PDMakerFlags.FilterCollCand(): - from CaloD3PDMaker.CollisionFilterAlg import CollisionFilterAlg - alg.filterSeq += CollisionFilterAlg (tuplename + '_CollCandFilter') - - return alg diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZLightD3PD.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZLightD3PD.py deleted file mode 100644 index c75185016f76c22c72cf8ae199c9ab305c212498..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZLightD3PD.py +++ /dev/null @@ -1,741 +0,0 @@ -# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration - -# $Id: SMWZLightD3PD.py 521211 2012-10-11 23:42:23Z boonekam $ -# -# @file PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/python/SMWZLightD3PD.py -# @author maarten boonekamp <maarten.boonekamp@cea.fr> -# @date Sep, 2009 -# @brief Construct a Standard Model WZ physics D3PD. -# - - -import D3PDMakerCoreComps -from D3PDMakerCoreComps.resolveSGKey import testSGKey - -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags - -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr - -# event - -from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject -from EventCommonD3PDMaker.LBMetadataConfig import LBMetadataConfig - -# eletron/photon - -from egammaD3PDMaker.ElectronD3PDObject import ElectronD3PDObject -from egammaD3PDMaker.GSFElectronD3PDObject import GSFElectronD3PDObject -from egammaD3PDMaker.PhotonD3PDObject import PhotonD3PDObject -from egammaD3PDMaker.egammaTriggerBitsD3PDObject import egammaTriggerBitsD3PDObject - -# muons - -from MuonD3PDMaker.MuonD3PDObject import MuonD3PDObject -from MuonD3PDMaker.MuonSegmentD3PDObject import MuonSegmentD3PDObject -from MuonD3PDMaker.MuonTriggerBitsD3PDObject import MuonTriggerBitsD3PDObject - -# jet - -from JetD3PDMaker.JetD3PDObject import JetD3PDObject - -# tau - -from TauD3PDMaker.TauD3PDObject import TauD3PDObject -from TauD3PDMaker.makeTrackFilterAlg import makeTrackFilterAlg - -# calo - -from CaloD3PDMaker.MBTSD3PDObject import MBTSD3PDObject -from CaloD3PDMaker.MBTSTimeD3PDObject import MBTSTimeD3PDObject -from CaloD3PDMaker.MBTSTriggerBitsD3PDObject import MBTSTriggerBitsD3PDObject -from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject -from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject -from CaloD3PDMaker.ClusterD3PDObject import ClusterD3PDObject -from CaloD3PDMaker.EMClusterD3PDObject import EMClusterD3PDObject -from CaloD3PDMaker.makeClusterFilter import makeClusterFilter - -# baseline track config - -from TrackD3PDMaker.TrackD3PDMakerFlags import TrackD3PDFlags - -TrackD3PDFlags.doTruth = True -TrackD3PDFlags.storeDetailedTruth = False -TrackD3PDFlags.storeDiagonalCovarianceAsErrors = True -TrackD3PDFlags.storeHitTruthMatching = True -TrackD3PDFlags.storePixelHitsOnTrack = False -TrackD3PDFlags.storePixelHolesOnTrack = False -TrackD3PDFlags.storePixelOutliersOnTrack = False -TrackD3PDFlags.storeSCTHitsOnTrack = False -TrackD3PDFlags.storeSCTHolesOnTrack = False -TrackD3PDFlags.storeSCTOutliersOnTrack = False -TrackD3PDFlags.storeTRTHitsOnTrack = False -TrackD3PDFlags.storeTRTHolesOnTrack = False -TrackD3PDFlags.storeTRTOutliersOnTrack = False -TrackD3PDFlags.storeTrackFitQuality = True -TrackD3PDFlags.storeTrackInfo = False -TrackD3PDFlags.storeTrackMomentum = True -TrackD3PDFlags.storeTrackPredictionAtBLayer = False -TrackD3PDFlags.storeTrackSummary = True -TrackD3PDFlags.storeTrackSummary.IDOutliers = True -TrackD3PDFlags.storeTrackSummary.PixelInfoPlus = True -TrackD3PDFlags.storeTrackSummary.SCTInfoPlus = True -TrackD3PDFlags.storeTrackSummary.TRTInfoPlus = True -TrackD3PDFlags.trackParametersAtBeamSpotLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtGlobalPerigeeLevelOfDetails = 0 -TrackD3PDFlags.trackParametersAtPrimaryVertexLevelOfDetails = 1 - -from TrackD3PDMaker.xAODTrackD3PDObject import xAODTrackParticleD3PDObject - -# PV config - -TrackD3PDFlags.storeVertexFitQuality = True -TrackD3PDFlags.storeVertexKinematics = True -TrackD3PDFlags.storeVertexPurity = False -TrackD3PDFlags.storeVertexTrackAssociation = False -TrackD3PDFlags.storeVertexTrackIndexAssociation = True -TrackD3PDFlags.vertexPositionLevelOfDetails = 2 - -from TrackD3PDMaker.xAODVertexD3PDObject import PrimaryxAODVertexD3PDObject - -# BeamSpot / MinBias - -from InDetD3PDMaker.BeamSpotD3PDObject import BeamSpotD3PDObject - -# MET - -from MissingETD3PDMaker.MissingETD3PDMakerFlags import MissingETD3PDMakerFlags -from MissingETD3PDMaker.MissingETD3PDObject import * -from MissingETD3PDMaker.MissingETD3PDTriggerBitsObject import * - -MissingETD3PDMakerFlags.doCellOutEflow=True - -# Trigger - -from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject -from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata -from TriggerD3PDMaker.BGCodeD3PDObject import BGCodeD3PDObject - -from TrigEgammaD3PDMaker.EFElectronD3PDObject import EFElectronD3PDObject -from TrigEgammaD3PDMaker.EFPhotonD3PDObject import EFPhotonD3PDObject - -from TrigMuonD3PDMaker.TrigMuonEFInfoD3PDObject import TrigMuonEFInfoD3PDObject - -from TriggerD3PDMaker.EnergySumROID3PDObject import EnergySumROID3PDObject -from TrigMissingETD3PDMaker.TrigMETD3PDObject import TrigMETD3PDObject - -from PhysicsD3PDMaker.SMWZLightTriggerBitsD3PDObject import SMWZLightTriggerBitsD3PDObject - - -from RecExConfig.RecFlags import rec -from AthenaCommon.AlgSequence import AlgSequence -topSequence = AlgSequence() - - -def _args (level, name, kwin, **kw): - kw = kw.copy() - kw['level'] = level - for (k, v) in kwin.items(): - if k.startswith (name + '_'): - kw[k[len(name)+1:]] = v - return kw - - -def SMWZLightD3PD (alg = None, - file = 'smlight.root', - tuplename = 'physics', - streamname = 'd3pdstream', - stdElectronContainer = 'None', - gsfElectronContainer = 'None', - stacoMuonContainer = 'None', - muidMuonContainer = 'None', - photonContainer = 'None', - jetContainer = 'None', - clusterContainer = 'None', - tauContainer = 'None', - trackContainer = 'None', - **kw): - - - preseq = AlgSequence (D3PDMakerFlags.PreD3PDAlgSeqName()) - - # perform recoil calculation - - import HadronicRecoil.Configurables as hrc - preseq = hrc.add_hadronic_recoil_filters(preseq) - - - # configure the D3PD - - if not alg: - alg = MSMgr.NewRootStream(StreamName = streamname, FileName = file, TreeName = tuplename) - - - alg += EventInfoD3PDObject (**_args (10, 'EventInfo', kw)) - alg += LArCollisionTimeD3PDObject (**_args (10, 'LArCollisionTime', kw)) - - from TriggerD3PDMaker.BunchStructureMetadata import addBunchStructureMetadata - addBunchStructureMetadata (alg) - - - # Electron/Photon blocks - - if stdElectronContainer != 'None': - alg += ElectronD3PDObject (**_args (10, 'Electron', kw, - sgkey = stdElectronContainer, - prefix = 'el_', - exclude = ['EMTrackFit','EMTrackFitDetailsBrem', - 'EMTrackFitDetailsRefit', - 'EMTrackFitDetailsRefitCov'], - allowMissing = True )) - - if (gsfElectronContainer != 'None') and testSGKey ('ElectronContainer', gsfElectronContainer): - alg += GSFElectronD3PDObject (**_args (1, 'GSFElectron', kw, - sgkey = gsfElectronContainer, - prefix = 'el_gsf_', - exclude = ['EMTrackFit','EMTrackFitDetailsBrem', - 'EMTrackFitDetailsRefit', - 'EMTrackFitDetailsRefitCov'], - allowMissing = True )) - - D3PDMakerFlags.DoPAU = False - if photonContainer != 'None': - alg += PhotonD3PDObject (**_args (10, 'Photon', kw, - sgkey = photonContainer, - prefix = 'ph_', - exclude = ['OQRecalc'], - allowMissing = True )) - - - # Muon blocks - - # ... add the scattering significance filler - to be removed when added in the MuonD3PDMaker - if not MuonD3PDObject.allBlocknames().has_key("MuonScatteringAngleSignificance"): - from AthenaCommon.AppMgr import ToolSvc - muonScatteringSigTool=None - if hasattr(ToolSvc, "MuonScatteringSigTool"): - muonScatteringSigTool=ToolSvc.MuonScatteringSigTool - from JetTagD3PDMaker import MuonScatteringAngleSignificanceFillerTool - MuonD3PDObject.defineBlock (100, "MuonScatteringAngleSignificance", - MuonScatteringAngleSignificanceFillerTool, - ScatteringSigTool=muonScatteringSigTool) - - if stacoMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'StacoMuon', kw, - sgkey=stacoMuonContainer, - prefix='mu_staco_', - include = ['EFCBInfoIndex', 'EFMGInfoIndex', 'EFMEInfoIndex', - 'MuonScatteringAngleSignificance'], - exclude = ['EFCBInfo', 'EFMGInfo', 'EFMEInfo', - 'L2CBInfo', 'L1Info', - 'MuonTimingFillerTool'], - allowMissing = True )) - - if muidMuonContainer != 'None': - alg += MuonD3PDObject (**_args (10, 'MuidMuon', kw, - sgkey=muidMuonContainer, - prefix='mu_muid_', - include = ['EFCBInfoIndex', 'EFMGInfoIndex', 'EFMEInfoIndex', - 'MuonScatteringAngleSignificance'], - exclude = ['EFCBInfo', 'EFMGInfo', 'EFMEInfo', - 'L2CBInfo', 'L1Info', - 'MuonTimingFillerTool'], - allowMissing = True )) - - # Jet block - - from JetTagD3PDMaker.JetTagD3PDMakerFlags import JetTagD3PDFlags - from JetTagD3PDMaker.JetTagD3PDMakerKeys import JetTagD3PDKeys - - if jetContainer != 'None': - alg += JetD3PDObject (**_args ( 3, 'AK4TopoEMJet', kw, - sgkey=jetContainer, - allowMissing=True, - prefix='jet_AntiKt4TopoEM_', - JetVertexFraction_FromUD=True, - JetVertexFraction_FillFullJVF=True, - include = [ JetTagD3PDKeys.BTagWeightsBlockName(), - JetTagD3PDKeys.TruthInfoBlockName() ] )) - - - # Tau block - - if tauContainer != 'None': - alg += TauD3PDObject (**_args ( 0, 'Tau', kw, - allowMissing=True, - sgkey=tauContainer )) - - - # HF overlap removal (ALPGEN) - - from TopInputsD3PDMaker.HforD3PDObject import HforD3PDObject - alg += HforD3PDObject(**_args (0, 'HforInfo', kw)) - - - # MET blocks - # a whole mess to remove x,y components separately for all flavours - - alg += MissingETD3PDObject (**_args (10, 'MissingET', kw, - exclude=['MET_Base','MET_Base0','MET_Truth', - 'MET_RefFinal_Comps','MET_RefFinal_Regions', - 'MET_LocHadTopo_Comps','MET_LocHadTopo_Regions', - 'MET_CellOut_Comps','MET_CellOut_Regions', - 'MET_Calib', - 'MET_CorrTopo', - 'MET_Cryo', - 'MET_CryoCone', - 'MET_Final', - 'MET_LocHadTopoObj', - 'MET_Muid', - 'MET_Muid_Spectro', - 'MET_Muid_Track', - 'MET_MuonBoy', - 'MET_MuonBoy_Spectro', - 'MET_MuonBoy_Track', - 'MET_MuonMuid', - 'MET_Muon', - 'MET_Muon_Isol_Muid', - 'MET_Muon_Isol_Staco', - 'MET_Muon_NonIsol_Muid', - 'MET_Muon_NonIsol_Staco', - 'MET_Muon_Total_Muid', - 'MET_Muon_Total_Staco', - 'MET_RefEle_Comps','MET_RefEle_Regions', - 'MET_RefEle_em_Comps','MET_RefEle_em_Regions', - 'MET_RefGamma_Comps','MET_RefGamma_Regions', - 'MET_RefGamma_em_Comps','MET_RefGamma_em_Regions', - 'MET_RefJet_Comps','MET_RefJet_Regions', - 'MET_RefJet_em_Comps','MET_RefJet_em_Regions', - 'MET_RefMuon_Comps','MET_RefMuon_Regions', - 'MET_RefMuon_Muid_Comps','MET_RefMuon_Muid_Regions', - 'MET_RefMuon_Staco_Comps','MET_RefMuon_Staco_Regions', - 'MET_RefMuon_Track_Muid_Comps','MET_RefMuon_Track_Muid_Regions', - 'MET_RefMuon_Track_Staco_Comps','MET_RefMuon_Track_Staco_Regions', - 'MET_RefMuon_Track_em_Comps','MET_RefMuon_Track_em_Regions', - 'MET_RefMuon_Track_Comps','MET_RefMuon_Track_Regions', - 'MET_RefMuon_em_Comps','MET_RefMuon_em_Regions', - 'MET_RefTau_Comps','MET_RefTau_Regions', - 'MET_RefTau_em_Comps','MET_RefTau_em_Regions', - 'MET_SoftJets_Comps','MET_SoftJets_Regions', - 'MET_SoftJets_em_Comps','MET_SoftJets_em_Regions', - 'MET_Topo', - 'MET_TopoObj_Comps','MET_TopoObj_Regions', - 'MET_Track_Comps','MET_Track_Regions', - 'MET_Comps', - 'MET_Track_Weights','MET_Cluster_Weights', - 'MET_Regions','MET_Composition'], - allowMissing=True )) - - - # HadronicRecoil blocks - - alg += ElectronD3PDObject(0, sgkey = 'HR_selectedElectrons', prefix = 'hr_el_',allowMissing=True ) - alg += MuonD3PDObject( 0, sgkey = 'HR_selectedMuons', prefix = 'hr_mu_', allowMissing=True ) - - # ... DR = 0.15 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_15', prefix = 'hr_roughRecoil_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_15', prefix = 'hr_ueCorrection_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_15', prefix = 'hr_corrRecoil_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_15', prefix = 'hr_MET_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_15', prefix = 'hr_roughRecoil_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_15', prefix = 'hr_ueCorrection_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_15', prefix = 'hr_corrRecoil_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_15', prefix = 'hr_MET_Eflow_15', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_track_15", prefix = "hr_roughRecoil_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_track_15", prefix = "hr_ueCorrection_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_track_15", prefix = "hr_corrRecoil_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "MET_HR_track_15", prefix = "hr_MET_track_15", - exclude=['MET_Regions','MET_Comps'] ) - - # ... DR = 0.20 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_20', prefix = 'hr_roughRecoil_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_20', prefix = 'hr_ueCorrection_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_20', prefix = 'hr_corrRecoil_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_20', prefix = 'hr_MET_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_track_20', prefix = 'hr_roughRecoil_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_track_20', prefix = 'hr_ueCorrection_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_track_20', prefix = 'hr_corrRecoil_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_track_20', prefix = 'hr_MET_track_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_clusNoTrack_20', prefix = 'hr_roughRecoil_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_clusNoTrack_20', prefix = 'hr_ueCorrection_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_clusNoTrack_20', prefix = 'hr_corrRecoil_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_clusNoTrack_20', prefix = 'hr_MET_clusNoTrack_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_20', prefix = 'hr_roughRecoil_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_20', prefix = 'hr_ueCorrection_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_20', prefix = 'hr_corrRecoil_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_20', prefix = 'hr_MET_Eflow_20', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - # ... DR = 0.25 - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_25', prefix = 'hr_roughRecoil_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_25', prefix = 'hr_ueCorrection_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_25', prefix = 'hr_corrRecoil_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_25', prefix = 'hr_MET_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = 'RoughRecoil_Eflow_25', prefix = 'hr_roughRecoil_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'ueCorrection_Eflow_25', prefix = 'hr_ueCorrection_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'RefinedRecoil_Eflow_25', prefix = 'hr_corrRecoil_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - alg += MissingETD3PDObject( 0, sgkey = 'MET_HR_Eflow_25', prefix = 'hr_MET_Eflow_25', - exclude=['MET_Regions','MET_Comps'], - allowMissing=True ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_track_25", prefix = "hr_roughRecoil_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_track_25", prefix = "hr_ueCorrection_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_track_25", prefix = "hr_corrRecoil_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "MET_HR_track_25", prefix = "hr_MET_track_25", - exclude=['MET_Regions','MET_Comps'] ) - - - # HR using truth leptons - if rec.doTruth(): - - ## ... DR = 0.15 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_15", - prefix = "hr_roughRecoil_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_15", - prefix = "hr_ueCorrection_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_15", - prefix = "hr_corrRecoil_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_15", - prefix = "hr_MET_trLep_15", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_15", - prefix = "hr_roughRecoil_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_15", - prefix = "hr_ueCorrection_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_15", - prefix = "hr_corrRecoil_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_15", - prefix = "hr_MET_trLep_Eflow_15", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_15", - prefix = "hr_roughRecoil_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_15", - prefix = "hr_ueCorrection_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_15", - prefix = "hr_corrRecoil_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_15", - prefix = "hr_MET_trLep_track_15", - exclude=['MET_Regions','MET_Comps'] ) - - ## ... DR = 0.20 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_20", - prefix = "hr_roughRecoil_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_20", - prefix = "hr_ueCorrection_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_20", - prefix = "hr_corrRecoil_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_20", - prefix = "hr_MET_trLep_20", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_20", - prefix = "hr_roughRecoil_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_20", - prefix = "hr_ueCorrection_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_20", - prefix = "hr_corrRecoil_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_20", - prefix = "hr_MET_trLep_Eflow_20", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_20", - prefix = "hr_roughRecoil_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_20", - prefix = "hr_ueCorrection_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_20", - prefix = "hr_corrRecoil_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_20", - prefix = "hr_MET_trLep_track_20", - exclude=['MET_Regions','MET_Comps'] ) - - ## ... DR = 0.25 - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_25", - prefix = "hr_roughRecoil_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_25", - prefix = "hr_ueCorrection_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_25", - prefix = "hr_corrRecoil_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_25", - prefix = "hr_MET_trLep_25", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_Eflow_25", - prefix = "hr_roughRecoil_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_Eflow_25", - prefix = "hr_ueCorrection_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_25", - prefix = "hr_corrRecoil_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_Eflow_25", - prefix = "hr_MET_trLep_Eflow_25", - exclude=['MET_Regions','MET_Comps'] ) - - alg += MissingETD3PDObject( 0, sgkey = "RoughRecoil_TruthLep_track_25", - prefix = "hr_roughRecoil_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "ueCorrection_TruthLep_track_25", - prefix = "hr_ueCorrection_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_25", - prefix = "hr_corrRecoil_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - alg += MissingETD3PDObject( 0, sgkey = "RefinedRecoil_TruthLep_track_25", - prefix = "hr_MET_trLep_track_25", - exclude=['MET_Regions','MET_Comps'] ) - - - # Cluster block - - # ... all clusters, very low LOD - - if clusterContainer != 'None': - alg += ClusterD3PDObject (**_args ( 0, 'Clusters', kw, - sgkey = clusterContainer, - exclude='SamplingBasics', - allowMissing=True )) - - - # Track block - - # ... good tracks only (nSCT>=6; no pt cut) - - if trackContainer != 'None': - alg += xAODTrackParticleD3PDObject (**_args ( 3, 'TrackParticleCandidate', kw, - sgkey = trackContainer, - label = 'trk', - prefix = 'trk_', - allowMissing=True )) - - - # Primary vertex block - May be missing in single-beam data. - - alg += PrimaryxAODVertexD3PDObject (**_args (1, 'PrimaryVertex', kw, - sgkey = D3PDMakerFlags.VertexSGKey(), - prefix = 'vxp_', - allowMissing=True )) - - # Truth - - if rec.doTruth(): - - from TruthD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject - from MuonD3PDMaker.TruthMuonD3PDObject import TruthMuonD3PDObject - alg += TruthMuonD3PDObject (**_args ( 2, 'TruthMuon', kw)) - - from AthenaCommon.AppMgr import ToolSvc - from TruthD3PDAnalysis.TruthD3PDAnalysisConf import D3PD__GenObjectsFilterTool - - # ... remove empty GenEvents - - smlightGenEvtFilterTool = D3PD__GenObjectsFilterTool( "smlightGenEvtFilterTool" ) - ToolSvc += smlightGenEvtFilterTool - smlightGenEvtFilterTool.RemoveDummyEvents = True - smlightGenEvtFilterTool.RemoveInTimePileUp = True - smlightGenEvtFilterTool.Remove2BCPileUp = True - smlightGenEvtFilterTool.Remove800nsPileUp = True - smlightGenEvtFilterTool.RemoveCavernBkg = True - smlightGenEvtFilterTool.RemoveEmptyEvents = True - - from TruthD3PDMaker.GenEventD3PDObject import GenEventD3PDObject - alg += GenEventD3PDObject (**_args ( 0, 'GenEvent', kw, filter = smlightGenEvtFilterTool )) - - - - # ... leptonic W/Z truth information - - smlightLepWZFilterTool = D3PD__GenObjectsFilterTool( "smlightLepWZFilterTool" ) - ToolSvc += smlightLepWZFilterTool - - smlightLepWZFilterTool.RemoveInTimePileUp = True - smlightLepWZFilterTool.Remove2BCPileUp = True - smlightLepWZFilterTool.Remove800nsPileUp = True - smlightLepWZFilterTool.RemoveCavernBkg = True - smlightLepWZFilterTool.RemoveEmptyEvents = True - smlightLepWZFilterTool.RemoveDummyEvents = True - smlightLepWZFilterTool.RemoveUnrequestedParticles=True - smlightLepWZFilterTool.KeepLeptonicWZBosons=True - smlightLepWZFilterTool.KeepLeptonicWZBosonDecayChains=True - smlightLepWZFilterTool.KeepLeptonicWZBosonsParents=True - - from TruthD3PDMaker.GenParticleD3PDObject import GenParticleD3PDObject - alg += GenParticleD3PDObject( **_args(10, "lepwzgenparticle", kw, prefix='mclepwzpart_', - filter = smlightLepWZFilterTool, - label = "LepWZTruthD3PDObject", - exclude = ["GenPartProdVertexAssoc","GenPartDecayVertexAssoc"], - GenParticle_WriteMotherType=False, - GenParticle_WriteMotherBarcode=False, - GenPartMotherAssoc_target="LepWZTruthD3PDObject", - GenPartChildAssoc_target="LepWZTruthD3PDObject" - ) - ) - - - if not rec.doTruth(): - alg += BeamSpotD3PDObject(10) - - - # Trigger - - if D3PDMakerFlags.DoTrigger(): - -# RedefineTriggerBits(alg, 'EF*') -# alg += SMWZLightTriggerBitsD3PDObject (**_args (10, 'SMWZLightTriggerBits', kw)) - - # metadata - - addTrigConfMetadata(alg) - - # Bunch group info - - alg += BGCodeD3PDObject (**_args (2, 'BGCode', kw)) - - # Egamma EF information - - alg += EFElectronD3PDObject(0, name='trig_EF_el_', - sgkey='HLT_egamma_Electrons,HLT_egamma', - prefix='trig_EF_el_', - exclude=['Author','IsEM','IsEMCuts'], - include=['Triggers'], - allowMissing = True) - -# alg += EFPhotonD3PDObject(0, name='trig_EF_ph_', -# sgkey='HLT_egamma_Photons,HLT_egamma', -# prefix='trig_EF_ph_', -# exclude=['Author','Conversion0','IsEM','IsEMCuts'], -# include=['Triggers'], -# allowMissing = True) - - # Muon EF information - - alg += TrigMuonEFInfoD3PDObject(0, - include=['Decision'], - exclude=['TrackDetails','SpectrometerTrackBasics','ExtrapolatedTrackBasics'], - allowMissing = True) - - alg += TrigMuonEFInfoD3PDObject(0, - name = "trig_EF_trigmugirl_", - sgkey = "HLT_eMuonEFInfo", - prefix = "trig_EF_trigmugirl_", - exclude=['TrackDetails','SpectrometerTrackBasics','ExtrapolatedTrackBasics'], - include=['Decision'], - allowMissing = True) - - # MET EF information - -# alg += TrigMETD3PDObject(**_args ( 0, 'TrigMETEF', kw, -# prefix = "trig_EF_met_", -# sgkey = "HLT_TrigEFMissingET" )) - - -# Event metadata - - alg.MetadataTools += [LBMetadataConfig()] - - if D3PDMakerFlags.FilterCollCand(): - from CaloD3PDMaker.CollisionFilterAlg import CollisionFilterAlg - alg.filterSeq += CollisionFilterAlg (tuplename + '_CollCandFilter') - - return alg diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZD3PD.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZD3PD.py deleted file mode 100644 index b4a96912e3d0f7b776d06039074f8d8954285f20..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZD3PD.py +++ /dev/null @@ -1,49 +0,0 @@ -# $Id: AODToSMWZD3PD.py 352577 2011-03-17 18:14:25Z boonekam $ -# -# @file D3PDMakerConfig/share/AODToSMWZD3PD.py -# @author scott snyder <snyder@bnl.gov> -# @date Aug, 2009 -# @brief Example for building an egamma D3PD from an AOD. -# - - -###################################################################3 -# Define the input file here. -# - -from AthenaCommon.AthenaCommonFlags import athenaCommonFlags -athenaCommonFlags.FilesInput= ["AOD.pool.root"] - - -###################################################################3 -# Define the output file here. -# - -if not globals().get('tupleFileOutput'): - tupleFileOutput = 'smwz.root' - -from D3PDMakerConfig.D3PDProdFlags import prodFlags -prodFlags.WriteSMWZD3PD = True -prodFlags.WriteSMWZD3PD.FileName = tupleFileOutput -prodFlags.WriteSMWZD3PD.lock() - -###################################################################3 -# Define other job options here. -# - -athenaCommonFlags.EvtMax = -1 - -# Example of changing D3PD maker flags. -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -#D3PDMakerFlags.DoTrigger = False - - -################################################################### -# Configure RecExCommon. -# - -from RecExConfig.RecFlags import rec -rec.DPDMakerScripts.append( "PhysicsD3PDMaker/SMWZD3PD_prodJobOFragment.py" ) -rec.doCBNT.set_Value_and_Lock( False ) -rec.doWriteTAG.set_Value_and_Lock( False ) -include( "RecExCommon/RecExCommon_topOptions.py" ) diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZsoftD3PD.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZsoftD3PD.py deleted file mode 100644 index 8d127eb5f0d143b3739eedad58a4d622fec7e304..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/AODToSMWZsoftD3PD.py +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: AODToSMWZsoftD3PD.py 438707 2011-05-24 07:34:00Z boonekam $ -# -# @file D3PDMakerConfig/share/AODToSMWZD3PD.py -# @author scott snyder <snyder@bnl.gov> -# @date Aug, 2009 -# @brief Example for building an egamma D3PD from an AOD. -# - - -###################################################################3 -# Define the input file here. -# - -from AthenaCommon.AthenaCommonFlags import athenaCommonFlags -athenaCommonFlags.FilesInput= ["AOD.pool.root"] - - -###################################################################3 -# Define the output file here. -# - -if not globals().get('tupleFileOutput'): - tupleFileOutput = 'smwz.root' - -from D3PDMakerConfig.D3PDProdFlags import prodFlags -prodFlags.WriteSMWZSOFTD3PD = True -prodFlags.WriteSMWZSOFTD3PD.FileName = tupleFileOutput -prodFlags.WriteSMWZSOFTD3PD.lock() - - -###################################################################3 -# Define other job options here. -# - -athenaCommonFlags.EvtMax = -1 - -# Example of changing D3PD maker flags. -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -#D3PDMakerFlags.DoTrigger = False - - -################################################################### -# Configure RecExCommon. -# - -from RecExConfig.RecFlags import rec -rec.DPDMakerScripts.append( "PhysicsD3PDMaker/SMWZsoftD3PD_prodJobOFragment.py" ) -rec.doCBNT.set_Value_and_Lock( False ) -rec.doWriteTAG.set_Value_and_Lock( False ) -include( "RecExCommon/RecExCommon_topOptions.py" ) diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGED3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGED3PD_prodJobOFragment.py deleted file mode 100644 index 8070f4b65bd3059b40f0a8b6aac1e281c75563cd..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGED3PD_prodJobOFragment.py +++ /dev/null @@ -1,55 +0,0 @@ -# $Id: SMBKGED3PD_prodJobOFragment.py 466232 2011-11-03 16:47:45Z aad $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMBKGE D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMBKGED3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMBKGED3PDStream_msg = logging.getLogger( 'SMBKGED3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMBKGED3PD.isVirtual: - SMBKGED3PDStream_msg.error( "The SMBKGE D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMBKGE D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMBKGE D3PD: -streamName = prodFlags.WriteSMBKGED3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMBKGED3PD ) -SMBKGED3PDStream_msg.info( "Configuring SMBKGED3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMBKGED3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMBKGED3PDStream ) - -# Define skims -from WZSkims.WZSkimsConf import WZSkimsMain -BackgroundElec = WZSkimsMain("BackgroundElec") -BackgroundElec.doBackgroundElecSkim = True -BackgroundElec.OutputLevel = INFO -SMBKGED3PDStream.filterSeq += BackgroundElec - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMBKGED3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMBKGED3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGMUD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGMUD3PD_prodJobOFragment.py deleted file mode 100644 index fd509587c62f88a8b676749b7bba5d3739bf9670..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMBKGMUD3PD_prodJobOFragment.py +++ /dev/null @@ -1,55 +0,0 @@ -# $Id: SMBKGMUD3PD_prodJobOFragment.py 466232 2011-11-03 16:47:45Z aad $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMBKGMU D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMBKGMUD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMBKGMUD3PDStream_msg = logging.getLogger( 'SMBKGMUD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMBKGMUD3PD.isVirtual: - SMBKGMUD3PDStream_msg.error( "The SMBKGMU D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMBKGMU D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMBKGMU D3PD: -streamName = prodFlags.WriteSMBKGMUD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMBKGMUD3PD ) -SMBKGMUD3PDStream_msg.info( "Configuring SMBKGMUD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMBKGMUD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMBKGMUD3PDStream ) - -# Define skims -from WZSkims.WZSkimsConf import WZSkimsMain -BackgroundMuon = WZSkimsMain("BackgroundMuon") -BackgroundMuon.doBackgroundMuonSkim = True -BackgroundMuon.OutputLevel = INFO -SMBKGMUD3PDStream.filterSeq += BackgroundMuon - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMBKGMUD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMBKGMUD3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDILEPD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDILEPD3PD_prodJobOFragment.py deleted file mode 100644 index 82ca49e56cb504842c72190d6e2836f1de0d1f1c..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDILEPD3PD_prodJobOFragment.py +++ /dev/null @@ -1,55 +0,0 @@ -# $Id: SMDILEPD3PD_prodJobOFragment.py 466232 2011-11-03 16:47:45Z aad $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMDILEP D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMDILEPD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMDILEPD3PDStream_msg = logging.getLogger( 'SMDILEPD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMDILEPD3PD.isVirtual: - SMDILEPD3PDStream_msg.error( "The SMDILEP D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMDILEP D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMDILEP D3PD: -streamName = prodFlags.WriteSMDILEPD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMDILEPD3PD ) -SMDILEPD3PDStream_msg.info( "Configuring SMDILEPD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMDILEPD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMDILEPD3PDStream ) - -# Define skims -from WZSkims.WZSkimsConf import WZSkimsMain -TwoLeptons = WZSkimsMain("TwoLeptons") -TwoLeptons.doTwoLeptonsSkim = True -TwoLeptons.OutputLevel = INFO -SMDILEPD3PDStream.filterSeq += TwoLeptons - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMDILEPD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMDILEPD3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYEED3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYEED3PD_prodJobOFragment.py deleted file mode 100644 index 6d7716f5175de344bd528b59e57391c7881db2fb..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYEED3PD_prodJobOFragment.py +++ /dev/null @@ -1,88 +0,0 @@ -# $Id: SMDYEED3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMDYEE D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMDYEED3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMDYEED3PDStream_msg = logging.getLogger( 'SMDYEED3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMDYEED3PD.isVirtual: - SMDYEED3PDStream_msg.error( "The SMDYEE D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMDYEE D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMDYEE D3PD: -streamName = prodFlags.WriteSMDYEED3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMDYEED3PD ) -SMDYEED3PDStream_msg.info( "Configuring SMDYEED3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -#### add specific containers -include ("PhysicsD3PDMaker/LowPtElectronPairSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMDYEE_D3PDSvc" ) -ServiceMgr.SMDYEE_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_m.*","EF_2m.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMDYEE_D3PDSvc.VetoedNames += [ "trig_EF_trigmu.*" ] -ServiceMgr.SMDYEE_D3PDSvc.VetoedNames += [ "MET.*",".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMDYEED3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMDYEED3PDStream.D3PDSvc = ServiceMgr.SMDYEE_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -SMWZLightD3PD( SMDYEED3PDStream, - stdElectronContainer = 'LowPtElectrons' ) - - -# apply skim -SMDYEED3PDStream.AddAcceptAlgs( ["SMWZ_JPsieeFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMDYEED3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMDYEED3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYMUMUD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYMUMUD3PD_prodJobOFragment.py deleted file mode 100644 index 37a0b151b7a0b7174cd094dc0babefc03f8c06dc..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMDYMUMUD3PD_prodJobOFragment.py +++ /dev/null @@ -1,84 +0,0 @@ -# $Id: SMDYMUMUD3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMDYMUMU D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMDYMUMUD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMDYMUMUD3PDStream_msg = logging.getLogger( 'SMDYMUMUD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMDYMUMUD3PD.isVirtual: - SMDYMUMUD3PDStream_msg.error( "The SMDYMUMU D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMDYMUMU D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMDYMUMU D3PD: -streamName = prodFlags.WriteSMDYMUMUD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMDYMUMUD3PD ) -SMDYMUMUD3PDStream_msg.info( "Configuring SMDYMUMUD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -# add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/LowPtMuonPairSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMDYMUMU_D3PDSvc" ) -ServiceMgr.SMDYMUMU_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_e.*","EF_2e.*","EF_g.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMDYMUMU_D3PDSvc.VetoedNames += [ "trig_EF_el.*" ] -ServiceMgr.SMDYMUMU_D3PDSvc.VetoedNames += [ "MET.*",".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMDYMUMUD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMDYMUMUD3PDStream.D3PDSvc = ServiceMgr.SMDYMUMU_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -SMWZLightD3PD( SMDYMUMUD3PDStream, - stacoMuonContainer = 'LowPtStacoMuons', - muidMuonContainer = 'LowPtMuidMuons' ) - - -# apply skim -SMDYMUMUD3PDStream.AddAcceptAlgs( ["SMWZ_JPsimumuStacoFilter", "SMWZ_JPsimumuMuidFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMDYMUMUD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMDYMUMUD3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMLIGHTD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMLIGHTD3PD_prodJobOFragment.py deleted file mode 100644 index e06e23955752d22ed3e690dd224d0c858e0b77ca..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMLIGHTD3PD_prodJobOFragment.py +++ /dev/null @@ -1,89 +0,0 @@ -# $Id: SMLIGHTD3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMLIGHT D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMLIGHTD3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMLIGHTD3PDStream_msg = logging.getLogger( 'SMLIGHTD3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMLIGHTD3PD.isVirtual: - SMLIGHTD3PDStream_msg.error( "The SMLIGHT D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMLIGHT D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMLIGHT D3PD: -streamName = prodFlags.WriteSMLIGHTD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMLIGHTD3PD ) -SMLIGHTD3PDStream_msg.info( "Configuring SMLIGHTD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -#### add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMLIGHT_D3PDSvc" ) -ServiceMgr.SMLIGHT_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMLIGHT_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMLIGHTD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMLIGHTD3PDStream.D3PDSvc = ServiceMgr.SMLIGHT_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMWZLightD3PD( SMLIGHTD3PDStream, - stdElectronContainer = 'HighPtElectrons', - gsfElectronContainer = 'HighPtGSFElectrons', - stacoMuonContainer = 'HighPtStacoMuons', - muidMuonContainer = 'HighPtMuidMuons', - photonContainer = 'HighPtPhotons', - jetContainer = 'HighPtJets' ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMLIGHTD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMLIGHTD3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMTRILEPD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMTRILEPD3PD_prodJobOFragment.py deleted file mode 100644 index 494bb4837c70d6bcaec2fedc7adb280fba8c859d..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMTRILEPD3PD_prodJobOFragment.py +++ /dev/null @@ -1,116 +0,0 @@ -# $Id: SMTRILEPD3PD_prodJobOFragment.py 531942 2013-01-06 20:06:49Z nedwards $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMTRILEP D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMTRILEPD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMTRILEPD3PDStream_msg = logging.getLogger( 'SMTRILEPD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMTRILEPD3PD.isVirtual: - SMTRILEPD3PDStream_msg.error( "The SMTRILEP D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMTRILEP D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMTRILEP D3PD: -streamName = prodFlags.WriteSMTRILEPD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMTRILEPD3PD ) -SMTRILEPD3PDStream_msg.info( "Configuring SMTRILEPD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -#include ("PhysicsD3PDMaker/MyJetMake.py") - - -#configure MuonScatteringAngleSignificanceTool -#include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMTRILEPD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: - #from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD - #SMWZD3PD( SMTRILEPD3PDStream ) - -#h ok -### add specific containers -# Will need to redefine these ourselves... -include ("PhysicsD3PDMaker/SMTRILEP_ElectronSelector.py") -include ("PhysicsD3PDMaker/SMTRILEP_PhotonSelector.py") -include ("PhysicsD3PDMaker/SMTRILEP_MuonSelector.py") -include ("PhysicsD3PDMaker/SMTRILEP_JetSelector.py") -#include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMTRILEP_D3PDSvc" ) -#ServiceMgr.SMTRILEP_D3PDSvc.VetoedNames = [ "EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMTRILEP_D3PDSvc.VetoedNames = [ "^L1_.*","^L2_.*","EF_j.*","EF_2j.*","EF_tau.*", "EF_xe.*", "EF_eb.*", ] -ServiceMgr.SMTRILEP_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*", "IPEstimate.*" ] - -include("PhysicsD3PDMaker/SMTRILEP_VetoBranches.py") -ServiceMgr.SMTRILEP_D3PDSvc.VetoedNames += SMTRILEP_VetoBranches - -SMTRILEPD3PDStream.D3PDSvc = ServiceMgr.SMTRILEP_D3PDSvc - -# Now add all the content to this stream: -# Will need to redefine this - defines what goes into the skim -from PhysicsD3PDMaker.SMTrilepD3PD import SMTrilepD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMTrilepD3PD( SMTRILEPD3PDStream, - stdElectronContainer = 'TrilepElectrons', - #gsfElectronContainer = 'HighPtGSFElectrons', - stacoMuonContainer = 'TrilepStacoMuons', - thirdMuonContainer = 'TrilepThirdMuons', - caloMuonContainer = 'TrilepCaloMuons', - #muidMuonContainer = 'HighPtMuidMuons', - photonContainer = 'HighPtPhotons', - jetLC4Container = "HighPtJetsLC4", - jetContainer = 'HighPtJets' ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMTRILEPD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMTRILEPD3PDStream ) ] - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR - -# Define skims -#from WZSkims.WZSkimsConf import WZSkimsMain -#ThreeLeptons = WZSkimsMain("ThreeLeptons") -#ThreeLeptons.doThreeLeptonsSkim = True -#ThreeLeptons.OutputLevel = INFO -#SMTRILEPD3PDStream.filterSeq += ThreeLeptons -from PhysicsD3PDMaker.PhysicsD3PDMakerConf import TrileptonSkimmer -TrileptonSkim = TrileptonSkimmer( ) -SMTRILEPD3PDStream.filterSeq += TrileptonSkim # 1 alg, named "TrilepSkim" - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMTRILEPD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMTRILEPD3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUD3PD_prodJobOFragment.py deleted file mode 100644 index 5e6eae8f913535dcc531dcf776173eb5088371e1..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUD3PD_prodJobOFragment.py +++ /dev/null @@ -1,92 +0,0 @@ -# $Id: SMWENUD3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWENU D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWENUD3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWENUD3PDStream_msg = logging.getLogger( 'SMWENUD3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMWENUD3PD.isVirtual: - SMWENUD3PDStream_msg.error( "The SMWENU D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWENU D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMWENU D3PD: -streamName = prodFlags.WriteSMWENUD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWENUD3PD ) -SMWENUD3PDStream_msg.info( "Configuring SMWENUD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -#### add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMWENU_D3PDSvc" ) -ServiceMgr.SMWENU_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_m.*","EF_2m.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMWENU_D3PDSvc.VetoedNames += [ "trig_EF_trigmu.*" ] -ServiceMgr.SMWENU_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWENUD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMWENUD3PDStream.D3PDSvc = ServiceMgr.SMWENU_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMWZLightD3PD( SMWENUD3PDStream, - stdElectronContainer = 'HighPtElectrons', - stacoMuonContainer = 'HighPtStacoMuons', - photonContainer = 'HighPtPhotons', - jetContainer = 'HighPtJets' ) - - -# apply skim -SMWENUD3PDStream.AddAcceptAlgs( ["SMWZ_HighPtElectronFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMWENUD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMWENUD3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUJJD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUJJD3PD_prodJobOFragment.py deleted file mode 100644 index d1d027cabe44bb2f5acd5fdbed1ddcf2cad23a04..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWENUJJD3PD_prodJobOFragment.py +++ /dev/null @@ -1,77 +0,0 @@ -# $Id: SMWENUJJD3PD_prodJobOFragment.py 354388 2011-03-25 15:03:06Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWENUJJ D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWENUJJD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWENUJJD3PDStream_msg = logging.getLogger( 'SMWENUJJD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMWENUJJD3PD.isVirtual: - SMWENUJJD3PDStream_msg.error( "The SMWENUJJ D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWENUJJ D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMWENUJJ D3PD: -streamName = prodFlags.WriteSMWENUJJD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWENUJJD3PD ) -SMWENUJJD3PDStream_msg.info( "Configuring SMWENUJJD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#### add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -#include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -#include ("PhysicsD3PDMaker/TauSelector.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWENUJJD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMWENUJJD3PDStream, - stdElectronContainer = 'HighPtElectrons', - gsfElectronContainer = 'None', - muonContainer = 'None', - stacoMuonContainer = 'HighPtStacoMuons', - muidMuonContainer = 'None', - caloMuonContainer = 'None', - photonContainer = 'None', - tauContainer = 'None', - jetEM4Container = 'HighPtJets', - jetEM6Container = 'HighPtJetsEM6', - jetLC4Container = 'HighPtJetsLC4', - jetLC6Container = 'HighPtJetsLC6', - jetDetails = 2, - METDetails = 2) - -# Define skims -from WZSkims.WZSkimsConf import WZSkimsMain -Wenujj = WZSkimsMain("Wenujj") -Wenujj.doWenujjSkim = True -Wenujj.OutputLevel = INFO -SMWENUJJD3PDStream.filterSeq += Wenujj - -include("WZSkims/Wlnujj_branchSelection.py") - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMWENUJJD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMWENUJJD3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUD3PD_prodJobOFragment.py deleted file mode 100644 index 692e5fe10a7e259e774fd5e99188eb2a5b4a1f49..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUD3PD_prodJobOFragment.py +++ /dev/null @@ -1,93 +0,0 @@ -# $Id: SMWMUNUD3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWMUNU D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWMUNUD3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWMUNUD3PDStream_msg = logging.getLogger( 'SMWMUNUD3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMWMUNUD3PD.isVirtual: - SMWMUNUD3PDStream_msg.error( "The SMWMUNU D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWMUNU D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMWMUNU D3PD: -streamName = prodFlags.WriteSMWMUNUD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWMUNUD3PD ) -SMWMUNUD3PDStream_msg.info( "Configuring SMWMUNUD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -# add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMWMUNU_D3PDSvc" ) -ServiceMgr.SMWMUNU_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_e.*","EF_2e.*","EF_g.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMWMUNU_D3PDSvc.VetoedNames += [ "trig_EF_el.*" ] -ServiceMgr.SMWMUNU_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWMUNUD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMWMUNUD3PDStream.D3PDSvc = ServiceMgr.SMWMUNU_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMWZLightD3PD( SMWMUNUD3PDStream, - stdElectronContainer = 'HighPtElectrons', - stacoMuonContainer = 'HighPtStacoMuons', - muidMuonContainer = 'HighPtMuidMuons', - photonContainer = 'HighPtPhotons', - jetContainer = 'HighPtJets' ) - - -# apply skim -SMWMUNUD3PDStream.AddAcceptAlgs( ["SMWZ_HighPtStacoMuonFilter","SMWZ_HighPtMuidMuonFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMWMUNUD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMWMUNUD3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUJJD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUJJD3PD_prodJobOFragment.py deleted file mode 100644 index abe310503e28d2bd2ae0ce4af58234e3f59b4205..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWMUNUJJD3PD_prodJobOFragment.py +++ /dev/null @@ -1,77 +0,0 @@ -# $Id: SMWMUNUJJD3PD_prodJobOFragment.py 354388 2011-03-25 15:03:06Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWMUNUJJ D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWMUNUJJD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWMUNUJJD3PDStream_msg = logging.getLogger( 'SMWMUNUJJD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMWMUNUJJD3PD.isVirtual: - SMWMUNUJJD3PDStream_msg.error( "The SMWMUNUJJ D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWMUNUJJ D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMWMUNUJJ D3PD: -streamName = prodFlags.WriteSMWMUNUJJD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWMUNUJJD3PD ) -SMWMUNUJJD3PDStream_msg.info( "Configuring SMWMUNUJJD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#### add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -#include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -#include ("PhysicsD3PDMaker/TauSelector.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWMUNUJJD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMWMUNUJJD3PDStream, - stdElectronContainer = 'HighPtElectrons', - gsfElectronContainer = 'None', - muonContainer = 'None', - stacoMuonContainer = 'HighPtStacoMuons', - muidMuonContainer = 'None', - caloMuonContainer = 'None', - photonContainer = 'None', - tauContainer = 'None', - jetEM4Container = 'HighPtJets', - jetEM6Container = 'HighPtJetsEM6', - jetLC4Container = 'HighPtJetsLC4', - jetLC6Container = 'HighPtJetsLC6', - jetDetails = 2, - METDetails = 2) - -# Define skims -from WZSkims.WZSkimsConf import WZSkimsMain -Wmunujj = WZSkimsMain("Wmunujj") -Wmunujj.doWmunujjSkim = True -Wmunujj.OutputLevel = INFO -SMWMUNUJJD3PDStream.filterSeq += Wmunujj - -include("WZSkims/Wlnujj_branchSelection.py") - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMWMUNUJJD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMWMUNUJJD3PDStream ) ] diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_prodJobOFragment.py deleted file mode 100644 index 4e3b361de1036d47691ca0a7cbb40541fa22a879..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_prodJobOFragment.py +++ /dev/null @@ -1,72 +0,0 @@ -# $Id: SMWZD3PD_prodJobOFragment.py 542026 2013-03-22 15:02:53Z jlee $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWZ D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWZD3PD_prodJobOFragment.py" ) - -### Jason -include( "PhysicsD3PDMaker/SMWZ_RedoJets.py") - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWZD3PDStream_msg = logging.getLogger( 'SMWZD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMWZD3PD.isVirtual: - SMWZD3PDStream_msg.error( "The SMWZ D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWZ D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMWZ D3PD: -streamName = prodFlags.WriteSMWZD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWZD3PD ) -SMWZD3PDStream_msg.info( "Configuring SMWZD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Fat/Groomed Jets -include("PhysicsD3PDMaker/FatJetsConfig.py") -###########Bertrand -include( "BTagging/BTagging_LoadTools.py" ) -include( "BTagging/BTagging_jobOptions.py" ) - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWZD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMWZD3PDStream ) - - -from PhysicsD3PDMaker.JSD3PD import JSD3PD -for xx in myJetKeys: - if xx[0] != None and xx[1] != None: - JSD3PD(xx, SMWZD3PDStream ) - -# Silence tool warnings: -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_thirdMuonChain_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_thirdMuonChain_prodJobOFragment.py deleted file mode 100644 index e95828dfd3143fac017251e5245faaa13d5306d2..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZD3PD_thirdMuonChain_prodJobOFragment.py +++ /dev/null @@ -1,43 +0,0 @@ -# $Id: SMWZD3PD_thirdMuonChain_prodJobOFragment.py 477353 2012-01-18 15:17:27Z mbellomo $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWZ D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWZD3PD_prodJobOFragment.py" ) - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWZD3PDStream_msg = logging.getLogger( 'SMWZD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMWZD3PD.isVirtual: - SMWZD3PDStream_msg.error( "The SMWZ D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWZ D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMWZ D3PD: -streamName = prodFlags.WriteSMWZD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWZD3PD ) -SMWZD3PDStream_msg.info( "Configuring SMWZD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWZD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -SMWZD3PD( SMWZD3PDStream, doThirdMuonChain=True ) diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZsoftD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZsoftD3PD_prodJobOFragment.py deleted file mode 100644 index bb045476c4a9fbb09fec41d7357038bd8b999e8a..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMWZsoftD3PD_prodJobOFragment.py +++ /dev/null @@ -1,70 +0,0 @@ -# $Id: SMWZsoftD3PD_prodJobOFragment.py 566706 2013-10-23 08:41:31Z ssnyder $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMWZ D3PD cart". - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMWZsoftD3PD_prodJobOFragment.py" ) - -### Jason -include( "PhysicsD3PDMaker/SMWZ_RedoJets.py") - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - -# Set up a logger: -from AthenaCommon.Logging import logging -SMWZSOFTD3PDStream_msg = logging.getLogger( 'SMWZsoftD3PD_prodJobOFragment' ) - -# Check if the configuration makes sense: -if prodFlags.WriteSMWZSOFTD3PD.isVirtual: - SMWZD3PDStream_msg.error( "The SMWZ soft D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMWZ soft D3PD set to be a virtual stream" ) - pass - -# Construct the stream and file names for the SMWZ soft D3PD: -streamName = prodFlags.WriteSMWZSOFTD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMWZSOFTD3PD ) -SMWZSOFTD3PDStream_msg.info( "Configuring SMWZsoftD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - -# disable parton filter -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -D3PDMakerFlags.TruthWriteHadrons = True - -# add specific truth jets -include ("PhysicsD3PDMaker/MyJetMake.py") - -#configure MuonScatteringAngleSignificanceTool -include("JetTagD3PDMaker/MuonScatteringSigToolConfig.py") - -### Jason -include( "BTagging/BTagging_LoadTools.py" ) -include( "BTagging/BTagging_jobOptions.py" ) - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMWZSOFTD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZD3PD import SMWZD3PD -if not 'SMWZsoftD3PD_args' in globals(): - SMWZsoftD3PD_args = {} -SMWZD3PD( SMWZSOFTD3PDStream, doSoftQCD = False, **SMWZsoftD3PD_args ) - -# Silence tool warnings: -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZEED3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZEED3PD_prodJobOFragment.py deleted file mode 100644 index e3a784051eaa7a5dad9ae2ccf9995cfc7cb5effc..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZEED3PD_prodJobOFragment.py +++ /dev/null @@ -1,92 +0,0 @@ -# $Id: SMZEED3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMZEE D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMZEED3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMZEED3PDStream_msg = logging.getLogger( 'SMZEED3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMZEED3PD.isVirtual: - SMZEED3PDStream_msg.error( "The SMZEE D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMZEE D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMZEE D3PD: -streamName = prodFlags.WriteSMZEED3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMZEED3PD ) -SMZEED3PDStream_msg.info( "Configuring SMZEED3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -#### add specific containers -include ("PhysicsD3PDMaker/LowPtElectronPairSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/MuonSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMZEE_D3PDSvc" ) -ServiceMgr.SMZEE_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_m.*","EF_2m.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMZEE_D3PDSvc.VetoedNames += [ "trig_EF_trigmu.*" ] -ServiceMgr.SMZEE_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMZEED3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMZEED3PDStream.D3PDSvc = ServiceMgr.SMZEE_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMWZLightD3PD( SMZEED3PDStream, - stdElectronContainer = 'MediumPtElectrons', - stacoMuonContainer = 'HighPtStacoMuons', - photonContainer = 'HighPtPhotons', - jetContainer = 'HighPtJets' ) - - -# apply skim -SMZEED3PDStream.AddAcceptAlgs( ["SMWZ_ZeeFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMZEED3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMZEED3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR diff --git a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZMUMUD3PD_prodJobOFragment.py b/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZMUMUD3PD_prodJobOFragment.py deleted file mode 100644 index ddf63f7b06d142e46400137b3badfc661ef4ba28..0000000000000000000000000000000000000000 --- a/PhysicsAnalysis/D3PDMaker/PhysicsD3PDMaker/share/SMZMUMUD3PD_prodJobOFragment.py +++ /dev/null @@ -1,93 +0,0 @@ -# $Id: SMZMUMUD3PD_prodJobOFragment.py 520434 2012-10-06 13:16:34Z boonekam $ -# -# This jobO fragment is meant to be called by Reco_trf.py in transformation jobs to -# create the "SMZMUMU D3PD cart". - - -# This jobO should not be included more than once: -include.block( "PhysicsD3PDMaker/SMZMUMUD3PD_prodJobOFragment.py" ) - - -# Common import(s): -from AthenaCommon.JobProperties import jobproperties -prodFlags = jobproperties.D3PDProdFlags -from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName - - -# Set up a logger: -from AthenaCommon.Logging import logging -SMZMUMUD3PDStream_msg = logging.getLogger( 'SMZMUMUD3PD_prodJobOFragment' ) - - -# Check if the configuration makes sense: -if prodFlags.WriteSMZMUMUD3PD.isVirtual: - SMZMUMUD3PDStream_msg.error( "The SMZMUMU D3PD stream can't be virtual! " + - "It's a configuration error!" ) - raise NameError( "SMZMUMU D3PD set to be a virtual stream" ) - pass - - -# Construct the stream and file names for the SMZMUMU D3PD: -streamName = prodFlags.WriteSMZMUMUD3PD.StreamName -fileName = buildFileName( prodFlags.WriteSMZMUMUD3PD ) -SMZMUMUD3PDStream_msg.info( "Configuring SMZMUMUD3PD with streamName '%s' and fileName '%s'" % \ - ( streamName, fileName ) ) - - -#### add specific containers -include ("PhysicsD3PDMaker/ElectronSelector.py") -include ("PhysicsD3PDMaker/PhotonSelector.py") -include ("PhysicsD3PDMaker/LowPtMuonPairSelector.py") -include ("PhysicsD3PDMaker/JetSelector.py") -include ("PhysicsD3PDMaker/TauSelector.py") - - -# Configure branches -from AthenaCommon.AppMgr import ServiceMgr -from D3PDMakerRoot.D3PDMakerRootConf import D3PD__RootD3PDSvc -ServiceMgr += D3PD__RootD3PDSvc( "SMZMUMU_D3PDSvc" ) -ServiceMgr.SMZMUMU_D3PDSvc.VetoedNames = [ "L1_.*","L2_.*","EF_e.*","EF_2e.*","EF_g.*","EF_j.*","EF_2j.*","EF_tau.*" ] -ServiceMgr.SMZMUMU_D3PDSvc.VetoedNames += [ "trig_EF_el.*" ] -ServiceMgr.SMZMUMU_D3PDSvc.VetoedNames += [ ".*etx.*",".*ety.*" ] - - -# Create the D3PD streams: -from OutputStreamAthenaPool.MultipleStreamManager import MSMgr -SMZMUMUD3PDStream = MSMgr.NewRootStream( streamName, fileName, "physics" ) -SMZMUMUD3PDStream.D3PDSvc = ServiceMgr.SMZMUMU_D3PDSvc - - -# Now add all the content to this stream: -from PhysicsD3PDMaker.SMWZLightD3PD import SMWZLightD3PD -from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags -SMWZLightD3PD( SMZMUMUD3PDStream, - stdElectronContainer = 'HighPtElectrons', - stacoMuonContainer = 'LowPtStacoMuons', - muidMuonContainer = 'LowPtMuidMuons', - photonContainer = 'HighPtPhotons', - jetContainer = 'HighPtJets' ) - - -# apply skim -SMZMUMUD3PDStream.AddAcceptAlgs( ["SMWZ_ZmumuStacoFilter", "SMWZ_ZmumuMuidFilter"] ) - - -# add cut flow information -from EventCommonD3PDMaker.CutFlowMetadataConfig import CutFlowMetadataConfig -SMZMUMUD3PDStream.MetadataTools += [ CutFlowMetadataConfig( SMZMUMUD3PDStream ) ] - - -# Silence tool warnings: - -from AthenaCommon.AppMgr import ToolSvc -if not hasattr( ToolSvc, "TrigDecisionTool" ): - from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool - ToolSvc += Trig__TrigDecisionTool( "TrigDecisionTool" ) - pass -ToolSvc.TrigDecisionTool.Navigation.OutputLevel = ERROR - -if hasattr( ToolSvc, "SecondSoftMuonTagChi2" ): - ToolSvc.SecondSoftMuonTagChi2.OutputLevel = ERROR - -if hasattr( ToolSvc, "myTrkUpdator" ): - ToolSvc.myTrkUpdator.OutputLevel = ERROR