/[PAMELA software]/gpamela/gpspe/gpspev.F
ViewVC logotype

Diff of /gpamela/gpspe/gpspev.F

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3.3 by cafagna, Mon Jul 25 11:53:21 2005 UTC revision 3.5 by pam-ba, Tue Dec 13 10:31:29 2005 UTC
# Line 1  Line 1 
1    
2  *  *
3  * $Id: gpspev.F,v 3.2 2005/06/21 02:42:27 cafagna Exp $  * $Id: gpspev.F,v 3.4 2005/12/05 12:15:21 pam-ba Exp $
4  *  *
5  * $Log: gpspev.F,v $  * $Log: gpspev.F,v $
6    * Revision 3.4  2005/12/05 12:15:21  pam-ba
7    * new spectrometer geometry and internal magnetic field
8    *
9    * Revision 3.3  2005/07/25 11:53:21  cafagna
10    * Several updates. See history for details
11    *
12  * Revision 3.2  2005/06/21 02:42:27  cafagna  * Revision 3.2  2005/06/21 02:42:27  cafagna
13  * Major modification to the geometry and to the random number chain  * Major modification to the geometry and to the random number chain
14  *  *
# Line 90  C end ml. Line 96  C end ml.
96        NMED= MCF        NMED= MCF
97        CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)        CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)
98  *  *
99    *  Define the MGPA     volume
100    *
101          NMED= MAL
102          CALL GSVOLU('MGPA','BOX ',NMED,MGPA, 3,IVOLU)
103    *
104    *  Define the TPGA     volume
105    *
106          NMED= MN2
107          CALL GSVOLU('TPGA','BOX ',NMED,TPGA, 3,IVOLU)
108    *
109    *  Define the TPGI     volume
110    *
111          NMED= MN2
112          CALL GSVOLU('TPGI','BOX ',NMED,TPGI, 3,IVOLU)
113    *
114    *  Define the TPGU     volume
115    *
116          NMED= MN2
117          CALL GSVOLU('TPGU','BOX ',NMED,TPGU, 3,IVOLU)
118    *
119    *  Define the TPGD     volume
120    *
121          NMED= MN2
122          CALL GSVOLU('TPGD','BOX ',NMED,TPGD, 3,IVOLU)
123    
124    *
125  * Positioning volume TSPA     into the mother TRSL  * Positioning volume TSPA     into the mother TRSL
126  *  *
127        N= 1        N= 1
128        X= 0.        X= 0.
 c ml: 26/11/66:  
 c      Y= TRSL(2) - TSPA(2)  
 C #       Y=+TRSL(2)/2  
129        Y= 0.        Y= 0.
130        Z= 0.        Z= 0.
131        CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')        CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
# Line 105  C # C      Y= Y - 2.*TSPA(2) Line 134  C # C      Y= Y - 2.*TSPA(2)
134  C #       Y=-TRSL(2)/2  C #       Y=-TRSL(2)/2
135  C #       CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')  C #       CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
136  c ml: 26/11/04:  c ml: 26/11/04:
137  *  * Positioning volume TRCP into mother TPAS
 c* Positioning volume TRCP     into the mother TRSL  
 CC ml 20/04/05:  
 CC* Positioning volume TRCP into mother TRPL  
 * Positioning volume TRCP into mother TRPB  
 *  
 c      N= 1  
 CC ml 20/04/05:  
 cc      Z= 0.  
 cc      Y= 0.  
138  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
139  C #       Z=-TRPB(3)+0.11+TRCP(3)  C #       Z=-TRPB(3)+0.11+TRCP(3)
140  C #       Y=-TRPB(2)+1.5-0.225+TRCP(2)  C #       Y=-TRPB(2)+1.5-0.225+TRCP(2)
141  CC end ml.  CC end ml.
142        Z=-0.005  c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
143          Z=TRPB(3)-2*TPAI(3)-TRCP(3)
144        y=-0.225-TPAS(2)+TRCP(2)        y=-0.225-TPAS(2)+TRCP(2)
145  C # end CAF mod  C # end CAF mod
146        DO I=1,4        DO I=1,4
# Line 127  CC ml 20/04/05:         Line 148  CC ml 20/04/05:        
148  CC         X=-TRPL(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)  CC         X=-TRPL(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
149  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
150  C #          X=-TRPB(1)+2.29+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)  C #          X=-TRPB(1)+2.29+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
151           X=-TPAS(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)  c ml: 19/9/05: introducing the glue between TRCP and the silicon ladders.
152    c              for now the glue is a space of nitrogen of 0.015 mm
153    c         X=-TPAS(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
154             X=-TPAS(1)+2*(I-1)*0.0015+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
155  CC end ml  CC end ml
 c         CALL GSPOS('TRCP',I,'TRPL',X,Y,Z,0,'ONLY')  
 C #          CALL GSPOS('TRCP',I,'TRPB',X,Y,Z,0,'ONLY')  
156           CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'ONLY')
157  C # end CAF mod  C # end CAF mod
158        ENDDO          ENDDO  
 c      X= -TRSL(1) + TRCP(1)  
 c      CALL GSPOS('TRCP',N,'TRSL',X,Y,Z,0,'ONLY')  
 C      N= 2  
 C      X= -X  
 C      CALL GSPOS('TRCP',N,'TRSL',X,Y,Z,0,'ONLY')  
 *****  
159  cc ml 20/04/05:  cc ml 20/04/05:
160  *  * Positioning volume TRSL     into the mother TPAS
 *** Positioning volume TRSL     into the mother TRPL  
 * Positioning volume TRSL     into the mother TRPB  
 *  
 c ml: 26/11/04:  
 C      Y= 0.  
 cc      Y=THBP(2)  
161  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
162  C #       Y=-TRPB(2)+1.5+2*THBP(2)+TRSL(2)  C #       Y=-TRPB(2)+1.5+2*THBP(2)+TRSL(2)
163  C      Y=2.75  C      Y=2.75
164  CC      Z= 0.  CC      Z= 0.
165  C #       Z=-TRPB(3)+0.11+TRCP(3)  C      Z=-0.005
166        Z=-0.005  c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
167          Z=TRPB(3)-2*TPAI(3)-TRCP(3)
168        DO I=1, NTRSL        DO I=1, NTRSL
169    c ml: 20/9/05 introducing the glue between TRCP and the silicon ladders.
170    c         X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+
171    c     +        (2*(MOD(I-1,3)+1)-1)*TRSL(1)
172           X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+           X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+
173       +        (2*(MOD(I-1,3)+1)-1)*TRSL(1)       +   (2*(MOD(I-1,3)+1)-1)*0.0015+(2*(MOD(I-1,3)+1)-1)*TRSL(1)        
174           IF(I.LE.3) THEN           IF(I.LE.3) THEN
175              Y=TPAS(2)-TRSL(2)  C ml: 22/9/05:
176    c            Y=TPAS(2)-TRSL(2)
177                Y=TPAS(2)-0.1485-TRSL(2)
178           ELSE           ELSE
179              Y=TPAS(2)-3*TRSL(2)  C            Y=TPAS(2)-3*TRSL(2)
180                Y=TPAS(2)-0.1485-0.0015-3*TRSL(2)
181           ENDIF           ENDIF
182           CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')
183        ENDDO        ENDDO
184  C # end CAF mod  C # end CAF mod
185  **********  **********
186  cc ml: 20/04/05  cc ml: 20/04/05
187  *  * Positioning volume THBP     into the mother TPAS
 ********* Positioning volume THBP     into the mother TRPL  
 * Positioning volume THBP     into the mother TRPB  
 *  
 cc      Y=-TRSL(2)  
188  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one  C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
189  C #       Y=-TRPB(2)+1.5+THBP(2)  C #       Y=-TRPB(2)+1.5+THBP(2)
190  C # cc      Z= 0.  C # cc      Z= 0.
191  C #       Z=-TRPB(3)+0.11+TRCP(3)  C #       Z=-TRPB(3)+0.11+TRCP(3)
192        Y=-TPAS(2)+THBP(2)  c ml: 22/9/05:
193        Z=-0.005  c      Y=-TPAS(2)+THBP(2)
194          Y=-TPAS(2)+0.1485+THBP(2)
195    C      Z=-0.005
196    c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
197          Z=TRPB(3)-2*TPAI(3)-TRCP(3)
198        DO I=1, NTHBP        DO I=1, NTHBP
199  CC         X= -TRPL(1) + 2*I*TRCP(1)+(2*I-1)*THBP(1)  CC         X= -TRPL(1) + 2*I*TRCP(1)+(2*I-1)*THBP(1)
200  C #          X=-TRPB(1)+2.29+2*I*TRCP(1)+(2*I-1)*THBP(1)  C #          X=-TRPB(1)+2.29+2*I*TRCP(1)+(2*I-1)*THBP(1)
201           X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)  c ml: 21/9/05 introducing the glue between the carbon barrel and the silicon
202  cc         CALL GSPOS('THBP',I,'TRPL',X,Y,Z,0,'ONLY')  c       ladders
203  C #          CALL GSPOS('THBP',I,'TRPB',X,Y,Z,0,'ONLY')  c         X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)
204             X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)+
205         +      (2*(MOD(I-1,3)+1)-1)*0.0015
206           CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'ONLY')
207        ENDDO        ENDDO
208  c end ml.  c end ml.
209  cc ml: 20/04/05  cc ml: 20/04/05
210  *  *
211  * Positioning volume TPAI into the mother TRPB  * Positioning volume TPAI into the mother TPAS
212  *  *
213  C # Mod By Caf on 19th Jul 2005 all volumes inside the TPAS  C # Mod By Caf on 19th Jul 2005 all volumes inside the TPAS
214        X=0        X=0
215        Y=-TPAS(2)+TPAI(2)        Y=-TPAS(2)+TPAI(2)
216        Z=-TPAS(3)+TPAI(3)  c      Z=-TPAS(3)+TPAI(3)
217          Z=TRPB(3)-TPAI(3)
218  C #       X=-TRPB(1)+2.29+TPAI(1)  C #       X=-TRPB(1)+2.29+TPAI(1)
219  C #       Y=-TRPB(2)+1.5+2.5+TPAI(2)  C #       Y=-TRPB(2)+1.5+2.5+TPAI(2)
220  C #       Z=-TRPB(3)+TPAI(3)  C #       Z=-TRPB(3)+TPAI(3)
# Line 212  C #       Y=-TRPB(2)+1.5+TPAS(2) Line 232  C #       Y=-TRPB(2)+1.5+TPAS(2)
232  C #       Z=-TRPB(3)+0.11+2*TRCP(3)+TPAS(3)  C #       Z=-TRPB(3)+0.11+2*TRCP(3)+TPAS(3)
233        CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')        CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')
234  c end ml.  c end ml.
235    *
236    * Positioning volume MGPA     into the mother MGPL
237    *
238          N= 1
239          X= 0.
240          Y= 0.
241          Z= 0.
242          CALL GSPOS('MGPA',N,'MGPL',X,Y,Z,0,'ONLY')
243    *
244    * Positioning volume TPGD     into the mother MGFR
245    *
246          X=0.
247          Z=-MGFR(3)+TPGD(3)
248          Y=0.
249          CALL GSPOS('TPGD',N,'MGFR',X,Y,Z,0,'ONLY')
250    *
251    * Positioning volume TPGI     into the mother MGFR under MGPL
252    *
253          N=1
254          X=0.
255          Z=-MGFR(3)+2*TPGD(3)+TPGI(3)
256          Y=0.
257          CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
258  *  *
259  * Positioning volume MGPI     into the mother MGPL  * Positioning volume MGPI     into the mother MGPL
260  *  *
261        N= 1        N= 1
262        X= 0.        X= 0.
263        Y= 0.        Y= 0.
264    CC ML 10/11/05:  Positioning volume MGPI     into the mother MGPA
265        Z= 0.        Z= 0.
266        CALL GSPOS('MGPI',N,'MGPL',X,Y,Z,0,'ONLY')        CALL GSPOS('MGPI',N,'MGPA',X,Y,Z,0,'ONLY')
267    C      Z= -MGFR(3)+2*TPGD(3)+MGPI(3)
268    C      CALL GSPOS('MGPI',N,'MGFR',X,Y,Z,0,'ONLY')
269  *  *
270  * Positioning volume MGPL     into the mother MGFR  * Positioning volume MGPL     into the mother MGFR
271  *  *
272    c ml: 10/11/05
273          N=1
274    c      Z=-MGFR(3)+MGPL(3)
275          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3))+MGPL(3)
276        CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')        CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')
277  C Ml: 20/04/05:  *
278  c*  * Positioning volume TPGI     into the mother MGFR over MGPL
279  c* Positioning volume TRPL     into the mother TRPB  *
280  c*        N=2
281  c      N= 1        X=0.
282  c      Z= 0.        Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3))+TPGI(3)
283  c      CALL GSPOS('TRPL',N,'TRPB',X,Y,Z,0,'ONLY')        Y=0.
284  c end ml.        CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
285    *
286    * Positioning volume TPGA     into the mother MGFR
287    *
288    C ML: 10/11/05
289          N=1
290          X=0.
291          Y=MGFR(2)-2*(MGFR(2)-TRPB(2))-TPGA(2)
292    C      Z=-MGFR(3)+2*MGPL(3)+TPGA(3)
293    C      Z=MGFR(3)-2*TPGU(3)-2*TRPB(3)-TPGA(3)
294          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3))+TPGA(3)
295    C      Y=-0.75
296          CALL GSPOS('TPGA',N,'MGFR',X,Y,Z,0,'ONLY')
297  *  *
298  * Positioning volumes TRPB & MGPL into the mother SPEB  * Positioning volumes TRPB & MGPL into the mother SPEB
299  *  *
300        N= 1        N= 1
301        X= 0.        X= 0.
302        Y= SPEB(2) - TRPB(2)  C      Y= SPEB(2) - TRPB(2)
303        Z= SPEB(3) - TRPB(3)        Y= -MGFR(2) + TRPB(2)
304        CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')  C      Z= SPEB(3) - TRPB(3)
305    c      Z=-MGFR(3)+2*MGPL(3)+2*TPGA(3)+TRPB(3)
306    C      Z=MGFR(3)-2*TPGU(3)-TRPB(3)
307          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3))+TRPB(3)
308    C      CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
309          CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
310    c      CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,9,'ONLY')
311          Z=SPEB(3)
312        DO I=1, 5        DO I=1, 5
313           X= 0.           X= 0.
314           Y= 0.           Y= 0.
315           Z= Z - TRPB(3) - MGFR(3)  C         Z= Z - TRPB(3) - MGFR(3)
316             Z=Z-MGFR(3)
317           N= I           N= I
318           CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')           CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')
319           Y= SPEB(2) - TRPB(2)  C         Y= SPEB(2) - TRPB(2)
320           Z= Z - MGFR(3) - TRPB(3)  C         Z= Z - MGFR(3) - TRPB(3)
321           N= (I+1)  C         N= (I+1)
322           IF(I.EQ.5) THEN  C         IF(I.EQ.5) THEN
323              CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')  CC            CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
324           ELSE  C            CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,10,'ONLY')
325              CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')  C         ELSE
326           ENDIF  CC            CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
327    C            CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
328    C         ENDIF
329             Z=Z-MGFR(3)
330        ENDDO        ENDDO
331          N=2
332          X=0.
333          Y=MGFR(2) - TRPB(2)
334          Z=Z-TRPB(3)
335    c      CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,4,'ONLY')
336          CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
337    *
338    * Positioning volume TPGU     into the mother MGFR
339    *
340          X=0.
341    C      Z=MGFR(3)-TPGU(3)
342          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3)+TRPB(3))+
343         +   TPGU(3)
344          Y=-MGFR(2)+TRPB(2)
345          CALL GSPOS('TPGU',N,'MGFR',X,Y,Z,0,'ONLY')
346  *  *
347        RETURN        RETURN
348        END        END

Legend:
Removed from v.3.3  
changed lines
  Added in v.3.5

  ViewVC Help
Powered by ViewVC 1.1.23