1 |
* |
2 |
* $Id: gptofv.F,v 3.1.1.1 2002/07/11 16:02:01 cafagna Exp $ |
3 |
* |
4 |
* $Log: gptofv.F,v $ |
5 |
* Revision 3.1.1.1 2002/07/11 16:02:01 cafagna |
6 |
* First GPAMELA release on CVS |
7 |
* |
8 |
* |
9 |
*CMZ : 2.01/00 05/04/2000 14.35.18 by Marialuigia Ambriola |
10 |
*CMZ : 2.00/00 03/03/2000 15.39.05 by Francesco Cafagna |
11 |
*CMZ : 1.02/00 21/10/99 16.30.25 by Francesco Cafagna |
12 |
*CMZ : 1.00/02 18/03/96 17.18.03 by Francesco Cafagna |
13 |
*-- Author : Francesco Cafagna 05/12/95 |
14 |
SUBROUTINE GPTOFV |
15 |
************************************************************************ |
16 |
* * |
17 |
* Volumes definition for the scintillators counters * |
18 |
* Called by: GPGEO * |
19 |
* Author: Francesco Cafagna, 05/12/95 13.39.41 * |
20 |
* * |
21 |
************************************************************************ |
22 |
#include "gpgeo.inc" |
23 |
#include "gpmed.inc" |
24 |
* |
25 |
INTEGER IROT,IVOLU,N,NMED,NUM |
26 |
REAL X,Y,Z |
27 |
* |
28 |
NMED=MN2 |
29 |
* |
30 |
* Define the S11 volume |
31 |
* |
32 |
CALL GSVOLU('S11 ','BOX ',NMED,S11, 3,IVOLU) |
33 |
* |
34 |
* Define the S12 volume |
35 |
* |
36 |
CALL GSVOLU('S12 ','BOX ',NMED,S12, 3,IVOLU) |
37 |
* |
38 |
* Define the S21 volume |
39 |
* |
40 |
CALL GSVOLU('S21 ','BOX ',NMED,S21, 3,IVOLU) |
41 |
* |
42 |
* Define the S22 volume |
43 |
* |
44 |
CALL GSVOLU('S22 ','BOX ',NMED,S22, 3,IVOLU) |
45 |
* |
46 |
* Define the S31 volume |
47 |
* |
48 |
CALL GSVOLU('S31 ','BOX ',NMED,S31, 3,IVOLU) |
49 |
* |
50 |
* Define the S32 volume |
51 |
* |
52 |
CALL GSVOLU('S32 ','BOX ',NMED,S32, 3,IVOLU) |
53 |
* |
54 |
* Change medium just for S4. |
55 |
* |
56 |
NMED=MSCIN |
57 |
* |
58 |
* Define the S4 volume |
59 |
* |
60 |
CALL GSVOLU('S4 ','BOX ',NMED,S4, 3,IVOLU) |
61 |
* |
62 |
* Start subvolume definition. |
63 |
* |
64 |
c ml: 27/10/04: |
65 |
* |
66 |
c* Define the S11X volume |
67 |
* Define the S11Y volume |
68 |
* |
69 |
c CALL GSVOLU('S11X','BOX ',NMED,S11X, 3,IVOLU) |
70 |
CALL GSVOLU('S11Y','BOX ',NMED,S11Y, 3,IVOLU) |
71 |
* |
72 |
c* Define the S12Y volume |
73 |
* Define the S12X volume |
74 |
* |
75 |
c CALL GSVOLU('S12Y','BOX ',NMED,S12Y, 3,IVOLU) |
76 |
CALL GSVOLU('S12X','BOX ',NMED,S12X, 3,IVOLU) |
77 |
c end ml. |
78 |
* |
79 |
* Define the S21X volume |
80 |
* |
81 |
CALL GSVOLU('S21X','BOX ',NMED,S21X, 3,IVOLU) |
82 |
* |
83 |
* Define the S22Y volume |
84 |
* |
85 |
CALL GSVOLU('S22Y','BOX ',NMED,S22Y, 3,IVOLU) |
86 |
* |
87 |
* Define the S31Y volume |
88 |
* |
89 |
CALL GSVOLU('S31Y','BOX ',NMED,S31Y, 3,IVOLU) |
90 |
* |
91 |
* Define the S32X volume |
92 |
* |
93 |
CALL GSVOLU('S32X','BOX ',NMED,S32X, 3,IVOLU) |
94 |
|
95 |
c ml: 21/12/04: |
96 |
NMED=MCF |
97 |
* |
98 |
* Define the SC11 volume |
99 |
* |
100 |
CALL GSVOLU('SC11','BOX ',NMED,SC11, 3,IVOLU) |
101 |
* |
102 |
* Define the SC12 volume |
103 |
* |
104 |
CALL GSVOLU('SC12','BOX ',NMED,SC12, 3,IVOLU) |
105 |
* |
106 |
* Define the SC21 volume |
107 |
* |
108 |
CALL GSVOLU('SC21','BOX ',NMED,SC21, 3,IVOLU) |
109 |
* |
110 |
* Define the SC22 volume |
111 |
* |
112 |
CALL GSVOLU('SC22','BOX ',NMED,SC22, 3,IVOLU) |
113 |
|
114 |
c* |
115 |
c* Define the STOF volume |
116 |
c* |
117 |
c NMED=MAL |
118 |
c CALL GSVOLU('STOF','BOX ',NMED,STOF, 3,IVOLU) |
119 |
c* |
120 |
c* Define the SGLU volume |
121 |
c* |
122 |
cC COLLA ARALDITICA (DA VERIFICARNE LA COMPOSIZIONE) |
123 |
c NMED=MSIC |
124 |
c CALL GSVOLU('SGLU','BOX ',NMED,SGLU, 3,IVOLU) |
125 |
c* |
126 |
c* Define the SPV1 volume |
127 |
c* |
128 |
c NMED=? (PVC espanso) |
129 |
c CALL GSVOLU('SPV1','BOX ',NMED,SPV1, 3,IVOLU) |
130 |
c* |
131 |
c* Define the SMYL volume |
132 |
c* |
133 |
c NMED=? (MYLAR) |
134 |
c CALL GSVOLU('SMYL','BOX ',NMED,SMYL, 3,IVOLU) |
135 |
c* |
136 |
c* Define the SPV2 volume |
137 |
c* |
138 |
c NMED=? (PVC espanso) |
139 |
c CALL GSVOLU('SPV2','BOX ',NMED,SPV2, 3,IVOLU) |
140 |
cc end ml. |
141 |
* |
142 |
* Define the SC31 volume |
143 |
* |
144 |
CALL GSVOLU('SC31','BOX ',NMED,SC31, 3,IVOLU) |
145 |
* |
146 |
* Define the SC32 volume |
147 |
* |
148 |
CALL GSVOLU('SC32','BOX ',NMED,SC32, 3,IVOLU) |
149 |
|
150 |
* |
151 |
* Positioning volumes |
152 |
* |
153 |
c ml: 21/12/04: |
154 |
Y= 0 |
155 |
Z= 0 |
156 |
c ml: 27/10/04: |
157 |
c DO I=1,NS11X |
158 |
DO I=1,NS11Y |
159 |
N= I |
160 |
c X= -S11(1) + (2*I-1)*S11X(1) |
161 |
X= -S11(1) + (2*I-1)*S11Y(1) |
162 |
c CALL GSPOS('S11X',N,'S11 ',X,Y,Z,0,'ONLY') |
163 |
CALL GSPOS('S11Y',N,'S11 ',X,Y,Z,0,'ONLY') |
164 |
ENDDO |
165 |
c end ml. |
166 |
X= 0. |
167 |
Y= 0. |
168 |
DO I=1,2 |
169 |
N= I |
170 |
Z= (-1.)**I*S11(3) + (-1.)**(I+1)*SC11(3) |
171 |
CALL GSPOS('SC11',N,'S11 ',X,Y,Z,0,'ONLY') |
172 |
ENDDO |
173 |
* |
174 |
X= 0 |
175 |
Z= 0 |
176 |
c ml: 27/10/04 |
177 |
c DO I=1,NS12Y |
178 |
DO I=1,NS12X |
179 |
N= I |
180 |
c Y= -S12(2) + (2*I-1)*S12Y(2) |
181 |
Y= -S12(2) + (2*I-1)*S12X(2) |
182 |
c CALL GSPOS('S12Y',N,'S12 ',X,Y,Z,0,'ONLY') |
183 |
CALL GSPOS('S12X',N,'S12 ',X,Y,Z,0,'ONLY') |
184 |
ENDDO |
185 |
c end ml. |
186 |
X= 0. |
187 |
Y= 0. |
188 |
DO I=1,2 |
189 |
N= I |
190 |
Z= (-1.)**I*S12(3) + (-1.)**(I+1)*SC12(3) |
191 |
CALL GSPOS('SC12',N,'S12 ',X,Y,Z,0,'ONLY') |
192 |
ENDDO |
193 |
* |
194 |
Y= 0 |
195 |
Z= 0 |
196 |
DO I=1,NS21X |
197 |
N= I |
198 |
c ml: 27/10/04 X= -S21(1) + (2*I-1)*S21X(1) |
199 |
Y= -S21(2) + (2*I-1)*S21X(2) |
200 |
c end ml. |
201 |
CALL GSPOS('S21X',N,'S21 ',X,Y,Z,0,'ONLY') |
202 |
ENDDO |
203 |
X= 0. |
204 |
Y= 0. |
205 |
DO I=1,2 |
206 |
N= I |
207 |
Z= (-1.)**I*S21(3) + (-1.)**(I+1)*SC21(3) |
208 |
CALL GSPOS('SC21',N,'S21 ',X,Y,Z,0,'ONLY') |
209 |
ENDDO |
210 |
* |
211 |
X= 0 |
212 |
Z= 0 |
213 |
DO I=1,NS22Y |
214 |
N= I |
215 |
c ml: 27/10/04 Y= -S22(2) + (2*I-1)*S22Y(2) |
216 |
X= -S22(1) + (2*I-1)*S22Y(1) |
217 |
c end ml. |
218 |
CALL GSPOS('S22Y',N,'S22 ',X,Y,Z,0,'ONLY') |
219 |
ENDDO |
220 |
X= 0. |
221 |
Y= 0. |
222 |
DO I=1,2 |
223 |
N= I |
224 |
Z= (-1.)**I*S22(3) + (-1.)**(I+1)*SC22(3) |
225 |
CALL GSPOS('SC22',N,'S22 ',X,Y,Z,0,'ONLY') |
226 |
ENDDO |
227 |
c* |
228 |
c* Positioning volumes into S11: |
229 |
c+ |
230 |
c X=0. |
231 |
c Y=0. |
232 |
c Z=-S11(3)+SMYL(3) |
233 |
c N=1 |
234 |
c CALL GSPOS('SMYL',N,'SMYL',X,Y,Z,0,'ONLY') |
235 |
c Z=Z+SMYL(3)+S11Y(3) |
236 |
c DO I=1,NS11Y |
237 |
c N= I |
238 |
c X= -S11(1) + (2*I-1)*S11Y(1) |
239 |
c CALL GSPOS('S11Y',N,'S11 ',X,Y,Z,0,'ONLY') |
240 |
c ENDDO |
241 |
c N=2 |
242 |
c Z=Z+S11Y(3)+SMYL(3) |
243 |
c CALL GSPOS('SMYL',N,'SMYL',X,Y,Z,0,'ONLY') |
244 |
c Z=Z+SMYL(3)+SPV1(3) |
245 |
c N=1 |
246 |
c CALL GSPOS('SPV1',N,'SPV1',X,Y,Z,0,'ONLY') |
247 |
c Z=Z+SPV1(3)+SGLU(3) |
248 |
c N=1 |
249 |
c CALL GSPOS('SGLU',N,'SGLU',X,,Y,Z,0,'ONLY') |
250 |
c Z=Z+SGLU(3)+STOF(3) |
251 |
c N=1 |
252 |
c CALL GSPOS('STOF',N,'STOF',X,Y,Z,0,'ONLY') |
253 |
c* |
254 |
c* Positioning volumes into S12: |
255 |
c* |
256 |
c Z=-S12(3)+STOF(3) |
257 |
c N=2 |
258 |
c CALL GSPOS('STOF',N,'STOF',X,Y,Z,0,'ONLY') |
259 |
c Z=Z+STOF(3)+SGLU(3) |
260 |
c CALL GSPOS('SGLU',N,'SGLU',X,Y,Z,0,'ONLY') |
261 |
c Z=Z+SGLU(3)+SPV2 |
262 |
X= 0 |
263 |
Z= 0 |
264 |
DO I=1,NS31Y |
265 |
N= I |
266 |
c ml: 27/10/04: |
267 |
c Y= -S31(2) + (2*I-1)*S31Y(2) |
268 |
X= -S31(1) + (2*I-1)*S31Y(1) |
269 |
c end ml. |
270 |
CALL GSPOS('S31Y',N,'S31 ',X,Y,Z,0,'ONLY') |
271 |
ENDDO |
272 |
X= 0. |
273 |
Y= 0. |
274 |
DO I=1,2 |
275 |
N= I |
276 |
Z= (-1.)**I*S31(3) + (-1.)**(I+1)*SC31(3) |
277 |
CALL GSPOS('SC31',N,'S31 ',X,Y,Z,0,'ONLY') |
278 |
ENDDO |
279 |
* |
280 |
Y= 0 |
281 |
Z= 0 |
282 |
DO I=1,NS32X |
283 |
N= I |
284 |
c ml: 27/10/04: |
285 |
c X= -S32(1) + (2*I-1)*S32X(1) |
286 |
Y= -S32(2) + (2*I-1)*S32X(2) |
287 |
c end ml. |
288 |
CALL GSPOS('S32X',N,'S32 ',X,Y,Z,0,'ONLY') |
289 |
|
290 |
ENDDO |
291 |
X= 0. |
292 |
Y= 0. |
293 |
DO I=1,2 |
294 |
N= I |
295 |
Z= (-1.)**I*S32(3) + (-1.)**(I+1)*SC32(3) |
296 |
CALL GSPOS('SC32',N,'S32 ',X,Y,Z,0,'ONLY') |
297 |
ENDDO |
298 |
* |
299 |
RETURN |
300 |
END |