6 """ Flags for beam structure
10 __author__ =
'D. Rousseau'
11 __version__=
"$Revision: 1.3 $"
12 __doc__=
"Beam structure flags . "
20 from AthenaCommon.JobProperties
import JobProperty, JobPropertyContainer
21 from AthenaCommon.JobProperties
import jobproperties
24 """ True wether beam info has to be taken from python rather than filemetadata
33 """ Bunch spacing in ns
41 """ Number of collisions per beam crossing
42 Should be 2.3*(L/10**33)*(bunchSpacing/25 ns)
45 allowedTypes=[
'float']
50 """ Specify data taking type : with colliding beams (default),
51 single beam or cosmics
55 allowedValues=[
'collisions',
'singlebeam',
'cosmics']
56 StoredValue=
'collisions'
60 """ Specify beam energy (MeV)
64 allowedTypes=[
'float']
69 """ Specify beam energy (MeV)
73 allowedValues=[0,1,2,3]
80 class Beam(JobPropertyContainer):
81 """ Beam information """
84 return 1E33*(jobproperties.Beam.numberOfCollisions()/2.3)*(25./jobproperties.Beam.bunchSpacing())
87 if jobproperties.Beam.numberOfCollisions()>0:
95 jobproperties.add_Container(Beam)
98 _list_Beam=[override,bunchSpacing,numberOfCollisions,beamType,energy,bunchStructureSource]
100 jobproperties.Beam.add_JobProperty(j)
104 beamFlags = jobproperties.Beam