/[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.10 by cafagna, Fri Dec 1 12:25:51 2006 UTC
# Line 1  Line 1 
   
1  *  *
2  * $Id: gpspev.F,v 3.2 2005/06/21 02:42:27 cafagna Exp $  * $Id: gpspev.F,v 3.9 2006/06/30 15:38:16 pam-ba Exp $
3  *  *
4  * $Log: gpspev.F,v $  * $Log: gpspev.F,v $
5    * Revision 3.9  2006/06/30 15:38:16  pam-ba
6    * S22 and S12 heights positioned in GPAMELA at the nominal heights in PAMELA (see document: Main geometrical parameters of the PAMELA sub-detectors, 20 December 2005)
7    *
8    * Revision 3.8  2006/05/02 12:02:43  bottai
9    * micrometric adjustment of spe geometry
10    *
11    * Revision 3.7  2005/12/16 10:20:23  cafagna
12    * Bug fixed in the new update
13    *
14    * Revision 3.6  2005/12/16 09:13:59  cafagna
15    * New small valume added to the tracker frame
16    *
17    * Revision 3.5  2005/12/13 10:31:29  pam-ba
18    * added a new volume, TPGI, in the spectrometer
19    *
20    * Revision 3.4  2005/12/05 12:15:21  pam-ba
21    * new spectrometer geometry and internal magnetic field
22    *
23    * Revision 3.3  2005/07/25 11:53:21  cafagna
24    * Several updates. See history for details
25    *
26  * Revision 3.2  2005/06/21 02:42:27  cafagna  * Revision 3.2  2005/06/21 02:42:27  cafagna
27  * Major modification to the geometry and to the random number chain  * Major modification to the geometry and to the random number chain
28  *  *
# Line 90  C end ml. Line 110  C end ml.
110        NMED= MCF        NMED= MCF
111        CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)        CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)
112  *  *
113    *  Define the TBAL     volume
114    *
115          NMED= MAL
116          CALL GSVOLU('TBAL','BOX ',NMED,TBAL, 3,IVOLU)
117    *
118    *  Define the MGPA     volume
119    *
120          NMED= MAL
121          CALL GSVOLU('MGPA','BOX ',NMED,MGPA, 3,IVOLU)
122    *
123    *  Define the TPGA     volume
124    *
125          NMED= MN2
126          CALL GSVOLU('TPGA','BOX ',NMED,TPGA, 3,IVOLU)
127    *
128    *  Define the TPGI     volume
129    *
130          NMED= MN2
131          CALL GSVOLU('TPGI','BOX ',NMED,TPGI, 3,IVOLU)
132    *
133    *  Define the TPGU     volume
134    *
135          NMED= MN2
136          CALL GSVOLU('TPGU','BOX ',NMED,TPGU, 3,IVOLU)
137    *
138    *  Define the TPGD     volume
139    *
140          NMED= MN2
141          CALL GSVOLU('TPGD','BOX ',NMED,TPGD, 3,IVOLU)
142    
143    *
144  * Positioning volume TSPA     into the mother TRSL  * Positioning volume TSPA     into the mother TRSL
145  *  *
146          GLUEX=XGLUE-0.0005
147          GLUEY=XGLUE
148        N= 1        N= 1
149        X= 0.        X= 0.
 c ml: 26/11/66:  
 c      Y= TRSL(2) - TSPA(2)  
 C #       Y=+TRSL(2)/2  
150        Y= 0.        Y= 0.
151        Z= 0.        Z= 0.
152        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 155  C # C      Y= Y - 2.*TSPA(2)
155  C #       Y=-TRSL(2)/2  C #       Y=-TRSL(2)/2
156  C #       CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')  C #       CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
157  c ml: 26/11/04:  c ml: 26/11/04:
158  *  * 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.  
159  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
160  C #       Z=-TRPB(3)+0.11+TRCP(3)  C #       Z=-TRPB(3)+0.11+TRCP(3)
161  C #       Y=-TRPB(2)+1.5-0.225+TRCP(2)  C #       Y=-TRPB(2)+1.5-0.225+TRCP(2)
162  CC end ml.  CC end ml.
163        Z=-0.005  c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
164        y=-0.225-TPAS(2)+TRCP(2)        Z=TRPB(3)-2*TPAI(3)-TRCP(3)
165          y=-TPAS(2)+TRCP(2)
166  C # end CAF mod  C # end CAF mod
167          TPASSPACE=TPAS(1)-(3*TRSL(1)+4*TRCP(1)+3*GLUEX)
168        DO I=1,4        DO I=1,4
169  CC ml 20/04/05:          CC ml 20/04/05:        
170  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)
171  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
172  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)
173           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.
174    c              for now the glue is a space of nitrogen of 0.015 mm
175    c         X=-TPAS(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
176    C Ml. 15/12/05: introducing a space (along x) between the inner part of the
177    c  aluminum frame and respectively the first and the last carbon fiber barrel.
178    c It is has been done increasing the dimension of TPAS along x:
179    C         X=-TPAS(1)+2*(I-1)*XGLUE+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
180             X=-TPAS(1)+TPASSPACE+2*(I-1)*GLUEX+(2*I-1)*TRCP(1)+
181         +      2*(I-1)*TRSL(1)
182  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')  
183           CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'ONLY')
184  C # end CAF mod  C # end CAF mod
185        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')  
 *****  
186  cc ml 20/04/05:  cc ml 20/04/05:
187  *  * 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)  
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+2*THBP(2)+TRSL(2)  C #       Y=-TRPB(2)+1.5+2*THBP(2)+TRSL(2)
190  C      Y=2.75  C      Y=2.75
191  CC      Z= 0.  CC      Z= 0.
192  C #       Z=-TRPB(3)+0.11+TRCP(3)  C      Z=-0.005
193        Z=-0.005  c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
194          Z=TRPB(3)-2*TPAI(3)-TRCP(3)
195        DO I=1, NTRSL        DO I=1, NTRSL
196           X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+  c ml: 20/9/05 introducing the glue between TRCP and the silicon ladders.
197       +        (2*(MOD(I-1,3)+1)-1)*TRSL(1)  c         X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+
198    c     +        (2*(MOD(I-1,3)+1)-1)*TRSL(1)
199             X=-TPAS(1)+TPASSPACE+2*(MOD(I-1,3)+1)*TRCP(1)+
200         +   (2*(MOD(I-1,3)+1)-1)*GLUEX+(2*(MOD(I-1,3)+1)-1)*TRSL(1)
201           IF(I.LE.3) THEN           IF(I.LE.3) THEN
202              Y=TPAS(2)-TRSL(2)  C ml: 22/9/05:
203    c            Y=TPAS(2)-TRSL(2)
204                Y=TPAS(2)-0.1485+0.0005-TRSL(2)
205           ELSE           ELSE
206              Y=TPAS(2)-3*TRSL(2)  C            Y=TPAS(2)-3*TRSL(2)
207                Y=TPAS(2)-0.1485-GLUEY-3*TRSL(2)
208           ENDIF           ENDIF
209           CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')
210        ENDDO        ENDDO
211  C # end CAF mod  C # end CAF mod
212  **********  **********
213  cc ml: 20/04/05  cc ml: 20/04/05
214  *  * 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)  
215  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
216  C #       Y=-TRPB(2)+1.5+THBP(2)  C #       Y=-TRPB(2)+1.5+THBP(2)
217  C # cc      Z= 0.  C # cc      Z= 0.
218  C #       Z=-TRPB(3)+0.11+TRCP(3)  C #       Z=-TRPB(3)+0.11+TRCP(3)
219        Y=-TPAS(2)+THBP(2)  c ml: 22/9/05:
220        Z=-0.005  c      Y=-TPAS(2)+THBP(2)
221          Y=-TPAS(2)+0.1485+THBP(2)
222    C      Z=-0.005
223    c      Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
224          Z=TRPB(3)-2*TPAI(3)-TRCP(3)
225        DO I=1, NTHBP        DO I=1, NTHBP
226  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)
227  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)
228           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
229  cc         CALL GSPOS('THBP',I,'TRPL',X,Y,Z,0,'ONLY')  c       ladders
230  C #          CALL GSPOS('THBP',I,'TRPB',X,Y,Z,0,'ONLY')  c         X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)
231             X=-TPAS(1)+TPASSPACE+2*I*TRCP(1)+(2*I-1)*THBP(1)+
232         +      (2*(MOD(I-1,3)+1)-1)*GLUEX
233           CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'ONLY')           CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'ONLY')
234        ENDDO        ENDDO
235  c end ml.  c end ml.
236  cc ml: 20/04/05  cc ml: 20/04/05
237  *  *
238  * Positioning volume TPAI into the mother TRPB  * Positioning volume TPAI into the mother TPAS
239  *  *
240  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
241        X=0        X=0
242        Y=-TPAS(2)+TPAI(2)        Y=-TPAS(2)+TPAI(2)
243        Z=-TPAS(3)+TPAI(3)  c      Z=-TPAS(3)+TPAI(3)
244          Z=TRPB(3)-TPAI(3)
245  C #       X=-TRPB(1)+2.29+TPAI(1)  C #       X=-TRPB(1)+2.29+TPAI(1)
246  C #       Y=-TRPB(2)+1.5+2.5+TPAI(2)  C #       Y=-TRPB(2)+1.5+2.5+TPAI(2)
247  C #       Z=-TRPB(3)+TPAI(3)  C #       Z=-TRPB(3)+TPAI(3)
# Line 212  C #       Y=-TRPB(2)+1.5+TPAS(2) Line 259  C #       Y=-TRPB(2)+1.5+TPAS(2)
259  C #       Z=-TRPB(3)+0.11+2*TRCP(3)+TPAS(3)  C #       Z=-TRPB(3)+0.11+2*TRCP(3)+TPAS(3)
260        CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')        CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')
261  c end ml.  c end ml.
262    *
263    * Positioning volume MGPA     into the mother MGPL
264    *
265          N= 1
266          X= 0.
267          Y= 0.
268          Z= 0.
269          CALL GSPOS('MGPA',N,'MGPL',X,Y,Z,0,'ONLY')
270    *
271    * Positioning volume TPGD     into the mother MGFR
272    *
273          X=0.
274          Z=-MGFR(3)+TPGD(3)
275          Y=0.
276          CALL GSPOS('TPGD',N,'MGFR',X,Y,Z,0,'ONLY')
277    *
278    * Positioning volume TPGI     into the mother MGFR under MGPL
279    *
280          N=1
281          X=0.
282          Z=-MGFR(3)+2*TPGD(3)+TPGI(3)
283          Y=0.
284          CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
285  *  *
286  * Positioning volume MGPI     into the mother MGPL  * Positioning volume MGPI     into the mother MGPL
287  *  *
288        N= 1        N= 1
289        X= 0.        X= 0.
290        Y= 0.        Y= 0.
291    CC ML 10/11/05:  Positioning volume MGPI     into the mother MGPA
292        Z= 0.        Z= 0.
293        CALL GSPOS('MGPI',N,'MGPL',X,Y,Z,0,'ONLY')        CALL GSPOS('MGPI',N,'MGPA',X,Y,Z,0,'ONLY')
294    C      Z= -MGFR(3)+2*TPGD(3)+MGPI(3)
295    C      CALL GSPOS('MGPI',N,'MGFR',X,Y,Z,0,'ONLY')
296  *  *
297  * Positioning volume MGPL     into the mother MGFR  * Positioning volume MGPL     into the mother MGFR
298  *  *
299    c ml: 10/11/05
300          N=1
301    c      Z=-MGFR(3)+MGPL(3)
302          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3))+MGPL(3)
303        CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')        CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')
304  C Ml: 20/04/05:  *
305  c*  * Positioning volume TPGI     into the mother MGFR above MGPL
306  c* Positioning volume TRPL     into the mother TRPB  *
307  c*        N=2
308  c      N= 1        X=0.
309  c      Z= 0.        Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3))+TPGI(3)
310  c      CALL GSPOS('TRPL',N,'TRPB',X,Y,Z,0,'ONLY')        Y=0.
311  c end ml.        CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
312    *
313    * Positioning volume TPGA     into the mother MGFR
314    *
315    C ML: 10/11/05
316          N=1
317          X=0.
318          Y=MGFR(2)-2*(MGFR(2)-TRPB(2))-TPGA(2)
319    C      Z=-MGFR(3)+2*MGPL(3)+TPGA(3)
320    C      Z=MGFR(3)-2*TPGU(3)-2*TRPB(3)-TPGA(3)
321          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3))+TPGA(3)
322    C      Y=-0.75
323          CALL GSPOS('TPGA',N,'MGFR',X,Y,Z,0,'ONLY')
324  *  *
325  * Positioning volumes TRPB & MGPL into the mother SPEB  * Positioning volumes TRPB & MGPL into the mother SPEB
326  *  *
327        N= 1        N= 1
328        X= 0.        X= 0.
329        Y= SPEB(2) - TRPB(2)  C      Y= SPEB(2) - TRPB(2)
330        Z= SPEB(3) - TRPB(3)        Y= -MGFR(2) + TRPB(2)
331        CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')  C      Z= SPEB(3) - TRPB(3)
332    c      Z=-MGFR(3)+2*MGPL(3)+2*TPGA(3)+TRPB(3)
333    C      Z=MGFR(3)-2*TPGU(3)-TRPB(3)
334          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3))+TRPB(3)
335    C      CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
336          CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
337    c      CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,9,'ONLY')
338          Z=SPEB(3)
339        DO I=1, 5        DO I=1, 5
340           X= 0.           X= 0.
341           Y= 0.           Y= 0.
342           Z= Z - TRPB(3) - MGFR(3)  C         Z= Z - TRPB(3) - MGFR(3)
343             Z=Z-MGFR(3)
344           N= I           N= I
345           CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')           CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')
346           Y= SPEB(2) - TRPB(2)  C         Y= SPEB(2) - TRPB(2)
347           Z= Z - MGFR(3) - TRPB(3)  C         Z= Z - MGFR(3) - TRPB(3)
348           N= (I+1)  C         N= (I+1)
349           IF(I.EQ.5) THEN  C         IF(I.EQ.5) THEN
350              CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')  CC            CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
351    C            CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,10,'ONLY')
352    C         ELSE
353    CC            CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
354    C            CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
355    C         ENDIF
356             Z=Z-MGFR(3)
357          ENDDO
358          N=2
359          X=0.
360          Y=MGFR(2) - TRPB(2)
361          Z=Z-TRPB(3)
362          ZTRPB=Z
363    c      CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,4,'ONLY')
364          CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
365    *
366    * Positioning volume TBAL into the mother SPEB
367    *
368          DO I=1,2
369    C DTBAL is the distance along x of the volumes TBAL from the end of TRPB
370             DTBAL=3.6
371             N=I
372             IF(I.EQ.1) THEN
373                X=TRPB(1)-3.6-TBAL(1)
374           ELSE           ELSE
375              CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')              X=-(TRPB(1)-3.6-TBAL(1))
376           ENDIF           ENDIF
377             Y=MGFR(2) - 2*TRPB(2)-TBAL(2)
378             Z=ZTRPB
379             CALL GSPOS('TBAL',N,'SPEB',X,Y,Z,0,'ONLY')
380        ENDDO        ENDDO
381  *  *
382    * Positioning volume TPGU     into the mother MGFR
383    *
384          X=0.
385    C      Z=MGFR(3)-TPGU(3)
386          Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3)+TRPB(3))+
387         +   TPGU(3)      
388          Y=-MGFR(2)+TRPB(2)
389          CALL GSPOS('TPGU',N,'MGFR',X,Y,Z,0,'ONLY')
390    *
391        RETURN        RETURN
392        END        END

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

  ViewVC Help
Powered by ViewVC 1.1.23