Esempio n. 1
0
sel_elec3 = 'Electrons.pt > 15*GeV && ( Electrons.Medium || Electrons.LHMedium )'
draw_egz3 = '( ( count ( eeMass3 > 20*GeV && eeMass3 < 90*GeV ) >= 1 ) && ( count (Photons.pt > 7*GeV && Photons.Tight )>=1  ) )'

#This is for Zmmgam
sel_muon4 = 'Muons.pt > 15 *GeV'
draw_egz4 = ' ( (  count (  DREmumuMass > 20*GeV   &&  DREmumuMass < 90*GeV ) >= 1 ) && ( count (Photons.pt > 7*GeV && Photons.Tight ) >=1 ))'

# Event selection string
draw_egz = draw_egz1 + ' || ' + draw_egz3 + ' || ' + draw_egz4

# Invariant masses in various configurations
from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__InvariantMassTool

eeMassTool1 = DerivationFramework__InvariantMassTool(
    name="eeMassTool1",
    ContainerName="Electrons",
    ObjectRequirements=sel_elec1,
    MassHypothesis=0.511,
    StoreGateEntryName="eeMass1")
ToolSvc += eeMassTool1

eeMassTool3 = DerivationFramework__InvariantMassTool(
    name="eeMassTool3",
    ContainerName="Electrons",
    ObjectRequirements=sel_elec3,
    MassHypothesis=0.511,
    StoreGateEntryName="eeMass3")
ToolSvc += eeMassTool3

mmMassTool = DerivationFramework__InvariantMassTool(
    name="mmMassTool",
    ContainerName="Muons",
Esempio n. 2
0
topSequence = AlgSequence()
DRAW_ZMUMU_Seq = CfgMgr.AthSequencer("DRAW_ZMUMU_Seq")

# Object selection strings
sel_muon1 = 'Muons.pt > 25*GeV && Muons.ptcone40/Muons.pt < 0.3'
sel_muon2 = 'Muons.pt > 20*GeV && Muons.ptcone40/Muons.pt < 0.3'

# Event selection string
dimuonMassString = '( count (  DRZmumuMass > 70*GeV   &&  DRZmumuMass < 110*GeV ) >= 1 )'

# Invariant masses in various configurations
from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__InvariantMassTool
DRZmumuMassTool = DerivationFramework__InvariantMassTool(
    name="DRZmumuMassTool",
    ContainerName="Muons",
    ObjectRequirements=sel_muon1,
    SecondObjectRequirements=sel_muon2,
    MassHypothesis=105.66,
    SecondMassHypothesis=105.66,
    StoreGateEntryName="DRZmumuMass")
ToolSvc += DRZmumuMassTool
from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__xAODStringSkimmingTool
dimuonMassSkimmingTool = DerivationFramework__xAODStringSkimmingTool(
    name="DRAW_ZMUMU_DiMuonMass_SkimmingTool", expression=dimuonMassString)
ToolSvc += dimuonMassSkimmingTool

# Muon selector tool
from MuonSelectorTools.MuonSelectorToolsConf import CP__MuonSelectionTool
goodMuonTool = CP__MuonSelectionTool(name="DRAW_ZMUMU_MuonsSelector")
goodMuonTool.MaxEta = 3.
goodMuonTool.MuQuality = 3
# turn of the momentum correction which is not needed for IDHits cut and Preselection
Esempio n. 3
0
#HLT_e5_tight1_e4_etcut || HLT_e5_tight1_e4_etcut_Jpsiee || HLT_e5_tight_e4_etcut_L1JPSI-1M5 || HLT_e5_lhtight_e4_etcut_L1JPSI-1M5 ||
#HLT_e5_tight1_e4_etcut_L1JPSI-1M5 || HLT_e5_tight_e4_etcut_Jpsiee_L1JPSI-1M5 || e9_tight_e4_etcut_Jpsiee_L1JPSI-1M5-EM7 ||
#HLT_e9_etcut_e5_tight_Jpsiee_L1JPSI-1M5-EM7 || HLT_e14_tight_e4_etcut_Jpsiee_L1JPSI-1M5-EM12 || HLT_e14_etcut_e5_tight_Jpsiee_L1JPSI-1M5-EM12 ||
#HLT_e5_lhtight_e4_etcut_Jpsiee_L1JPSI-1M5 || HLT_e9_lhtight_e4_etcut_Jpsiee_L1JPSI-1M5-EM7 || HLT_e9_etcut_e5_lhtight_Jpsiee_L1JPSI-1M5-EM7 ||
#HLT_e14_lhtight_e4_etcut_Jpsiee_L1JPSI-1M5-EM12 || HLT_e14_etcut_e5_lhtight_Jpsiee_L1JPSI-1M5-EM12, HLT_e5_tight1_e4_etcut_Jpsiee_L1JPSI-1M5 ) '

# Event selection string

draw_egcalib = draw_egcalib2

# Invariant masses in various configurations
from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__InvariantMassTool

eeMassTool2 = DerivationFramework__InvariantMassTool(
    name="eeMassTool2",
    ContainerName="Electrons",
    ObjectRequirements=sel_elec2,
    MassHypothesis=0.511,
    StoreGateEntryName="eeMass2")
ToolSvc += eeMassTool2

# Event selection tool
from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__xAODStringSkimmingTool
DRAW_EGJPSI_SkimmingTool = DerivationFramework__xAODStringSkimmingTool(
    name="DRAW_EGJPSI_SkimmingTool", expression=draw_egcalib)

ToolSvc += DRAW_EGJPSI_SkimmingTool
print(DRAW_EGJPSI_SkimmingTool)

# Kernel algorithm
from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel
DRAW_EGJPSI_Seq += CfgMgr.DerivationFramework__DerivationKernel(
Esempio n. 4
0
            'HLT_mu28_imedium',
            'HLT_mu28_ivarmedium',
            'HLT_mu40',
            'HLT_mu50'
        ]
        expression_trigM = ' || '.join(triggersM)

        # Zee TnP
        requirement_Zee_tag = '(Electrons.Tight || Electrons.LHTight) && Electrons.pt > 24.5*GeV'
        requirement_Zee_probe = 'Electrons.pt > 6.5*GeV'

        ZeeMassTool = DerivationFramework__InvariantMassTool(
            name="ZeeMassTool",
            ObjectRequirements=requirement_Zee_tag,
            SecondObjectRequirements=requirement_Zee_probe,
            StoreGateEntryName="Zee_DiElectronMass",
            MassHypothesis=0.511 * MeV,
            SecondMassHypothesis=0.511 * MeV,
            ContainerName="Electrons",
            SecondContainerName="Electrons")

        ToolSvc += ZeeMassTool
        expression_Zee = 'count(Zee_DiElectronMass > 75.0*GeV && Zee_DiElectronMass < 105.0*GeV)>=1'

        # Zmumu TnP
        requirement_Zmm_tag = 'Muons.ptcone40/Muons.pt < 0.3 && Muons.pt > 10.*GeV'
        requirement_Zmm_probe = 'Muons.ptcone40/Muons.pt < 0.3 && Muons.pt > 4.5*GeV'

        ZmmMassTool = DerivationFramework__InvariantMassTool(
            name="ZmmMassTool",
            ObjectRequirements=requirement_Zmm_tag,