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

Contents of /gpamela/gpspe/gpspev.F

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.11 - (show 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 *
2 * $Id: gpspev.F,v 3.10 2006/12/01 12:25:51 cafagna Exp $
3 *
4 * $Log: gpspev.F,v $
5 * Revision 3.10 2006/12/01 12:25:51 cafagna
6 * New Antiproton annihilation cross section added
7 *
8 * 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 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 *
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 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 *
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 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 *****
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 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 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
281 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
285 CC end ml.
286
287 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
297 X=-TPAS(1)+TPASSPACE+2*(I-1)*GLUEX+(2*I-1)*TRCP(1)+
298 + 2*(I-1)*TRSL(1)
299 CC end ml
300 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 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
313 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
317 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
322 Y=TPAS(2)-0.1485+0.0005-TRSL(2)
323 ELSE
324
325 Y=TPAS(2)-0.1485-GLUEY-3*TRSL(2)
326 ENDIF
327
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 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
378 c ml: 22/9/05:
379
380 Y=-TPAS(2)+0.1485+THBP(2)
381
382 Z=TRPB(3)-2*TPAI(3)-TRCP(3)
383 DO I=1, NTHBP
384
385 c ml: 21/9/05 introducing the glue between the carbon barrel and the silicon
386 c ladders
387
388 X=-TPAS(1)+TPASSPACE+2*I*TRCP(1)+(2*I-1)*THBP(1)+
389 + (2*(MOD(I-1,3)+1)-1)*GLUEX
390 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 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
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 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
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 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 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 *
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 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 *
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
475 *
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 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 *
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 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 *
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
508 Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3))+TPGA(3)
509
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 *
517 * Positioning volumes TRPB & MGPL into the mother SPEB
518 *
519 N= 1
520 X= 0.
521
522 Y= -MGFR(2) + TRPB(2)
523
524 Z=-MGFR(3)+2*(TPGD(3)+TPGI(3)+MGPL(3)+TPGI(3)+TPGA(3))+TRPB(3)
525
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 Z=SPEB(3)
543 DO I=1, 5
544 X= 0.
545 Y= 0.
546
547 Z=Z-MGFR(3)
548 N= I
549 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 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
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 *
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
589 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 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 *
599 RETURN
600 END

  ViewVC Help
Powered by ViewVC 1.1.23