/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 #!/usr/bin/env python 00002 00003 class Uranium: 00004 ''' 00005 configure Uranium generator 00006 ''' 00007 00008 def __init__(self, 00009 stage='null', 00010 name='Uranium', 00011 volume='/dd/Structure/AD/far-oil1', 00012 start_time=0): 00013 00014 # set up Gnrtr itself 00015 from Gnrtr.GnrtrConf import Gnrtr 00016 gnrtr = Gnrtr(name); 00017 00018 gnrtr.GenTools = ["GtUDecaysGenTool/"+name+"Gen", 00019 "GtPositionerTool/"+name+"Pos", 00020 "GtUDecaysTimeTool/"+name+"Tim", 00021 "GtTransformTool/"+name+"Tra" ] 00022 00023 gnrtr.ThisStageName = "Kinematic" 00024 gnrtr.TimeStamp = start_time 00025 00026 if stage != 'null': 00027 stage.KinematicSequence.Members.append(gnrtr) 00028 00029 # set up each tools 00030 from GaudiKernel import SystemOfUnits as units 00031 from GenTools.GenToolsConf import GtPositionerTool, GtTransformTool, GtTimeratorTool, GtHepEvtGenTool 00032 from GenRad.GenRadConf import GtUDecaysGenTool, GtThDecaysGenTool, GtUDecaysTimeTool 00033 # Set up Gen 00034 #generator 00035 gen=GtUDecaysGenTool(name+'Gen') 00036 #gen.OutputLevel = 2 00037 00038 # Set up positioner 00039 pos=GtPositionerTool(name+'Pos',Volume=volume) 00040 pos.Strategy = "FullVolume" # also "AvoidDaughters" and "Surface" 00041 pos.Mode = "Uniform" 00042 #pos.Mode = "Fixed" 00043 pos.Spread = 25*units.m 00044 pos.Position = [0,0,2.5*units.m] 00045 00046 # Set up timerator 00047 tim=GtUDecaysTimeTool(name+'Tim') 00048 tim.LifeTime = int(30000*units.ns) 00049 00050 # transform 00051 tra=GtTransformTool(name+'Tra',Volume=volume) 00052 00053 pass 00054 00055 if __name__ == "__main__": 00056 obj=Uranium()