9 import g4py.NISTmaterials
11 from g4py.ezgeom
import G4EzVolume
13 import g4py.ParticleGun
23 g4py.NISTmaterials.Construct()
29 g4py.ezgeom.Construct()
34 g4py.EMSTDpl.Construct()
39 g4py.ParticleGun.Construct()
46 print(
"* Constructing geometry...")
49 g4py.ezgeom.SetWorldMaterial(air)
53 target= G4EzVolume(
"Target")
55 target.CreateTubeVolume(au, 0., 1.*cm, 1.*mm)
59 global detector_box, detector_box_pv
60 detector_box= G4EzVolume(
"DetectorBox")
61 detector_box.CreateBoxVolume(air, 20.*cm, 20.*cm, 40.*cm)
62 detector_box_pv= detector_box.PlaceIt(
G4ThreeVector(0.,0.,20.*cm))
66 cal= G4EzVolume(
"Calorimeter")
68 cal.CreateBoxVolume(nai, 5.*cm, 5.*cm, 30.*cm)
70 for ical
in range(-1, 2):
73 cal.PlaceIt(calPos, ical+1, detector_box)
82 rand_engine= Ranlux64Engine()
83 HepRandom.setTheEngine(rand_engine)
84 HepRandom.setTheSeed(20050830)
93 gRunManager.Initialize()
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
const G4ParticleDefinition const G4Material *G4double range
void print(const std::vector< T > &data)