Public Member Functions | |
def | __init__ |
def | init |
def | init_gen_tools |
def | init_generator |
Public Attributes | |
app | |
nevents | |
seed | |
volume | |
hepevt_source |
Definition at line 3 of file gentools.py.
def gentools::GenToolsConfig::__init__ | ( | self, | ||
volume = "/dd/Geometry/AD/lvAD" , |
||||
nevents = 10 , |
||||
seed = 1234567 , |
||||
Use, | ||||
Co60, | ||||
exe, | ||||
because, | ||||
it, | ||||
is, | ||||
fast, | ||||
easy, | ||||
testing, | ||||
hepevt_source = "Co60.exe -seed %(seed)s -n %(nevents)s|" | ||||
) |
Definition at line 4 of file gentools.py.
00009 : 00010 import GaudiPython as gm 00011 self.app = gm.AppMgr() 00012 #msg = self.app.service("MessageSvc") 00013 #msg.OutputLevel = 1 00014 self.nevents = nevents 00015 self.seed = seed 00016 self.volume = volume 00017 self.hepevt_source=hepevt_source 00018 self.init() 00019 return 00020 def init(self):
def gentools::GenToolsConfig::init | ( | self | ) |
Definition at line 21 of file gentools.py.
00021 : 00022 self.init_gen_tools() 00023 self.init_generator() 00024 return 00025 def init_gen_tools(self):
def gentools::GenToolsConfig::init_gen_tools | ( | self | ) |
Definition at line 26 of file gentools.py.
00026 : 00027 from GaudiKernel import SystemOfUnits as units 00028 00029 #print " init_gen_tools" 00030 00031 # Set up timerator 00032 tim = self.app.property("ToolSvc.GtTimeratorTool") 00033 #tim.OutputLevel=1 00034 tim.LifeTime = int(1*units.second) 00035 00036 00037 # Set up positioner 00038 #print " Creating poser" 00039 poser = self.app.property("ToolSvc.GtPositionerTool") 00040 poser.OutputLevel = 2 00041 poser.Volume = self.volume 00042 poser.Strategy = "FullVolume" # also "AvoidDaughters" and "Surface" 00043 poser.Mode = "Uniform" 00044 poser.Spread = 10*units.cm 00045 poser.Position = [0,0,0] 00046 00047 # Deal with executable 00048 if self.hepevt_source[-1] == "|": 00049 exe = self.hepevt_source.split(' ')[0] 00050 if exe[0] != '/': # Try to find full path 00051 import os, os.path 00052 path = os.getenv('PATH') 00053 for p in path: 00054 if (os.path.isfile(path+"/"+exe)): 00055 exe = path+"/"+exe 00056 break 00057 continue 00058 pass 00059 source = exe + ' ' + ' '.join(self.hepevt_source.split(' ')[1:]) 00060 if "%" in source: # Fill in any placemarks 00061 source = source%{'nevents':str(self.nevents), 00062 'seed':str(self.seed)} 00063 pass 00064 pass 00065 00066 00067 # HEPEvt -> HepMC generator 00068 #hepevt = self.app.property("ToolSvc.GtHepEvtGenTool") 00069 #hepevt.HepEvtDataSource = source 00070 #print " HepEvtGenTool with", source 00071 00072 # Set up gun 00073 gun = self.app.property("ToolSvc.GtGunGenTool") 00074 gun.OutputLevel = 2 00075 gun.ParticleName = "opticalphoton" 00076 gun.MomentumMode = "Fixed" 00077 gun.Momentum = 2.5*units.eV 00078 gun.DirectionMode = "Fixed" 00079 gun.Direction = [ 0.0,0.0,-1.0 ] 00080 00081 00082 return 00083 def init_generator(self):
def gentools::GenToolsConfig::init_generator | ( | self | ) |
Definition at line 84 of file gentools.py.
00084 : 00085 #print " init_generator" 00086 # self.app.TopAlg += [ "Gnrtr/Generator", "GtHepMCDumper/Dumper" ] 00087 self.app.TopAlg += [ "Gnrtr/Generator" ] 00088 #print " GtGenerator" 00089 gen = self.app.algorithm("Generator") 00090 #gen.OutputLevel = 2 00091 #gen.GenTools = [ "GtHepEvtGenTool", "GtPositionerTool", "GtTimeratorTool" ] 00092 gen.GenTools = [ "GtGunGenTool/GunGen", "GtPositionerTool/GunPos", "GtTimeratorTool/GunTim" ] 00093 gen.GenName = "Bang Bang" 00094 gen.Location = "/Event/Gen/HepMCEvents" # this is default anyways 00095 00096 #print " GtDumper" 00097 dump = self.app.algorithm("Dumper") 00098 dump.Location = "/Event/Gen/HepMCEvents" # this is default anyways. 00099 return 00100 if '__main__' == __name__:
Definition at line 6 of file gentools.py.
Definition at line 9 of file gentools.py.
Definition at line 10 of file gentools.py.
Definition at line 11 of file gentools.py.
Definition at line 12 of file gentools.py.