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

Annotation of /gpamela/gpspe/gpspev.F

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.11 - (hide annotations) (download)
Fri Apr 23 10:04:13 2010 UTC (14 years, 7 months ago) by pam-fi
Branch: MAIN
CVS Tags: HEAD
Changes since 3.10: +291 -83 lines
 New rototrasled silicon sensors geometry, to be reconstructed using data allignment parameters

1 cafagna 3.10 *
2 pam-fi 3.11 * $Id: gpspev.F,v 3.10 2006/12/01 12:25:51 cafagna Exp $
3 cafagna 3.10 *
4     * $Log: gpspev.F,v $
5 pam-fi 3.11 * Revision 3.10 2006/12/01 12:25:51 cafagna
6     * New Antiproton annihilation cross section added
7     *
8 cafagna 3.10 * Revision 3.9 2006/06/30 15:38:16 pam-ba
9     * 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)
10     *
11     * Revision 3.8 2006/05/02 12:02:43 bottai
12     * micrometric adjustment of spe geometry
13     *
14     * Revision 3.7 2005/12/16 10:20:23 cafagna
15     * Bug fixed in the new update
16     *
17     * Revision 3.6 2005/12/16 09:13:59 cafagna
18     * New small valume added to the tracker frame
19     *
20     * Revision 3.5 2005/12/13 10:31:29 pam-ba
21     * added a new volume, TPGI, in the spectrometer
22     *
23     * Revision 3.4 2005/12/05 12:15:21 pam-ba
24     * new spectrometer geometry and internal magnetic field
25     *
26     * Revision 3.3 2005/07/25 11:53:21 cafagna
27     * Several updates. See history for details
28     *
29     * Revision 3.2 2005/06/21 02:42:27 cafagna
30     * Major modification to the geometry and to the random number chain
31     *
32     * Revision 3.1.1.1 2002/07/11 16:02:14 cafagna
33     * First GPAMELA release on CVS
34     *
35     *
36     *CMZ : 2.01/00 05/04/2000 14.35.18 by Marialuigia Ambriola
37     *CMZ : 2.00/00 03/03/2000 15.39.06 by Francesco Cafagna
38     *CMZ : 1.02/00 07/03/97 14.48.41 by Francesco Cafagna
39     *CMZ : 1.00/02 06/02/96 17.34.50 by Francesco Cafagna
40     *-- Author : Francesco Cafagna 09/12/95
41     SUBROUTINE GPSPEV
42     ************************************************************************
43     * *
44     * Volumes definition for the silicon tracking system and magnet *
45     * Called by: GPGEM *
46     * Author: Francesco Cafagna, 05/12/95 13.39.41 *
47     * *
48     ************************************************************************
49     #include "gpgeo.inc"
50     #include "gpmed.inc"
51     *
52     INTEGER IROT,IVOLU,N,NMED,NUM
53     REAL X,Y,Z
54 pam-fi 3.11 C
55     REAL ROWMAT(3)
56     REAL OMEGA(36),BETA(36),GAMMA(36)
57     REAL DX(36),DY(36),DZ(36)
58     REAL DXFLO(6),DYFLO(6),DZFLO(6)
59     CHARACTER*19 FILEALLI
60     LOGICAL ROTATE
61     c
62     c
63    
64     cv
65     cv
66     DO IK=1,6
67    
68     IF(IK.EQ.1) FILEALLI='parameters_l1s2.dat'
69     IF(IK.EQ.2) FILEALLI='parameters_l2s2.dat'
70     IF(IK.EQ.3) FILEALLI='parameters_l3s2.dat'
71     IF(IK.EQ.4) FILEALLI='parameters_l1s1.dat'
72     IF(IK.EQ.5) FILEALLI='parameters_l2s1.dat'
73     IF(IK.EQ.6) FILEALLI='parameters_l3s1.dat'
74    
75     write(6,*) 'OPEN ',FILEALLI
76     OPEN(91,file=FILEALLI,status='old')
77     DO IH=1,6
78     II=(6-IH)*6+IK
79     READ(91,*) OMEGA(II)
80     READ(91,*) BETA(II)
81     READ(91,*) GAMMA(II)
82     READ(91,*) DX(II)
83     READ(91,*) DY(II)
84     READ(91,*) DZ(II)
85     ENDDO
86    
87     CLOSE(91)
88    
89     ENDDO
90    
91     DO IJ=1,6
92     DXFLO(IJ)=0.
93     DYFLO(IJ)=0.
94     DO IL=1,6
95     II=(IJ-1)*6+IL
96     DXFLO(IJ)=DXFLO(IJ)+DX(II)
97     DYFLO(IJ)=DYFLO(IJ)+DY(II)
98     ENDDO
99     DXFLO(IJ)=DXFLO(IJ)/6.
100     DYFLO(IJ)=DYFLO(IJ)/6.
101     ENDDO
102    
103     DO IJ=1,6
104     DO IL=1,6
105     II=(IJ-1)*6+IL
106     DX(II)=( DX(II)-DXFLO(IJ) )*1.E-4
107     DY(II)=( DY(II)-DYFLO(IJ) )*1.E-4
108     DZ(II)=(DZ(II)-100.)*1.E-4
109     ENDDO
110     DXFLO(IJ)=DXFLO(IJ)*1.E-4
111     DYFLO(IJ)=DYFLO(IJ)*1.E-4
112     ENDDO
113    
114    
115     DO IJ=1,6
116     DO IL=1,6
117     II=(IJ-1)*6+IL
118     OMEGA_1=OMEGA(II)*1.E-6
119     BETA_1=BETA(II)*1.E-6
120     GAMMA_1=GAMMA(II)*1.E-6
121     c
122     c
123     IF(IJ.EQ.6) THEN
124     OMEGA_1=-OMEGA_1
125     BETA_1=BETA_1
126     GAMMA_1=-GAMMA_1
127     ENDIF
128    
129    
130    
131     ROWMAT(1)=1.
132     ROWMAT(2)=OMEGA_1
133     ROWMAT(3)=-GAMMA_1
134     CALL GFANG(ROWMAT,COSTH,SINTH,COSPH,SINPH,ROTATE)
135     THETA1=ATAN2(SINTH,COSTH)/acos(-1.)*180.
136     PHI1=ATAN2(SINPH,COSPH)/acos(-1.)*180.
137    
138     ROWMAT(1)=-OMEGA_1
139     ROWMAT(2)=1.
140     ROWMAT(3)=BETA_1
141    
142     CALL GFANG(ROWMAT,COSTH,SINTH,COSPH,SINPH,ROTATE)
143     THETA2=ATAN2(SINTH,COSTH)/acos(-1.)*180.
144     PHI2=ATAN2(SINPH,COSPH)/acos(-1.)*180.
145    
146     ROWMAT(1)=GAMMA_1
147     ROWMAT(2)=-BETA_1
148     ROWMAT(3)=1.
149    
150     CALL GFANG(ROWMAT,COSTH,SINTH,COSPH,SINPH,ROTATE)
151     THETA3=ATAN2(SINTH,COSTH)/acos(-1.)*180.
152     PHI3=ATAN2(SINPH,COSPH)/acos(-1.)*180.
153    
154     write(6,*) 'GSROTM(50+II)',50+II,THETA1,PHI1,THETA2,PHI2,THETA3,PHI3
155     IIKROT=50+II
156     CALL GSROTM(IIKROT,THETA1,PHI1,THETA2,PHI2,THETA3,PHI3)
157    
158     ENDDO
159     ENDDO
160    
161 cafagna 3.10 *
162     * Define the SPEB volume
163     *
164     NMED= MN2
165     CALL GSVOLU('SPEB','BOX ',NMED,SPEB, 3,IVOLU)
166     *
167     * Define the MGFR volume
168     *
169     NMED= MAL
170 pam-fi 3.11 cv CALL GSVOLU('MGFR','BOX ',NMED,MGFR, 3,IVOLU)
171     CALL GSVOLU('MGF1','BOX ',NMED,MGFR, 3,IVOLU)
172     CALL GSVOLU('MGF2','BOX ',NMED,MGFR, 3,IVOLU)
173     CALL GSVOLU('MGF3','BOX ',NMED,MGFR, 3,IVOLU)
174     CALL GSVOLU('MGF4','BOX ',NMED,MGFR, 3,IVOLU)
175     CALL GSVOLU('MGF5','BOX ',NMED,MGFR, 3,IVOLU)
176    
177 cafagna 3.10 *
178     * Define the MGPL volume
179     *
180     NMED= MMAG
181     CALL GSVOLU('MGPL','BOX ',NMED,MGPL, 3,IVOLU)
182     *
183     * Define the MGPI volume
184     *
185     NMED= MN2
186     CALL GSVOLU('MGPI','BOX ',NMED,MGPI, 3,IVOLU)
187     *
188     * Define the TRPB volume
189     *
190     NMED= MAL
191 pam-fi 3.11 cv CALL GSVOLU('TRPB','BOX ',NMED,TRPB, 3,IVOLU)
192     CALL GSVOLU('TRP1','BOX ',NMED,TRPB, 3,IVOLU)
193     CALL GSVOLU('TRP2','BOX ',NMED,TRPB, 3,IVOLU)
194     CALL GSVOLU('TRP3','BOX ',NMED,TRPB, 3,IVOLU)
195     CALL GSVOLU('TRP4','BOX ',NMED,TRPB, 3,IVOLU)
196     CALL GSVOLU('TRP5','BOX ',NMED,TRPB, 3,IVOLU)
197     CALL GSVOLU('TRP6','BOX ',NMED,TRPB, 3,IVOLU)
198 cafagna 3.10 *****
199     cC ml 20/04/05:
200     *
201     cc* Define the TRPL volume
202     * Define the TPAS and TPAI volume
203     *
204     NMED= MN2
205 pam-fi 3.11 cv CALL GSVOLU('TPAS','BOX ',NMED,TPAS, 3,IVOLU)
206     CALL GSVOLU('TPA1','BOX ',NMED,TPAS, 3,IVOLU)
207     CALL GSVOLU('TPA2','BOX ',NMED,TPAS, 3,IVOLU)
208     CALL GSVOLU('TPA3','BOX ',NMED,TPAS, 3,IVOLU)
209     CALL GSVOLU('TPA4','BOX ',NMED,TPAS, 3,IVOLU)
210     CALL GSVOLU('TPA5','BOX ',NMED,TPAS, 3,IVOLU)
211     CALL GSVOLU('TPA6','BOX ',NMED,TPAS, 3,IVOLU)
212 cafagna 3.10 NMED= MAL
213     CALL GSVOLU('TPAI','BOX ',NMED,TPAI, 3,IVOLU)
214     CC end ml.
215     ****************
216     *
217     * Define the TRSL volume
218     *
219     c ml: 26/11/04:
220     c NMED= MN2
221     NMED=MSIT
222     CALL GSVOLU('TRSL','BOX ',NMED,TRSL, 3,IVOLU)
223     *
224     * Define the THBP volume
225     *
226     NMED=MG10C
227     CALL GSVOLU('THBP','BOX ',NMED,THBP, 3,IVOLU)
228     C end ml.
229     *
230     * Define the TSPA volume
231     *
232     NMED= MSIT
233     CALL GSVOLU('TSPA','BOX ',NMED,TSPA, 3,IVOLU)
234     *
235     * Define the TRCP volume
236     *
237     NMED= MCF
238     CALL GSVOLU('TRCP','BOX ',NMED,TRCP, 3,IVOLU)
239     *
240     * Define the TBAL volume
241     *
242     NMED= MAL
243     CALL GSVOLU('TBAL','BOX ',NMED,TBAL, 3,IVOLU)
244     *
245     * Define the MGPA volume
246     *
247     NMED= MAL
248     CALL GSVOLU('MGPA','BOX ',NMED,MGPA, 3,IVOLU)
249     *
250     * Define the TPGA volume
251     *
252     NMED= MN2
253     CALL GSVOLU('TPGA','BOX ',NMED,TPGA, 3,IVOLU)
254     *
255     * Define the TPGI volume
256     *
257     NMED= MN2
258     CALL GSVOLU('TPGI','BOX ',NMED,TPGI, 3,IVOLU)
259     *
260     * Define the TPGU volume
261     *
262     NMED= MN2
263     CALL GSVOLU('TPGU','BOX ',NMED,TPGU, 3,IVOLU)
264     *
265     * Define the TPGD volume
266     *
267     NMED= MN2
268     CALL GSVOLU('TPGD','BOX ',NMED,TPGD, 3,IVOLU)
269    
270     *
271     * Positioning volume TSPA into the mother TRSL
272     *
273     GLUEX=XGLUE-0.0005
274     GLUEY=XGLUE
275     N= 1
276     X= 0.
277     Y= 0.
278     Z= 0.
279     CALL GSPOS('TSPA',N,'TRSL',X,Y,Z,0,'ONLY')
280 pam-fi 3.11
281 cafagna 3.10 c ml: 26/11/04:
282     * Positioning volume TRCP into mother TPAS
283     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
284 pam-fi 3.11
285 cafagna 3.10 CC end ml.
286 pam-fi 3.11
287 cafagna 3.10 Z=TRPB(3)-2*TPAI(3)-TRCP(3)
288     y=-TPAS(2)+TRCP(2)
289     C # end CAF mod
290     TPASSPACE=TPAS(1)-(3*TRSL(1)+4*TRCP(1)+3*GLUEX)
291     DO I=1,4
292     CC ml 20/04/05:
293     C Ml. 15/12/05: introducing a space (along x) between the inner part of the
294     c aluminum frame and respectively the first and the last carbon fiber barrel.
295     c It is has been done increasing the dimension of TPAS along x:
296 pam-fi 3.11
297 cafagna 3.10 X=-TPAS(1)+TPASSPACE+2*(I-1)*GLUEX+(2*I-1)*TRCP(1)+
298     + 2*(I-1)*TRSL(1)
299     CC end ml
300 pam-fi 3.11 cv CALL GSPOS('TRCP',I,'TPAS',X,Y,Z,0,'MANY')
301     CALL GSPOS('TRCP',I,'TPA1',X,Y,Z,0,'MANY')
302     CALL GSPOS('TRCP',I,'TPA2',X,Y,Z,0,'MANY')
303     CALL GSPOS('TRCP',I,'TPA3',X,Y,Z,0,'MANY')
304     CALL GSPOS('TRCP',I,'TPA4',X,Y,Z,0,'MANY')
305     CALL GSPOS('TRCP',I,'TPA5',X,Y,Z,0,'MANY')
306     CALL GSPOS('TRCP',I,'TPA6',X,Y,Z,0,'MANY')
307 cafagna 3.10 C # end CAF mod
308     ENDDO
309     cc ml 20/04/05:
310     * Positioning volume TRSL into the mother TPAS
311     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
312 pam-fi 3.11
313 cafagna 3.10 Z=TRPB(3)-2*TPAI(3)-TRCP(3)
314     DO I=1, NTRSL
315     c ml: 20/9/05 introducing the glue between TRCP and the silicon ladders.
316 pam-fi 3.11
317 cafagna 3.10 X=-TPAS(1)+TPASSPACE+2*(MOD(I-1,3)+1)*TRCP(1)+
318     + (2*(MOD(I-1,3)+1)-1)*GLUEX+(2*(MOD(I-1,3)+1)-1)*TRSL(1)
319     IF(I.LE.3) THEN
320     C ml: 22/9/05:
321 pam-fi 3.11
322 cafagna 3.10 Y=TPAS(2)-0.1485+0.0005-TRSL(2)
323     ELSE
324 pam-fi 3.11
325 cafagna 3.10 Y=TPAS(2)-0.1485-GLUEY-3*TRSL(2)
326     ENDIF
327 pam-fi 3.11
328     cv X=X+DX_1
329     cv Y=Y+DY_1
330     cv Z=Z+DZ_1
331     cv CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,51,'ONLY')
332     cv CALL GSPOS('TRSL',I,'TPAS',X,Y,Z,0,'ONLY')
333     X1=X+DX(I)
334     Y1=Y+DY(I)
335     Z1=Z+DZ(I)
336     IIRR=50+I
337     CALL GSPOS('TRSL',I,'TPA1',X1,Y1,Z1,IIRR,'ONLY')
338    
339     X2=X+DX(NTRSL+I)
340     Y2=Y+DY(NTRSL+I)
341     Z2=Z+DZ(NTRSL+I)
342     IIRR=50+NTRSL+I
343     CALL GSPOS('TRSL',NTRSL+I,'TPA2',X2,Y2,Z2,IIRR,'ONLY')
344    
345     X3=X+DX(2*NTRSL+I)
346     Y3=Y+DY(2*NTRSL+I)
347     Z3=Z+DZ(2*NTRSL+I)
348     IIRR=50+2*NTRSL+I
349     CALL GSPOS('TRSL',2*NTRSL+I,'TPA3',X3,Y3,Z3,IIRR,'ONLY')
350    
351    
352     X4=X+DX(3*NTRSL+I)
353     Y4=Y+DY(3*NTRSL+I)
354     Z4=Z+DZ(3*NTRSL+I)
355     IIRR=50+3*NTRSL+I
356     CALL GSPOS('TRSL',3*NTRSL+I,'TPA4',X4,Y4,Z4,IIRR,'ONLY')
357    
358     X5=X+DX(4*NTRSL+I)
359     Y5=Y+DY(4*NTRSL+I)
360     Z5=Z+DZ(4*NTRSL+I)
361     IIRR=50+4*NTRSL+I
362     CALL GSPOS('TRSL',4*NTRSL+I,'TPA5',X5,Y5,Z5,IIRR,'ONLY')
363    
364     IF(I.LE.3) KK=3+I
365     IF(I.GE.4) KK=I-3
366     X6=X+DX(5*NTRSL+KK)
367     Y6=Y-DY(5*NTRSL+KK)
368     Z6=Z-DZ(5*NTRSL+KK)
369     IIRR=50+5*NTRSL+KK
370     CALL GSPOS('TRSL',5*NTRSL+I,'TPA6',X6,Y6,Z6,IIRR,'ONLY')
371 cafagna 3.10 ENDDO
372     C # end CAF mod
373     **********
374     cc ml: 20/04/05
375     * Positioning volume THBP into the mother TPAS
376     C # Caf mod on 19 Jul 2005 all volumes are placed inside the TPAS one
377 pam-fi 3.11
378 cafagna 3.10 c ml: 22/9/05:
379 pam-fi 3.11
380 cafagna 3.10 Y=-TPAS(2)+0.1485+THBP(2)
381 pam-fi 3.11
382 cafagna 3.10 Z=TRPB(3)-2*TPAI(3)-TRCP(3)
383     DO I=1, NTHBP
384 pam-fi 3.11
385 cafagna 3.10 c ml: 21/9/05 introducing the glue between the carbon barrel and the silicon
386     c ladders
387 pam-fi 3.11
388 cafagna 3.10 X=-TPAS(1)+TPASSPACE+2*I*TRCP(1)+(2*I-1)*THBP(1)+
389     + (2*(MOD(I-1,3)+1)-1)*GLUEX
390 pam-fi 3.11 cv CALL GSPOS('THBP',I,'TPAS',X,Y,Z,0,'MANY')
391     CALL GSPOS('THBP',I,'TPA1',X,Y,Z,0,'MANY')
392     CALL GSPOS('THBP',I,'TPA2',X,Y,Z,0,'MANY')
393     CALL GSPOS('THBP',I,'TPA3',X,Y,Z,0,'MANY')
394     CALL GSPOS('THBP',I,'TPA4',X,Y,Z,0,'MANY')
395     CALL GSPOS('THBP',I,'TPA5',X,Y,Z,0,'MANY')
396     CALL GSPOS('THBP',I,'TPA6',X,Y,Z,0,'MANY')
397 cafagna 3.10 ENDDO
398     c end ml.
399     cc ml: 20/04/05
400     *
401     * Positioning volume TPAI into the mother TPAS
402     *
403     C # Mod By Caf on 19th Jul 2005 all volumes inside the TPAS
404     X=0
405     Y=-TPAS(2)+TPAI(2)
406     Z=TRPB(3)-TPAI(3)
407 pam-fi 3.11
408     cv CALL GSPOS('TPAI',I,'TPAS',X,Y,Z,0,'MANY')
409     CALL GSPOS('TPAI',1,'TPA1',X,Y,Z,0,'MANY')
410     CALL GSPOS('TPAI',1,'TPA2',X,Y,Z,0,'MANY')
411     CALL GSPOS('TPAI',1,'TPA3',X,Y,Z,0,'MANY')
412     CALL GSPOS('TPAI',1,'TPA4',X,Y,Z,0,'MANY')
413     CALL GSPOS('TPAI',1,'TPA5',X,Y,Z,0,'MANY')
414     CALL GSPOS('TPAI',1,'TPA6',X,Y,Z,0,'MANY')
415 cafagna 3.10 C # end CAF mod
416     *
417     * Positioning volume TPAS into the mother TRPB
418     *
419     C # Mod By Caf on 15th Jul 2005
420     X=0
421     Y=-TRPB(2)+1.5+TPAS(2)
422     Z=0
423 pam-fi 3.11
424     cv CALL GSPOS('TPAS',I,'TRPB',X,Y,Z,0,'ONLY')
425     CALL GSPOS('TPA1',1,'TRP1',X,Y,Z,0,'ONLY')
426     CALL GSPOS('TPA2',1,'TRP2',X,Y,Z,0,'ONLY')
427     CALL GSPOS('TPA3',1,'TRP3',X,Y,Z,0,'ONLY')
428     CALL GSPOS('TPA4',1,'TRP4',X,Y,Z,0,'ONLY')
429     CALL GSPOS('TPA5',1,'TRP5',X,Y,Z,0,'ONLY')
430     CALL GSPOS('TPA6',1,'TRP6',X,Y,Z,0,'ONLY')
431 cafagna 3.10 c end ml.
432     *
433     * Positioning volume MGPA into the mother MGPL
434     *
435     N= 1
436     X= 0.
437     Y= 0.
438     Z= 0.
439     CALL GSPOS('MGPA',N,'MGPL',X,Y,Z,0,'ONLY')
440     *
441     * Positioning volume TPGD into the mother MGFR
442     *
443     X=0.
444     Z=-MGFR(3)+TPGD(3)
445     Y=0.
446 pam-fi 3.11 cv CALL GSPOS('TPGD',N,'MGFR',X,Y,Z,0,'ONLY')
447     CALL GSPOS('TPGD',1,'MGF1',X,Y,Z,0,'ONLY')
448     CALL GSPOS('TPGD',1,'MGF2',X,Y,Z,0,'ONLY')
449     CALL GSPOS('TPGD',1,'MGF3',X,Y,Z,0,'ONLY')
450     CALL GSPOS('TPGD',1,'MGF4',X,Y,Z,0,'ONLY')
451     CALL GSPOS('TPGD',1,'MGF5',X,Y,Z,0,'ONLY')
452 cafagna 3.10 *
453     * Positioning volume TPGI into the mother MGFR under MGPL
454     *
455     N=1
456     X=0.
457     Z=-MGFR(3)+2*TPGD(3)+TPGI(3)
458     Y=0.
459 pam-fi 3.11 cv CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
460     CALL GSPOS('TPGI',1,'MGF1',X,Y,Z,0,'ONLY')
461     CALL GSPOS('TPGI',1,'MGF2',X,Y,Z,0,'ONLY')
462     CALL GSPOS('TPGI',1,'MGF3',X,Y,Z,0,'ONLY')
463     CALL GSPOS('TPGI',1,'MGF4',X,Y,Z,0,'ONLY')
464     CALL GSPOS('TPGI',1,'MGF5',X,Y,Z,0,'ONLY')
465 cafagna 3.10 *
466     * Positioning volume MGPI into the mother MGPL
467     *
468     N= 1
469     X= 0.
470     Y= 0.
471     CC ML 10/11/05: Positioning volume MGPI into the mother MGPA
472     Z= 0.
473     CALL GSPOS('MGPI',N,'MGPA',X,Y,Z,0,'ONLY')
474 pam-fi 3.11
475 cafagna 3.10 *
476     * Positioning volume MGPL into the mother MGFR
477     *
478     c ml: 10/11/05
479     N=1
480     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3))+MGPL(3)
481 pam-fi 3.11 cv CALL GSPOS('MGPL',N,'MGFR',X,Y,Z,0,'ONLY')
482     CALL GSPOS('MGPL',1,'MGF1',X,Y,Z,0,'ONLY')
483     CALL GSPOS('MGPL',1,'MGF2',X,Y,Z,0,'ONLY')
484     CALL GSPOS('MGPL',1,'MGF3',X,Y,Z,0,'ONLY')
485     CALL GSPOS('MGPL',1,'MGF4',X,Y,Z,0,'ONLY')
486     CALL GSPOS('MGPL',1,'MGF5',X,Y,Z,0,'ONLY')
487 cafagna 3.10 *
488     * Positioning volume TPGI into the mother MGFR above MGPL
489     *
490     N=2
491     X=0.
492     Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3))+TPGI(3)
493     Y=0.
494 pam-fi 3.11 cv CALL GSPOS('TPGI',N,'MGFR',X,Y,Z,0,'ONLY')
495     CALL GSPOS('TPGI',2,'MGF1',X,Y,Z,0,'ONLY')
496     CALL GSPOS('TPGI',2,'MGF2',X,Y,Z,0,'ONLY')
497     CALL GSPOS('TPGI',2,'MGF3',X,Y,Z,0,'ONLY')
498     CALL GSPOS('TPGI',2,'MGF4',X,Y,Z,0,'ONLY')
499     CALL GSPOS('TPGI',2,'MGF5',X,Y,Z,0,'ONLY')
500 cafagna 3.10 *
501     * Positioning volume TPGA into the mother MGFR
502     *
503     C ML: 10/11/05
504     N=1
505     X=0.
506     Y=MGFR(2)-2*(MGFR(2)-TRPB(2))-TPGA(2)
507 pam-fi 3.11
508 cafagna 3.10 Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3))+TPGA(3)
509 pam-fi 3.11
510     cv CALL GSPOS('TPGA',N,'MGFR',X,Y,Z,0,'ONLY')
511     CALL GSPOS('TPGA',1,'MGF1',X,Y,Z,0,'ONLY')
512     CALL GSPOS('TPGA',1,'MGF2',X,Y,Z,0,'ONLY')
513     CALL GSPOS('TPGA',1,'MGF3',X,Y,Z,0,'ONLY')
514     CALL GSPOS('TPGA',1,'MGF4',X,Y,Z,0,'ONLY')
515     CALL GSPOS('TPGA',1,'MGF5',X,Y,Z,0,'ONLY')
516 cafagna 3.10 *
517     * Positioning volumes TRPB & MGPL into the mother SPEB
518     *
519     N= 1
520     X= 0.
521 pam-fi 3.11
522 cafagna 3.10 Y= -MGFR(2) + TRPB(2)
523 pam-fi 3.11
524 cafagna 3.10 Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3))+TRPB(3)
525 pam-fi 3.11
526     cv CALL GSPOS('TRPB',N,'MGFR',X,Y,Z,0,'ONLY')
527     XX1=X+DXFLO(1)
528     YY1=Y+DYFLO(1)
529     CALL GSPOS('TRP1',1,'MGF1',XX1,YY1,Z,0,'ONLY')
530     XX2=X+DXFLO(2)
531     YY2=Y+DYFLO(2)
532     CALL GSPOS('TRP2',1,'MGF2',XX2,YY2,Z,0,'ONLY')
533     XX3=X+DXFLO(3)
534     YY3=Y+DYFLO(3)
535     CALL GSPOS('TRP3',1,'MGF3',XX3,YY3,Z,0,'ONLY')
536     XX4=X+DXFLO(4)
537     YY4=Y+DYFLO(4)
538     CALL GSPOS('TRP4',1,'MGF4',XX4,YY4,Z,0,'ONLY')
539     XX5=X+DXFLO(5)
540     YY5=Y+DYFLO(5)
541     CALL GSPOS('TRP5',1,'MGF5',XX5,YY5,Z,0,'ONLY')
542 cafagna 3.10 Z=SPEB(3)
543     DO I=1, 5
544     X= 0.
545     Y= 0.
546 pam-fi 3.11
547 cafagna 3.10 Z=Z-MGFR(3)
548     N= I
549 pam-fi 3.11 CV CALL GSPOS('MGFR',N,'SPEB',X,Y,Z,0,'ONLY')
550     IF(N.EQ.1) CALL GSPOS('MGF1',1,'SPEB',X,Y,Z,0,'ONLY')
551     IF(N.EQ.2) CALL GSPOS('MGF2',1,'SPEB',X,Y,Z,0,'ONLY')
552     IF(N.EQ.3) CALL GSPOS('MGF3',1,'SPEB',X,Y,Z,0,'ONLY')
553     IF(N.EQ.4) CALL GSPOS('MGF4',1,'SPEB',X,Y,Z,0,'ONLY')
554     IF(N.EQ.5) CALL GSPOS('MGF5',1,'SPEB',X,Y,Z,0,'ONLY')
555    
556 cafagna 3.10 Z=Z-MGFR(3)
557     ENDDO
558     N=2
559     X=0.
560     Y=MGFR(2) - TRPB(2)
561     Z=Z-TRPB(3)
562     ZTRPB=Z
563 pam-fi 3.11
564     cv CALL GSPOS('TRPB',N,'SPEB',X,Y,Z,10,'ONLY')
565     XX6=X+DXFLO(6)
566     YY6=Y+DYFLO(6)
567     CALL GSPOS('TRP6',1,'SPEB',XX6,YY6,Z,10,'ONLY')
568 cafagna 3.10 *
569     * Positioning volume TBAL into the mother SPEB
570     *
571     DO I=1,2
572     C DTBAL is the distance along x of the volumes TBAL from the end of TRPB
573     DTBAL=3.6
574     N=I
575     IF(I.EQ.1) THEN
576     X=TRPB(1)-3.6-TBAL(1)
577     ELSE
578     X=-(TRPB(1)-3.6-TBAL(1))
579     ENDIF
580     Y=MGFR(2) - 2*TRPB(2)-TBAL(2)
581     Z=ZTRPB
582     CALL GSPOS('TBAL',N,'SPEB',X,Y,Z,0,'ONLY')
583     ENDDO
584     *
585     * Positioning volume TPGU into the mother MGFR
586     *
587     X=0.
588 pam-fi 3.11
589 cafagna 3.10 Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3)+TRPB(3))+
590     + TPGU(3)
591     Y=-MGFR(2)+TRPB(2)
592 pam-fi 3.11 CV CALL GSPOS('TPGU',N,'MGFR',X,Y,Z,0,'ONLY')
593     CALL GSPOS('TPGU',1,'MGF1',X,Y,Z,0,'ONLY')
594     CALL GSPOS('TPGU',1,'MGF2',X,Y,Z,0,'ONLY')
595     CALL GSPOS('TPGU',1,'MGF3',X,Y,Z,0,'ONLY')
596     CALL GSPOS('TPGU',1,'MGF4',X,Y,Z,0,'ONLY')
597     CALL GSPOS('TPGU',1,'MGF5',X,Y,Z,0,'ONLY')
598 cafagna 3.10 *
599     RETURN
600     END

  ViewVC Help
Powered by ViewVC 1.1.23