Geant4_10
ugeom.F
Go to the documentation of this file.
1 
2  SUBROUTINE ugeom
3 *
4 * *** Define user geometry set up
5 *
6 #include "geant321/gcbank.inc"
7 #include "pvolum.inc"
8 *
9  dimension zair(2),aair(2),wair(2)
10  dimension zh2o(2),ah2o(2),wh2o(2)
11  dimension zbgo(3),abgo(3),wbgo(3)
12  dimension zpbwo(3),apbwo(3),wpbwo(3)
13 
14  dimension par(3)
15 
16 *
17 * *** Air mixture parameters
18  DATA zair/ 7.00, 8.00 /
19  DATA aair/ 14.01, 16.00 /
20  DATA wair/ 0.70, 0.30 /
21 *
22 * *** H2O compound parameters
23  DATA zh2o/ 1.00, 8.00 /
24  DATA ah2o/ 1.01, 16.00 /
25  DATA wh2o/ 2. , 1. /
26 *
27 * *** BGO compound parameters
28  DATA zbgo/ 8.00, 32.00, 83.00 /
29  DATA abgo/ 16.00, 72.59, 208.98 /
30  DATA wbgo/ 12. , 3. , 4. /
31 *
32 * *** PbWO4 compound parameters
33  DATA zpbwo/ 8.00, 74.00, 82.00 /
34  DATA apbwo/ 16.00, 183.84, 207.19 /
35  DATA wpbwo/ 4. , 1. , 1. /
36 *
37 * *** Defines USER perticular materials
38 *
39  CALL gsmixt( 1,'Air' , aair , zair , 1.29e-3, 2,wair)
40  CALL gsmixt( 2,'Water' , ah2o , zh2o , 1.0 ,-2,wh2o)
41  CALL gsmate( 3,'Ar Liquid', 40.00, 18. , 1.39 ,14.0 ,84.0,0,0)
42  CALL gsmate( 4,'Aluminium', 26.98, 13. , 2.7 , 8.9 ,37.2,0,0)
43  CALL gsmate( 5,'Iron' , 55.85, 26. , 7.87 , 1.76,17.1,0,0)
44  CALL gsmixt( 6,'BGO' , abgo , zbgo , 7.1 ,-3,wbgo)
45  CALL gsmixt( 7,'PbWO4' , apbwo, zpbwo, 8.28 ,-3,wpbwo)
46  CALL gsmate( 8,'Lead ' ,207.19, 82. ,11.35 ,0.56,18.5,0,0)
47  CALL gsmate( 9,'Tungsten' ,183.85, 74. ,19.30 ,0.35, 9.6,0,0)
48 
49  CALL gsmate(10,'Copper' , 63.55, 29. , 8.96 , 1.43,17.1,0,0)
50  CALL gsmate(11,'Uranium' ,238.03, 92. ,18.95 , 0.32,17.1,0,0)
51 *
52 * *** Defines USER tracking media parameters
53  fieldm = 0.0
54  ifield = 0
55  tmaxfd = 10.0
56  stemax = 1000.
57  IF (stepmax.gt.0.) stemax = stepmax
58  deemax = 0.20
59  epsil = 0.001
60  stmin = 0.010
61 *
62  CALL gstmed( 1,'Absorber',imat, 0 ,ifield,fieldm,tmaxfd,
63  * stemax,deemax,epsil,stmin, 0 , 0 )
64 *
65 * *** Defines USER'S VOLUMES
66  jma = lq(jmate-imat)
67  x0 = q(jma + 9)
68  r1 = nrtot*drx0*x0
69  z1 = nltot*dlx0*x0*0.5
70 *
71  par(1) = 0.
72  par(2) = r1
73  par(3) = z1
74  CALL gsvolu( 'ECAL' , 'TUBE' , 1 , par , 3 , ivol)
75 *
76 * *** Close geometry banks. (obligatory system routine)
77  CALL ggclos
78 **
79 * *** dessin
80  CALL gsatt('*' ,'SEEN',1)
81  CALL gsatt('RING','SEEN',0)
82 *
83  DO ix =1,3
84  CALL gdopen(ix)
85  scale = 9.5/z1
86  paxis = 0.
87  saxis = 0.2*z1
88  CALL gdrawc('ECAL',ix,0.,10.,10.,scale,scale)
89 CCC CALL GDAXIS (PAXIS,PAXIS,PAXIS,SAXIS)
90  CALL gdscal( 10., 0.3)
91  CALL gdclos
92  END DO
93 *
94 
95  END
subroutine ugeom
Definition: ugeom.F:2
Double_t scale
Definition: plot.C:11