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

Annotation of /gpamela/gpspe/gpspev.F

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.6 - (hide annotations) (download)
Fri Dec 16 09:13:59 2005 UTC (18 years, 11 months ago) by cafagna
Branch: MAIN
Changes since 3.5: +407 -348 lines
New small valume added to the tracker frame

1 cafagna 3.6
2     *
3     * $Id: gpspev.F,v 3.5 2005/12/13 10:31:29 pam-ba Exp $
4     *
5     * $Log: gpspev.F,v $
6     * Revision 3.5 2005/12/13 10:31:29 pam-ba
7     * added a new volume, TPGI, in the spectrometer
8     *
9     * Revision 3.4 2005/12/05 12:15:21 pam-ba
10     * new spectrometer geometry and internal magnetic field
11     *
12     * Revision 3.3 2005/07/25 11:53:21 cafagna
13     * Several updates. See history for details
14     *
15     * Revision 3.2 2005/06/21 02:42:27 cafagna
16     * Major modification to the geometry and to the random number chain
17     *
18     * Revision 3.1.1.1 2002/07/11 16:02:14 cafagna
19     * First GPAMELA release on CVS
20     *
21     *
22     *CMZ : 2.01/00 05/04/2000 14.35.18 by Marialuigia Ambriola
23     *CMZ : 2.00/00 03/03/2000 15.39.06 by Francesco Cafagna
24     *CMZ : 1.02/00 07/03/97 14.48.41 by Francesco Cafagna
25     *CMZ : 1.00/02 06/02/96 17.34.50 by Francesco Cafagna
26     *-- Author : Francesco Cafagna 09/12/95
27     SUBROUTINE GPSPEV
28     ************************************************************************
29     * *
30     * Volumes definition for the silicon tracking system and magnet *
31     * Called by: GPGEM *
32     * Author: Francesco Cafagna, 05/12/95 13.39.41 *
33     * *
34     ************************************************************************
35     #include "gpgeo.inc"
36     #include "gpmed.inc"
37     *
38     INTEGER IROT,IVOLU,N,NMED,NUM
39     REAL X,Y,Z
40     *
41     * Define the SPEB volume
42     *
43     NMED= MN2
44     CALL GSVOLU('SPEB','BOX ',NMED,SPEB, 3,IVOLU)
45     *
46     * Define the MGFR volume
47     *
48     NMED= MAL
49     CALL GSVOLU('MGFR','BOX ',NMED,MGFR, 3,IVOLU)
50     *
51     * Define the MGPL volume
52     *
53     NMED= MMAG
54     CALL GSVOLU('MGPL','BOX ',NMED,MGPL, 3,IVOLU)
55     *
56     * Define the MGPI volume
57     *
58     NMED= MN2
59     CALL GSVOLU('MGPI','BOX ',NMED,MGPI, 3,IVOLU)
60     *
61     * Define the TRPB volume
62     *
63     NMED= MAL
64     CALL GSVOLU('TRPB','BOX ',NMED,TRPB, 3,IVOLU)
65     *****
66     cC ml 20/04/05:
67     *
68     cc* Define the TRPL volume
69     * Define the TPAS and TPAI volume
70     *
71     NMED= MN2
72     CC CALL GSVOLU('TRPL','BOX ',NMED,TRPL, 3,IVOLU)
73     CALL GSVOLU('TPAS','BOX ',NMED,TPAS, 3,IVOLU)
74     NMED= MAL
75     CALL GSVOLU('TPAI','BOX ',NMED,TPAI, 3,IVOLU)
76     CC end ml.
77     ****************
78     *
79     * Define the TRSL volume
80     *
81     c ml: 26/11/04:
82     c NMED= MN2
83     NMED=MSIT
84     CALL GSVOLU('TRSL','BOX ',NMED,TRSL, 3,IVOLU)
85     *
86     * Define the THBP volume
87     *
88     NMED=MG10C
89     CALL GSVOLU('THBP','BOX ',NMED,THBP, 3,IVOLU)
90     C end ml.
91     *
92     * Define the TSPA volume
93     *
94     NMED= MSIT
95     CALL GSVOLU('TSPA','BOX ',NMED,TSPA, 3,IVOLU)
96     *
97     * Define the TRCP volume
98     *
99     NMED= MCF
100     CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)
101     *
102     * Define the TBAL volume
103     *
104     NMED= MAL
105     CALL GSVOLU('TBAL','BOX ',NMED,TBAL, 3,IVOLU)
106     *
107     * Define the MGPA volume
108     *
109     NMED= MAL
110     CALL GSVOLU('MGPA','BOX ',NMED,MGPA, 3,IVOLU)
111     *
112     * Define the TPGA volume
113     *
114     NMED= MN2
115     CALL GSVOLU('TPGA','BOX ',NMED,TPGA, 3,IVOLU)
116     *
117     * Define the TPGI volume
118     *
119     NMED= MN2
120     CALL GSVOLU('TPGI','BOX ',NMED,TPGI, 3,IVOLU)
121     *
122     * Define the TPGU volume
123     *
124     NMED= MN2
125     CALL GSVOLU('TPGU','BOX ',NMED,TPGU, 3,IVOLU)
126     *
127     * Define the TPGD volume
128     *
129     NMED= MN2
130     CALL GSVOLU('TPGD','BOX ',NMED,TPGD, 3,IVOLU)
131    
132     *
133     * Positioning volume TSPA into the mother TRSL
134     *
135     N= 1
136     X= 0.
137     Y= 0.
138     Z= 0.
139     CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
140     C # N= 2
141     C # C Y= Y - 2.*TSPA(2)
142     C # Y=-TRSL(2)/2
143     C # CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
144     c ml: 26/11/04:
145     * Positioning volume TRCP into mother TPAS
146     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
147     C # Z=-TRPB(3)+0.11+TRCP(3)
148     C # Y=-TRPB(2)+1.5-0.225+TRCP(2)
149     CC end ml.
150     c Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
151     Z=TRPB(3)-2*TPAI(3)-TRCP(3)
152     y=-0.225-TPAS(2)+TRCP(2)
153     C # end CAF mod
154     TPASSPACE=TPAS(1)-(3*TRSL(1)+4*TRCP(1)+3*XGLUE)
155     DO I=1,4
156     CC ml 20/04/05:
157     CC X=-TRPL(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
158     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
159     C # X=-TRPB(1)+2.29+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
160     c ml: 19/9/05: introducing the glue between TRCP and the silicon ladders.
161     c for now the glue is a space of nitrogen of 0.015 mm
162     c X=-TPAS(1)+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
163     C Ml. 15/12/05: introducing a space (along x) between the inner part of the
164     c aluminum frame and respectively the first and the last carbon fiber barrel.
165     c It is has been done increasing the dimension of TPAS along x:
166     C X=-TPAS(1)+2*(I-1)*XGLUE+(2*I-1)*TRCP(1)+2*(I-1)*TRSL(1)
167     X=-TPAS(1)+TPASSPACE+2*(I-1)*XGLUE+(2*I-1)*TRCP(1)+
168     + 2*(I-1)*TRSL(1)
169     CC end ml
170     CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'ONLY')
171     C # end CAF mod
172     ENDDO
173     cc ml 20/04/05:
174     * Positioning volume TRSL into the mother TPAS
175     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
176     C # Y=-TRPB(2)+1.5+2*THBP(2)+TRSL(2)
177     C Y=2.75
178     CC Z= 0.
179     C Z=-0.005
180     c Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
181     Z=TRPB(3)-2*TPAI(3)-TRCP(3)
182     DO I=1, NTRSL
183     c ml: 20/9/05 introducing the glue between TRCP and the silicon ladders.
184     c X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+
185     c + (2*(MOD(I-1,3)+1)-1)*TRSL(1)
186     X=-TPAS(1)+2*(MOD(I-1,3)+1)*TRCP(1)+
187     + (2*(MOD(I-1,3)+1)-1)*XGLUE+(2*(MOD(I-1,3)+1)-1)*TRSL(1)
188     IF(I.LE.3) THEN
189     C ml: 22/9/05:
190     c Y=TPAS(2)-TRSL(2)
191     Y=TPAS(2)-0.1485-TRSL(2)
192     ELSE
193     C Y=TPAS(2)-3*TRSL(2)
194     Y=TPAS(2)-0.1485-XGLUE-3*TRSL(2)
195     ENDIF
196     CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')
197     ENDDO
198     C # end CAF mod
199     **********
200     cc ml: 20/04/05
201     * Positioning volume THBP into the mother TPAS
202     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
203     C # Y=-TRPB(2)+1.5+THBP(2)
204     C # cc Z= 0.
205     C # Z=-TRPB(3)+0.11+TRCP(3)
206     c ml: 22/9/05:
207     c Y=-TPAS(2)+THBP(2)
208     Y=-TPAS(2)+0.1485+THBP(2)
209     C Z=-0.005
210     c Z=-TRPB(3)+2*TPAI(3)+TRCP(3)
211     Z=TRPB(3)-2*TPAI(3)-TRCP(3)
212     DO I=1, NTHBP
213     CC X= -TRPL(1) + 2*I*TRCP(1)+(2*I-1)*THBP(1)
214     C # X=-TRPB(1)+2.29+2*I*TRCP(1)+(2*I-1)*THBP(1)
215     c ml: 21/9/05 introducing the glue between the carbon barrel and the silicon
216     c ladders
217     c X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)
218     X=-TPAS(1)+2*I*TRCP(1)+(2*I-1)*THBP(1)+
219     + (2*(MOD(I-1,3)+1)-1)*XGLUE
220     CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'ONLY')
221     ENDDO
222     c end ml.
223     cc ml: 20/04/05
224     *
225     * Positioning volume TPAI into the mother TPAS
226     *
227     C # Mod By Caf on 19th Jul 2005 all volumes inside the TPAS
228     X=0
229     Y=-TPAS(2)+TPAI(2)
230     c Z=-TPAS(3)+TPAI(3)
231     Z=TRPB(3)-TPAI(3)
232     C # X=-TRPB(1)+2.29+TPAI(1)
233     C # Y=-TRPB(2)+1.5+2.5+TPAI(2)
234     C # Z=-TRPB(3)+TPAI(3)
235     CALL GSPOS('TPAI',I,'TPAS',X,Y,Z,0,'ONLY')
236     C # end CAF mod
237     *
238     * Positioning volume TPAS into the mother TRPB
239     *
240     C # Mod By Caf on 15th Jul 2005
241     X=0
242     Y=-TRPB(2)+1.5+TPAS(2)
243     Z=0
244     C # X=-TRPB(1)+2.29+TPAS(1)
245     C # Y=-TRPB(2)+1.5+TPAS(2)
246     C # Z=-TRPB(3)+0.11+2*TRCP(3)+TPAS(3)
247     CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')
248     c end ml.
249     *
250     * Positioning volume MGPA into the mother MGPL
251     *
252     N= 1
253     X= 0.
254     Y= 0.
255     Z= 0.
256     CALL GSPOS('MGPA',N,'MGPL',X,Y,Z,0,'ONLY')
257     *
258     * Positioning volume TPGD into the mother MGFR
259     *
260     X=0.
261     Z=-MGFR(3)+TPGD(3)
262     Y=0.
263     CALL GSPOS('TPGD',N,'MGFR',X,Y,Z,0,'ONLY')
264     *
265     <<<<<<< gpspev.F
266     * Positioning volume TPGI into the mother MGFR under MGPL
267     *
268     N=1
269     X=0.
270     Z=-MGFR(3)+2*TPGD(3)+TPGI(3)
271     Y=0.
272     CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
273     *
274     =======
275     * Positioning volume TPGI into the mother MGFR under MGPL
276     *
277     N=1
278     X=0.
279     Z=-MGFR(3)+2*TPGD(3)+TPGI(3)
280     Y=0.
281     CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
282     *
283     >>>>>>> 3.5
284     * Positioning volume MGPI into the mother MGPL
285     *
286     N= 1
287     X= 0.
288     Y= 0.
289     CC ML 10/11/05: Positioning volume MGPI into the mother MGPA
290     Z= 0.
291     CALL GSPOS('MGPI',N,'MGPA',X,Y,Z,0,'ONLY')
292     C Z= -MGFR(3)+2*TPGD(3)+MGPI(3)
293     C CALL GSPOS('MGPI',N,'MGFR',X,Y,Z,0,'ONLY')
294     *
295     * Positioning volume MGPL into the mother MGFR
296     *
297     c ml: 10/11/05
298     N=1
299     c Z=-MGFR(3)+MGPL(3)
300     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3))+MGPL(3)
301     CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')
302     *
303     <<<<<<< gpspev.F
304     * Positioning volume TPGI into the mother MGFR above MGPL
305     *
306     N=2
307     X=0.
308     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3))+TPGI(3)
309     Y=0.
310     CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
311     *
312     =======
313     * Positioning volume TPGI into the mother MGFR over MGPL
314     *
315     N=2
316     X=0.
317     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3))+TPGI(3)
318     Y=0.
319     CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
320     *
321     >>>>>>> 3.5
322     * Positioning volume TPGA into the mother MGFR
323     *
324     C ML: 10/11/05
325     N=1
326     X=0.
327     Y=MGFR(2)-2*(MGFR(2)-TRPB(2))-TPGA(2)
328     C Z=-MGFR(3)+2*MGPL(3)+TPGA(3)
329     C Z=MGFR(3)-2*TPGU(3)-2*TRPB(3)-TPGA(3)
330     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3))+TPGA(3)
331     C Y=-0.75
332     CALL GSPOS('TPGA',N,'MGFR',X,Y,Z,0,'ONLY')
333     *
334     * Positioning volumes TRPB & MGPL into the mother SPEB
335     *
336     N= 1
337     X= 0.
338     C Y= SPEB(2) - TRPB(2)
339     Y= -MGFR(2) + TRPB(2)
340     C Z= SPEB(3) - TRPB(3)
341     c Z=-MGFR(3)+2*MGPL(3)+2*TPGA(3)+TRPB(3)
342     C Z=MGFR(3)-2*TPGU(3)-TRPB(3)
343     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3))+TRPB(3)
344     C CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
345     CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
346     c CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,9,'ONLY')
347     Z=SPEB(3)
348     DO I=1, 5
349     X= 0.
350     Y= 0.
351     C Z= Z - TRPB(3) - MGFR(3)
352     Z=Z-MGFR(3)
353     N= I
354     CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')
355     C Y= SPEB(2) - TRPB(2)
356     C Z= Z - MGFR(3) - TRPB(3)
357     C N= (I+1)
358     C IF(I.EQ.5) THEN
359     CC CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
360     C CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,10,'ONLY')
361     C ELSE
362     CC CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,0,'ONLY')
363     C CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
364     C ENDIF
365     Z=Z-MGFR(3)
366     ENDDO
367     N=2
368     X=0.
369     Y=MGFR(2) - TRPB(2)
370     Z=Z-TRPB(3)
371     ZTRPB=Z
372     c CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,4,'ONLY')
373     CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
374     *
375     * Positioning volume TBAL into the mother SPEB
376     *
377     DO I=1,2
378     C DTBAL is the distance along x of the volumes TBAL from the end of TRPB
379     DTBAL=3.6
380     N=I
381     IF(I.EQ.1) THEN
382     X=TRPB(1)-3.6-TBAL(1)
383     ELSE
384     X=-(TRPB(1)-3.6-TBAL(1))
385     ENDIF
386     Y=MGFR(2) - 2*TRPB(2)-TBAL(2)
387     Z=ZTRPB
388     CALL GSPOS('TBAL',N,'SPEB',X,Y,Z,0,'ONLY')
389     ENDDO
390     *
391     * Positioning volume TPGU into the mother MGFR
392     *
393     X=0.
394     <<<<<<< gpspev.F
395     C Z=MGFR(3)-TPGU(3)
396     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3)+TRPB(3))+
397     + TPGU(3)
398     =======
399     C Z=MGFR(3)-TPGU(3)
400     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3)+TRPB(3))+
401     + TPGU(3)
402     >>>>>>> 3.5
403     Y=-MGFR(2)+TRPB(2)
404     CALL GSPOS('TPGU',N,'MGFR',X,Y,Z,0,'ONLY')
405     *
406     RETURN
407     END

  ViewVC Help
Powered by ViewVC 1.1.23