ATLAS Offline Software
GauginosConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaConfiguration.ComponentFactory import CompFactory
4 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5 from AthenaCommon.SystemOfUnits import GeV,ns # noqa: F401
6 
7 
8 def GauginosPhysicsToolCfg(flags, name="GauginosPhysicsTool", **kwargs):
9  result = ComponentAccumulator()
10  # Example specialConfiguration {'GMSBSlepton': '100.0*GeV', 'GMSBGravitino': '1e-07*GeV', 'GMSBSleptonTime': '0.01*ns'}
11  NeutralinoMass = 0*GeV
12  if "coannihilationNeutralino" in flags.Input.SpecialConfiguration:
13  NeutralinoMass = eval(flags.Input.SpecialConfiguration.get("coannihilationNeutralino", "0*GeV"))
14  # The Neutralino is stable in this scenario, therefore leaving
15  # NeutralinoLifetime at the C++ default value of -1
16  elif "GMSBNeutralino" in flags.Input.SpecialConfiguration:
17  NeutralinoMass = eval(flags.Input.SpecialConfiguration.get("GMSBNeutralino", "0*GeV"))
18  GMSBTime = eval(flags.Input.SpecialConfiguration.get("GMSBLifeTime", "0*GeV"))
19  kwargs.setdefault("NeutralinoLifetime", GMSBTime)
20 
21  kwargs.setdefault("NeutralinoStable", "coannihilationNeutralino" in flags.Input.SpecialConfiguration)
22  kwargs.setdefault("NeutralinoMass", NeutralinoMass)
23 
24  if "GMSBGravitino" in flags.Input.SpecialConfiguration:
25  GMSBGravitino = eval(flags.Input.SpecialConfiguration.get("GMSBGravitino", "0*GeV"))
26  kwargs.setdefault("GravitinoMass", GMSBGravitino)
27  result.setPrivateTools( CompFactory.GauginosPhysicsTool(name, **kwargs) )
28  return result
29 
30 
31 def NeutralinoToPhotonGravitinoCfg(flags, name="NeutralinoToPhotonGravitino", **kwargs):
32  result = ComponentAccumulator()
33  kwargs.setdefault("ParticleName","s_chi_0_1")
34  kwargs.setdefault("BR", 1.0) # Branching Ratio
35  kwargs.setdefault("Daughters","s_G,gamma")
36  result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
37  return result
SystemOfUnits
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
GauginosConfig.GauginosPhysicsToolCfg
def GauginosPhysicsToolCfg(flags, name="GauginosPhysicsTool", **kwargs)
Definition: GauginosConfig.py:8
GauginosConfig.NeutralinoToPhotonGravitinoCfg
def NeutralinoToPhotonGravitinoCfg(flags, name="NeutralinoToPhotonGravitino", **kwargs)
Definition: GauginosConfig.py:31