Beispiel #1
0
def makeEESS():
    eess = DiElectronMaker('EESSForDarkBoson')
    eess.Particle = "J/psi(1S)"
    selector = trackSelector(eess, trackTypes=["Long"]) 
    eess.addTool(ProtoParticleCALOFilter, name='Electron')
    eess.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>-2"]
    eess.DiElectronMassMax = 5000
    eess.DiElectronMassMin = 0
    eess.DiElectronPtMin = 250
    eess.ElectronPtMin = 100
    eess.OppositeSign = False
    return Selection('EESSDarkBosonSel',Algorithm=eess)
Beispiel #2
0
def makeEEdd(default_config):
    eedd = DiElectronMaker('EEDDForDarkBoson')
    eedd.Particle = "KS0"
    selector = trackSelector(eedd, trackTypes=["Downstream"]) 
    eedd.addTool(ProtoParticleCALOFilter, name='Electron')
    eedd.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'%s'" \
                               % default_config['PID']['E']['PIDe_MIN']]
    eedd.DiElectronMassMax = 5000
    eedd.DiElectronMassMin = 0
    eedd.DiElectronPtMin = 250
    eedd.ElectronPtMin = 100
    eedd.ElectronPIDcut = default_config['PID']['E']['PIDe_MIN']
    
    sel = Selection('EEDDDarkBosonSel',Algorithm=eedd)
    code = LoKiCuts(['HASVERTEX','BPVVDCHI2','VCHI2DOF'],default_config['V']).code()
    #print 'makeEEdd', code
    return Selection('FilterEEDDDarkBoson',Algorithm=FilterDesktop(Code=code),
                     RequiredSelections=[sel])
Beispiel #3
0
Standard Di-Electron maker from 2 electrons
"""
StdLooseDiElectron = CombineParticles("StdLooseDiElectron")
StdLooseDiElectron.DecayDescriptor = "J/psi(1S) -> e+ e-"
StdLooseDiElectron.Inputs = ["Phys/StdAllLooseElectrons/Particles"]
StdLooseDiElectron.DaughtersCuts = {"e+": "(PT>500*MeV)"}
StdLooseDiElectron.CombinationCut = "(AM>30*MeV) & (ADOCACHI2CUT(30,''))"
StdLooseDiElectron.MotherCut = "(VFASPF(VCHI2)<25)"
locations = updateDoD(StdLooseDiElectron)
"""
Using Olivier's Di-Electron Particle Maker
"""
###--- From Olivier's ParticleMaker
from Configurables import DiElectronMaker, ProtoParticleCALOFilter
from GaudiKernel.SystemOfUnits import *
dieLL = DiElectronMaker('StdDiElectronFromTracks')
dieLL.Particle = "J/psi(1S)"
selector = trackSelector(dieLL, trackTypes=["Long"])
dieLL.addTool(ProtoParticleCALOFilter('Electron'))
dieLL.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'-2.0'"]
dieLL.DiElectronMassMax = 5000. * MeV
dieLL.DiElectronMassMin = 0. * MeV
dieLL.DiElectronPtMin = 200. * MeV
locations = updateDoD(dieLL)
StdDiElectronFromTracks = dieLL

## ============================================================================
if '__main__' == __name__:

    print __doc__
    print __author__
Beispiel #4
0
# =============================================================================
"""
Configuration file for 'Standard DiElectrons from gamma conversion with PT reversed for background studies'
"""
__author__ = "Olivier Deschamps : Olivier.Deschamps @cern.ch"
__version__ = "CVS tag $Name: not supported by cvs2svn $, version $Revision: 1.1 $"
# =============================================================================
__all__ = ('StdAllTightSymGammaLL', 'StdAllTightSymGammaDD', 'locations')
# =============================================================================
from Gaudi.Configuration import *
from CommonParticles.Utils import *
from GaudiKernel.SystemOfUnits import *

###--- Long pair
from Configurables import DiElectronMaker, ProtoParticleCALOFilter
dieSymLL = DiElectronMaker('StdAllTightSymGammaLL')
dieSymLL.DecayDescriptor = "gamma -> e+ e-"
selector = trackSelector(dieSymLL, trackTypes=["Long"])
dieSymLL.addTool(ProtoParticleCALOFilter('Electron'))
dieSymLL.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'0.0'"]
dieSymLL.DeltaY = 3.
dieSymLL.DeltaYmax = 200 * mm
dieSymLL.DiElectronMassMax = 100. * MeV
dieSymLL.DiElectronPtMin = 400. * MeV
dieSymLL.SymetricPair = True

locations = updateDoD(dieSymLL)
StdAllTightSymGammaLL = dieSymLL

###--- Downstream pair
dieSymDD = DiElectronMaker('StdAllTightSymGammaDD')
"""
StdLooseDiElectron = CombineParticles("StdLooseDiElectron")
StdLooseDiElectron.DecayDescriptor = "J/psi(1S) -> e+ e-"
StdLooseDiElectron.Inputs = ["Phys/StdAllLooseElectrons/Particles"]
StdLooseDiElectron.DaughtersCuts = { "e+" : "(PT>500*MeV)" }
StdLooseDiElectron.CombinationCut = "(AM>30*MeV) & (ADOCACHI2CUT(30,''))"
StdLooseDiElectron.MotherCut = "(VFASPF(VCHI2)<25)"
locations.update( updateDoD(StdLooseDiElectron) )

"""
Using Olivier's Di-Electron Particle Maker
"""
###--- From Olivier's ParticleMaker
from Configurables import DiElectronMaker, ProtoParticleCALOFilter
from GaudiKernel.SystemOfUnits import *
dieLL = DiElectronMaker('StdDiElectronFromTracks')
dieLL.Particle = "J/psi(1S)"
selector = trackSelector ( dieLL , trackTypes = ["Long"] ) 
dieLL.addTool( ProtoParticleCALOFilter, name='Electron' )
dieLL.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'-2.0'"]
dieLL.DiElectronMassMax = 5000.*MeV
dieLL.DiElectronMassMin = 0.*MeV
dieLL.DiElectronPtMin = 200.*MeV
locations.update( updateDoD(dieLL) )
StdDiElectronFromTracks = dieLL

# gamma version (clone)
StdDiElectronGamma =  DiElectronMaker('StdDiElectronFromTracks').clone("StdDiElectronGamma")
StdDiElectronGamma.Particle = "gamma"
locations.update(updateDoD( StdDiElectronGamma ))
# =============================================================================
"""
Configuration file for 'Standard DiElectrons from gamma conversion'
"""
__author__ = "Olivier Deschamps : Olivier.Deschamps @cern.ch"
__version__ = "CVS tag $Name: not supported by cvs2svn $, version $Revision: 1.1 $"
# =============================================================================
__all__ = ('StdAllTightGammaLL', 'StdAllTightGammaDD', 'locations')
# =============================================================================
from Gaudi.Configuration import *
from CommonParticles.Utils import *
from GaudiKernel.SystemOfUnits import *

###--- Long pair
from Configurables import DiElectronMaker, ProtoParticleCALOFilter
dieLL = DiElectronMaker('StdAllTightGammaLL')
dieLL.DecayDescriptor = "gamma -> e+ e-"
selector = trackSelector(dieLL, trackTypes=["Long"])
dieLL.addTool(ProtoParticleCALOFilter('Electron'))
dieLL.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'0.0'"]
dieLL.DeltaY = 3.
dieLL.DeltaYmax = 200 * mm
dieLL.DiElectronMassMax = 100. * MeV
dieLL.DiElectronPtMin = 200. * MeV
locations = updateDoD(dieLL)
StdAllTightGammaLL = dieLL

###--- Downstream pair
dieDD = DiElectronMaker('StdAllTightGammaDD')
dieDD.DecayDescriptor = "gamma -> e+ e-"
selector = trackSelector(dieDD, trackTypes=["Downstream"])
Beispiel #7
0
"""
Configuration file for 'Standard DiElectrons from gamma conversion'
"""
__author__ = "Olivier Deschamps : Olivier.Deschamps @cern.ch"
__version__ = "CVS tag $Name: not supported by cvs2svn $, version $Revision: 1.1 $"
# =============================================================================
__all__ = ('StdAllLooseGammaLL', 'StdAllLooseGammaDD', 'locations')
# =============================================================================
from Gaudi.Configuration import *
from CommonParticles.Utils import *
from GaudiKernel.SystemOfUnits import *
from Configurables import (DiElectronMaker, ProtoParticleCALOFilter,
                           OfflineVertexFitter, ParticleTransporter)

###--- Long pair
dieLL = DiElectronMaker('StdAllLooseGammaLL')
dieLL.DecayDescriptor = "gamma -> e+ e-"
selector = trackSelector(dieLL, trackTypes=["Long"])
dieLL.addTool(ProtoParticleCALOFilter, name='Electron')
dieLL.Electron.Selection = ["RequiresDet='CALO' CombDLL(e-pi)>'-2.0'"]
dieLL.DeltaY = 3.
dieLL.DeltaYmax = 200 * mm
dieLL.DiElectronMassMax = 100. * MeV
dieLL.DiElectronPtMin = 200. * MeV
locations = updateDoD(dieLL)
StdAllLooseGammaLL = dieLL

###--- Downstream pair
dieDD = DiElectronMaker('StdAllLooseGammaDD')
dieDD.DecayDescriptor = "gamma -> e+ e-"
selector = trackSelector(dieDD, trackTypes=["Downstream"])