9 import g4py.ExN01pl, g4py.ParticleGun
    16   "My Detector Construction"    19     G4VUserDetectorConstruction.__init__(self)
    20     self.
air= gNistManager.FindOrBuildMaterial(
"G4_AIR")
    34     global sld_world, lv_world, pv_world, va_world
    36     sld_world= 
G4Box(
"world", 1.*m, 1.*m, 1.*m)
    42     va_world.SetVisibility(
False)
    43     lv_world.SetVisAttributes(va_world)
    46     global sld_sld, lv_sld, pv_sld
    47     sld_sld= 
G4Box(
"dummy", 10.*cm, 10.*cm, 10.*cm)
    57     sld_box= 
G4Box(
"box", 30.*cm, 40.*cm, 60.*cm)
    60     gRunManager.GeometryHasBeenModified()
    65     sld_tubs= 
G4Tubs(
"tubs", 10.*cm, 15.*cm, 20.*cm, 0., pi)
    68     gRunManager.GeometryHasBeenModified()
    73     sld_cons= 
G4Cons(
"cons", 5.*cm, 10.*cm, 20.*cm, 25.*cm,
    77     gRunManager.GeometryHasBeenModified()
    82     sld_para= 
G4Para(
"para", 30.*cm, 40.*cm, 60.*cm, pi/4., pi/8., 0.)
    85     gRunManager.GeometryHasBeenModified()
    90     sld_trd= 
G4Trd(
"trd", 30.*cm, 10.*cm, 40.*cm, 15.*cm, 60.*cm)
    93     gRunManager.GeometryHasBeenModified()
    98     sld_trap= 
G4Trap(
"trap", 60.*cm, 20.*degree, 5.*degree,
    99                      40.*cm, 30.*cm, 40.*cm, 10.*degree,
   100                      16.*cm, 10*cm, 14.*cm, 10.*deg)
   103     gRunManager.GeometryHasBeenModified()
   108     sld_sphere= 
G4Sphere(
"sphere", 100.*cm, 120.*cm, 0., 180.*deg,
   112     gRunManager.GeometryHasBeenModified()
   117     sld_orb= 
G4Orb(
"orb", 100.*cm)    
   120     gRunManager.GeometryHasBeenModified()
   125     sld_torus= 
G4Torus(
"torus", 40.*cm, 60.*cm, 200.*cm, 0., 90.*deg)    
   128     gRunManager.GeometryHasBeenModified()
   136     zvec[:]= [ 5.*cm, 7.*cm, 9.*cm, 11.*cm, 25.*cm, 27.*cm, 29.*cm,
   138     rinvec[:]= [0.,0.,0.,0.,0.,0.,0.,0.,0.]
   139     routvec[:]= [ 0., 10.*cm, 10.*cm, 5.*cm, 5.*cm, 10.*cm,
   140                   10.*cm, 2.*cm, 2.*cm ]
   143     sld_pcon= CreatePolycone(
"pcon", 0., twopi, 9, zvec, rinvec,routvec)
   146     gRunManager.GeometryHasBeenModified()
   154     zvec[:]= [ 0., 5.*cm, 8.*cm, 13.*cm, 30.*cm, 32.*cm, 35.*cm ]
   155     rinvec[:]= [0.,0.,0.,0.,0.,0.,0. ]
   156     routvec[:]= [ 0., 15.*cm, 15.*cm, 4.*cm, 4.*cm, 10.*cm, 10.*cm ]
   159     sld_pgon= CreatePolyhedra(
"pgon", 0., twopi, 5, 7, zvec, rinvec,routvec)
   162     gRunManager.GeometryHasBeenModified()
   170     gRunManager.GeometryHasBeenModified()
   175     sld_es= 
G4Ellipsoid(
"ellipsoid", 10.*cm, 20.*cm, 50.*cm,
   179     gRunManager.GeometryHasBeenModified()
   188     gRunManager.GeometryHasBeenModified()
   193     sld_hype= 
G4Hype(
"hype", 20.*cm, 30.*cm, 0.7, 0.7, 50.*cm)
   196     gRunManager.GeometryHasBeenModified()
   202     p2= 
G4ThreeVector(0., 2*math.sqrt(2./3.)*cm, -1./math.sqrt(3)*cm)
   208     sld_tet= 
G4Tet(
"tet", 20.*p1, 20.*p2, 20.*p3, 20.*p4)
   211     gRunManager.GeometryHasBeenModified()
   216     sld_twb= 
G4TwistedBox(
"twistedbox", 30.*deg, 30.*cm, 40.*cm, 60.*cm)
   219     gRunManager.GeometryHasBeenModified()
   225                              60.*cm, 20.*deg, 5.*deg,
   226                              40.*cm, 30.*cm, 40.*cm,
   227                              16.*cm, 10.*cm, 14.*cm, 10.*deg)
   230     gRunManager.GeometryHasBeenModified()
   236                             40.*cm, 15.*cm, 60.*cm, 30.*deg)
   239     gRunManager.GeometryHasBeenModified()
   245                            10.*cm, 15.*cm, 20.*cm, 90.*deg)
   248     gRunManager.GeometryHasBeenModified()
   257 os.environ[
"G4VRML_DEST_DIR"]= 
"."   258 os.environ[
"G4VRMLFILE_MAX_FILE_NUM"]= 
"1"   259 os.environ[
"G4VRMLFILE_VIEWER"]= 
"echo"   263 gRunManager.SetUserInitialization(myDC)
   266 g4py.ExN01pl.Construct()
   269 g4py.ParticleGun.Construct()
   272 gRunManager.Initialize()
   283   (
"g4box",            myDC.ConstructBox),
   284   (
"g4tubs",           myDC.ConstructTubs),
   285   (
"g4cons",           myDC.ConstructCons),
   286   (
"g4para",           myDC.ConstructPara),
   287   (
"g4trd",            myDC.ConstructTrd),
   288   (
"g4trap",           myDC.ConstructTrap),
   289   (
"g4sphere",         myDC.ConstructSphere),
   290   (
"g4orb",            myDC.ConstructOrb),
   291   (
"g4torus",          myDC.ConstructTorus),
   292   (
"g4polycone",       myDC.ConstructPolycone),
   293   (
"g4polyhedra",      myDC.ConstructPolyhedra),
   294   (
"g4ellipticaltube", myDC.ConstructEllipticalTube),
   295   (
"g4ellipsoid",      myDC.ConstructEllipsoid),
   296   (
"g4ellipticalcone", myDC.ConstructEllipticalCone),
   297   (
"g4hype",           myDC.ConstructHype),
   298   (
"g4tet",            myDC.ConstructTet),
   299   (
"g4twistedbox",     myDC.ConstructTwistedBox),
   300   (
"g4twistedtrap",    myDC.ConstructTwistedTrap),
   301   (
"g4twistedtrd",     myDC.ConstructTwistedTrd),
   302   (
"g4twistedtubs",    myDC.ConstructTwistedTubs)
   307   gRunManager.BeamOn(1)  
   308   fname= 
"%s.wrl" % (s)
   309   os.rename(
"g4_00.wrl", fname)
 virtual G4VPhysicalVolume * Construct()=0
 
def ConstructEllipsoid(self)
 
def ConstructPolyhedra(self)
 
def ConstructTwistedTrd(self)
 
def ConstructEllipticalTube(self)
 
def ConstructTwistedBox(self)
 
def ConstructTwistedTubs(self)
 
def ConstructTwistedTrap(self)
 
def ConstructEllipticalCone(self)
 
def ConstructSphere(self)
 
std::vector< G4double > G4doubleVector
 
def ConstructPolycone(self)