ATLAS Offline Software
Loading...
Searching...
No Matches
jobOptions.decayer.py
Go to the documentation of this file.
1
6
7import AthenaCommon.AtlasUnixGeneratorJob
8
9from AthenaCommon.AppMgr import theApp
10from AthenaCommon.AppMgr import ServiceMgr
11
12#--------------------------------------------------------------
13# Private Application Configuration options
14#--------------------------------------------------------------
15#load relevant libraries
16from PartPropSvc.PartPropSvcConf import PartPropSvc
17ServiceMgr += PartPropSvc()
18
19# The following is needed to load the Athena Random
20# Number Generation Service.
21from RngComps.RngCompsConf import AtRanluxGenSvc
22ServiceMgr += AtRanluxGenSvc()
23ServiceMgr.AtRanluxGenSvc.Seeds = ["SINGLE 2040160768 443921183"]
24# AtRanluxGenSvc.ReadFromFile = TRUE
25
26#--------------------------------------------------------------
27# Set output level threshold (1=VERBOSE, 2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL )
28#--------------------------------------------------------------
29ServiceMgr.MessageSvc.OutputLevel = VERBOSE
30
31#--------------------------------------------------------------
32# Event related parameters
33#--------------------------------------------------------------
34# Number of events to be processed (default is 10)
35theApp.EvtMax = 100000
36
37#--------------------------------------------------------------
38# ParticleGenerator parameters
39#--------------------------------------------------------------
40from AthenaCommon.AlgSequence import AlgSequence
41job=AlgSequence()
42
43# get the configurable class
44from ParticleGenerator.ParticleGeneratorConf import ParticleGenerator
45job += ParticleGenerator()
46
47
48# For VERBOSE output from ParticleGenerator.
49job.ParticleGenerator.OutputLevel = DEBUG
50
51#This is an example of configuration of ParticleGenerator
52job.ParticleGenerator.orders = [
53 "pdgcode[0]: constant 999",
54 "et[0]: flat 10000. 100000.",
55 #"vertZ[0]: gaussian 0 50",
56 "eta[0]: flat -2.5 2.5",
57 "phi[0]: flat -3.14159 3.14159"
58
67 ]
68
69#--------------------------------------------------------------
70# ParticleDecayer parameters
71#--------------------------------------------------------------
72from ParticleDecayer.ParticleDecayerConf import ParticleDecayer
73job += ParticleDecayer()
74job.ParticleDecayer.OutputLevel = DEBUG
75job.ParticleDecayer.McEventCollection = "GEN_EVENT"
76
77
82job.ParticleDecayer.LJType = 2 #LeptonJet type: 1 = one dark photon per LeptonJet, 2 = two dark photons per LeptonJet
83job.ParticleDecayer.ScalarMass = 5000 #new mass of the scalar in MeV
84job.ParticleDecayer.ScalarPDGID = 700021 #new PDGID of the scalar
85job.ParticleDecayer.ParticleID = 999 #We use "geantino" to indicate dark scalar
86job.ParticleDecayer.ParticleMass = 600 #new mass of the dark photon in MeV
87job.ParticleDecayer.ParticleLifeTime = 100 #new ctau of the dark photon in mm
88job.ParticleDecayer.ParticlePolarization = -1 #polarization of the dark photon: 0 = isotropic decay, -1 = tranverse, 1 = longitudinal
89job.ParticleDecayer.OppositePolarization = False
90job.ParticleDecayer.ParticlePDGID = 700022 #Use this new code for dark photon
91
92
102
103
104#decay mode of the dark photon(s): you need to specify the XX% electrons, YY% muons, ZZ% pions. NB: sum must be 1!!))
105job.ParticleDecayer.DecayBRElectrons = 0.30 #dark photon BR to electrons
106job.ParticleDecayer.DecayBRMuons = 0.30 #dark photon BR to muons
107job.ParticleDecayer.DecayBRPions = 0.40 #dark photon BR to pions
108
109job.ParticleDecayer.DoUniformDecay = False # Uniform in decay radius
110job.ParticleDecayer.DoExponentialDecay = True
111job.ParticleDecayer.ExpDecayDoVariableLifetime = True
112job.ParticleDecayer.ExpDecayPercentageToKeep = 0.8
113job.ParticleDecayer.ExpDecayDoTruncateLongDecays = True
114
115job.ParticleDecayer.BarrelRadius = 8.e3 # in mm
116job.ParticleDecayer.EndCapDistance = 11.e3 # in mm
117job.ParticleDecayer.ThetaEndCapBarrel = 0.628796286 #0.439067982 = eta of 1.5
118
119#---------------------------------------------------------------
120# Pool Persistency
121#---------------------------------------------------------------
122from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream
123Stream1 = AthenaPoolOutputStream( "StreamEVGEN" )
124Stream1.OutputFile = "ParticleDecayer.EVNT.pool.root"
125Stream1.ItemList += [ "2101#*", "133273#*" ]
126
127#==============================================================
128#
129# End of job options file
130#
131
The default ATLAS random number engine manager, based on Ranlux64.