3 integer code, subcode, charge, kf, ccode
7 write(0,*)
' cosmos code -> kf code -> target code' 9 write(0,*)
'Enter target code by selecting from' 10 write(0,*)
" pdg qgs nxs ghe sib cor" 11 write(0,*)
" here epos =nxs cor=Corsika=Geant3" 20 write(0,*)
'cos--> ', inc,
"-->",outc
22 write(0,*)
'Enter code, subcode, charge' 28 write(0,*)
' target code =', ccode
35 integer function idtrafo(code1,code2,idi)
47 common /ighnx/ ighenex(35)
49 $ 10, 11, -12, 12, -14, 14, 120, 110,
50 $ -120, 130, 20, -20, -130, 1120, -1120, 1220,
51 $ -1220, 2130, -2130, 1130, 1230, 2230, -1130, -1230,
52 $ -2230, 1330, 2330, -1330, -2330, 17, 18, 19,
58 dimension kipart(48),ikpart(35)
60 $ 1, 3, 4, 2, 5, 6, 8, 7,
61 $ 9, 12, 10, 13, 16, 14, 15, 11,
62 $ 35, 18, 20, 21, 22, 26, 27, 33,
63 $ 17, 19, 23, 24, 25, 28, 29, 34,
64 $ 35, 35, 35, 35, 35, 35, 35, 35,
65 $ 35, 35, 35, 35, 30, 31, 32, 35/
68 $ 1, 4, 2, 3, 5, 6, 8, 7,
69 $ 9, 11, 16, 10, 12, 14, 15, 13,
70 $ 25, 18, 26, 19, 20, 21, 27, 28,
71 $ 29, 22, 23, 30, 31, 45, 46, 47,
75 character*3 code1,code2
77 integer idt(ncode,nidt)
78 double precision drangen,dummy
80 data ((idt(
i,
j),
i=1,ncode),
j= 1,18)/
99 data ((idt(
i,
j),
i=1,ncode),
j= 19,40)/
105 * , -130,-321,-4,13,10
107 * , -230,-311,-5,12,22
109 * , -20,-310,-5,12,11
113 * , -121,-213,99,99,26
116 * , -131,-323,99,99,29
118 * , -231,-313,99,99,31
121 $ , 240,-411,7,99,99 /
122 data ((idt(
i,
j),
i=1,ncode),
j= 41,59)/
124 * , 1220,2112,3,16,14
125 * , 2130,3122,6,18,39
126 * , 1130,3222,99,20,34
127 * , 1230,3212,99,21,35
128 * , 2230,3112,99,22,36
129 * , 1330,3322,99,26,37
130 * , 2330,3312,99,27,38
131 * , 1111,2224,99,99,40
132 * , 1121,2214,99,99,41
133 * , 1221,2114,99,99,42
134 * , 2221,1114,99,99,43
135 * , 1131,3224,99,99,44
136 * , 1231,3214,99,99,45
137 * , 2231,3114,99,99,46
138 * , 1331, 3324,99,99,47
139 * , 2331, 3314,99,99,48
140 * , 3331, 3334,99,24,49
141 $ , 2140, 4122,9,99,99 /
142 data ((idt(
i,
j),
i=1,ncode),
j= 60,64)/
148 data ((idt(
i,
j),
i=1,ncode),
j= 65,79)/
149 $ 1112,32224,99,99,99
150 $ , 1112, 2222,99,99,99
151 $ , 1113,12224,99,99,99
152 $ , 1114,12222,99,99,99
153 $ , 1114, 2226,99,99,99
154 $ , 1114,22222,99,99,99
155 $ , 1114,22224,99,99,99
156 $ , 1114,12226,99,99,99
157 $ , 1114, 2228,99,99,99
158 $ , 2222,31114,99,99,99
159 $ , 2222, 1112,99,99,99
160 $ , 2223,11114,99,99,99
161 $ , 2224,11112,99,99,99
162 $ , 2224, 1116,99,99,99
163 $ , 2224,21112,99,99,99 /
164 data ((idt(
i,
j),
i=1,ncode),
j= 80,94)/
165 $ 2224,21114,99,99,99
166 $ ,2224,11116,99,99,99
167 $ ,2224, 1118,99,99,99
168 $ ,1122,12212,99,99,99
169 $ ,1123, 2124,99,99,99
170 $ ,1123,22212,99,99,99
171 $ ,1124,32214,99,99,99
172 $ ,1124, 2122,99,99,99
173 $ ,1125,32212,99,99,99
174 $ ,1125, 2216,99,99,99
175 $ ,1125,12216,99,99,99
176 $ ,1126,12214,99,99,99
177 $ ,1127,22124,99,99,99
178 $ ,1127,42212,99,99,99
179 $ ,1127,32124,99,99,99 /
180 data ((idt(
i,
j),
i=1,ncode),
j= 95,109)/
181 $ 1128,12122,99,99,99
182 $ ,1128, 2126,99,99,99
183 $ ,1128,22122,99,99,99
184 $ ,1128,22214,99,99,99
185 $ ,1128,12126,99,99,99
186 $ ,1128, 2218,99,99,99
187 $ ,1222,12112,99,99,99
188 $ ,1223, 1214,99,99,99
189 $ ,1223,22112,99,99,99
190 $ ,1224,32114,99,99,99
191 $ ,1224, 1212,99,99,99
192 $ ,1225,32112,99,99,99
193 $ ,1225, 2116,99,99,99
194 $ ,1225,12116,99,99,99
195 $ ,1226,12114,99,99,99 /
196 data ((idt(
i,
j),
i=1,ncode),
j= 110,124)/
197 $ 1227,21214,99,99,99
198 $ ,1227,42112,99,99,99
199 $ ,1227,31214,99,99,99
200 $ ,1228,11212,99,99,99
201 $ ,1228, 1216,99,99,99
202 $ ,1228,21212,99,99,99
203 $ ,1228,22114,99,99,99
204 $ ,1228,11216,99,99,99
205 $ ,1228, 2118,99,99,99
206 $ ,1233,13122,99,99,99
207 $ ,1234, 3124,99,99,99
208 $ ,1235,23122,99,99,99
209 $ ,1235,33122,99,99,99
210 $ ,1235,13124,99,99,99
211 $ ,1236,13212,99,99,99 /
212 data ((idt(
i,
j),
i=1,ncode),
j= 125,139)/
213 $ 1236,13214,99,99,99
214 $ ,1237,23212,99,99,99
215 $ ,1237, 3216,99,99,99
216 $ ,1238,43122,99,99,99
217 $ ,1238,53122,99,99,99
218 $ ,1238, 3126,99,99,99
219 $ ,1238,13126,99,99,99
220 $ ,1238,23124,99,99,99
221 $ ,1239,13216,99,99,99
222 $ ,1239,23214,99,99,99
223 $ ,1132,13222,99,99,99
224 $ ,1132,13224,99,99,99
225 $ ,1133,23222,99,99,99
226 $ ,1133,3226,99,99,99
227 $ ,1134,13226,99,99,99 /
228 data ((idt(
i,
j),
i=1,ncode),
j= 140,146)/
229 $ 1134,23224,99,99,99
230 $ ,2232,13112,99,99,99
231 $ ,2232,13114,99,99,99
232 $ ,2233,23112,99,99,99
233 $ ,2233,3116,99,99,99
234 $ ,2234,13116,99,99,99
235 $ ,2234,23114,99,99,99 /
236 data ((idt(
i,
j),
i=1,ncode),
j= 147,159)/
250 data ((idt(
i,
j),
i=1,ncode),
j= 160,184)/
252 $ ,2300,3101,99,99,99
253 $ ,1300,3201,99,99,99
254 $ ,2400,4101,99,99,99
255 $ ,1400,4201,99,99,99
256 $ ,3400,4301,99,99,99
257 $ ,2500,5101,99,99,99
258 $ ,1500,5201,99,99,99
259 $ ,3500,5301,99,99,99
260 $ ,4500,5401,99,99,99
261 $ ,2200,1103,99,99,99
262 $ ,1200,2103,99,99,99
263 $ ,1100,2203,99,99,99
264 $ ,2300,3103,99,99,99
265 $ ,1300,3203,99,99,99
266 $ ,3300,3303,99,99,99
267 $ ,2400,4103,99,99,99
268 $ ,1400,4203,99,99,99
269 $ ,3400,4303,99,99,99
270 $ ,4400,4403,99,99,99
271 $ ,2500,5103,99,99,99
272 $ ,1500,5203,99,99,99
273 $ ,3500,5303,99,99,99
274 $ ,4500,5403,99,99,99
275 $ ,5500,5503,99,99,99 /
276 data ((idt(
i,
j),
i=1,ncode),
j= 185,188)/
277 $ 800000091,91,99,99,99
278 $ ,800000092,92,99,99,99
279 $ ,800000093,93,99,99,99
280 $ ,800000094,94,99,99,99 /
281 data ((idt(
i,
j),
i=1,ncode),
j= 189,208)/
301 $ ,551,553,99,99,99 /
302 data ((idt(
i,
j),
i=1,ncode),
j= 209,264)/
304 $ ,1240,4212,99,99,99
305 $ ,1140,4222,99,99,99
306 $ ,2241,4114,99,99,99
307 $ ,1241,4214,99,99,99
308 $ ,1141,4224,99,99,99
309 $ ,3240,4132,99,99,99
310 $ ,2340,4312,99,99,99
311 $ ,3140,4232,99,99,99
312 $ ,1340,4322,99,99,99
313 $ ,3340,4332,99,99,99
314 $ ,2341,4314,99,99,99
315 $ ,1341,4324,99,99,99
316 $ ,3341,4334,99,99,99
317 $ ,2440,4412,99,99,99
318 $ ,2441,4414,99,99,99
319 $ ,1440,4422,99,99,99
320 $ ,1441,4424,99,99,99
321 $ ,3440,4432,99,99,99
322 $ ,3441,4434,99,99,99
323 $ ,4441,4444,99,99,99
324 $ ,2250,5112,99,99,99
325 $ ,2150,5122,99,99,99
326 $ ,3250,5132,99,99,99
327 $ ,4250,5142,99,99,99
328 $ ,1250,5212,99,99,99
329 $ ,1150,5222,99,99,99
330 $ ,3150,5232,99,99,99
331 $ ,4150,5242,99,99,99
332 $ ,2350,5312,99,99,99
333 $ ,1350,5322,99,99,99
334 $ ,3350,5332,99,99,99
335 $ ,4350,5342,99,99,99
336 $ ,2450,5412,99,99,99
337 $ ,1450,5422,99,99,99
338 $ ,3450,5432,99,99,99
339 $ ,4450,5442,99,99,99
340 $ ,2550,5512,99,99,99
341 $ ,1550,5522,99,99,99
342 $ ,3550,5532,99,99,99
343 $ ,3550,5542,99,99,99
344 $ ,2251,5114,99,99,99
345 $ ,1251,5214,99,99,99
346 $ ,1151,5224,99,99,99
347 $ ,2351,5314,99,99,99
348 $ ,1351,5324,99,99,99
349 $ ,3351,5334,99,99,99
350 $ ,2451,5414,99,99,99
351 $ ,1451,5424,99,99,99
352 $ ,3451,5434,99,99,99
353 $ ,4451,5444,99,99,99
354 $ ,2551,5514,99,99,99
355 $ ,1551,5524,99,99,99
356 $ ,3551,5534,99,99,99
357 $ ,4551,5544,99,99,99
358 $ ,5551,5554,99,99,99 /
359 data ((idt(
i,
j),
i=1,ncode),
j= 265,295)/
361 $ ,122,10211,99,99,99
362 $ ,233,10313,99,99,99
363 $ ,232,10311,99,99,99
364 $ ,133,10323,99,99,99
365 $ ,132,10321,99,99,99
366 $ ,143,10423,99,99,99
367 $ ,132,10421,99,99,99
368 $ ,243,10413,99,99,99
369 $ ,242,10411,99,99,99
370 $ ,343,10433,99,99,99
371 $ ,342,10431,99,99,99
372 $ ,223,10113,99,99,99
373 $ ,222,10111,99,99,99
374 $ ,113,10223,99,99,99
375 $ ,112,10221,99,99,99
376 $ ,333,10333,99,99,99
377 $ ,332,10331,99,99,99
378 $ ,443,10443,99,99,99
379 $ ,442,10441,99,99,99
380 $ ,444,10443,99,99,99
381 $ ,253,10513,99,99,99
382 $ ,252,10511,99,99,99
383 $ ,153,10523,99,99,99
384 $ ,152,10521,99,99,99
385 $ ,353,10533,99,99,99
386 $ ,352,10531,99,99,99
387 $ ,453,10543,99,99,99
388 $ ,452,10541,99,99,99
389 $ ,553,10553,99,99,99
390 $ ,552,10551,99,99,99 /
391 data ((idt(
i,
j),
i=1,ncode),
j= 296,325)/
394 $ ,234,20313,99,99,99
396 $ ,134,20323,99,99,99
398 $ ,144,20423,99,99,99
400 $ ,244,20413,99,99,99
402 $ ,344,20433,99,99,99
404 $ ,224,20113,99,99,99
406 $ ,114,20223,99,99,99
408 $ ,334,20333,99,99,99
410 $ ,444,20443,99,99,99
412 $ ,254,20513,99,99,99
414 $ ,154,20523,99,99,99
416 $ ,354,20533,99,99,99
418 $ ,454,20543,99,99,99
420 $ ,554,20553,99,99,99
421 $ ,555,555,99,99,99 /
422 data ((idt(
i,
j),
i=1,ncode),
j= 326,nidt)/
423 $ 11099,9900110,99,99,99
424 $ ,12099,9900210,99,99,99
425 $ ,22099,9900220,99,99,99
426 $ ,33099,9900330,99,99,99
427 $ ,44099,9900440,99,99,99
428 $ ,112099,9902210,99,99,99
429 $ ,122099,9902110,99,99,99
430 $ ,800000110,110,99,99,99
431 $ ,800000990,990,99,99,99 /
438 if(code1.eq.
'nxs')
then 440 elseif(code1.eq.
'pdg')
then 442 elseif(code1.eq.
'qgs')
then 444 elseif(code1.eq.
'ghe')
then 447 elseif(code1.eq.
'sib')
then 449 elseif(code1.eq.
'cor')
then 454 stop
"unknown code in idtrafo" 456 if(code2.eq.
'nxs')
then 459 if(
i.eq.5.and.id1.gt.1004)
then 462 elseif(id1.eq.130.and.
i.eq.2)
then 466 if(
i.eq.2) nidtmx=nidt
467 elseif(code2.eq.
'pdg')
then 470 if(id1.eq.-20.and.
i.eq.1)
then 474 if(
i.eq.1) nidtmx=nidt
475 elseif(code2.eq.
'qgs')
then 478 elseif(code2.eq.
'ghe')
then 481 elseif(code2.eq.
'sib')
then 484 elseif(code2.eq.
'cor')
then 488 stop
"unknown code in idtrafo" 494 if(iad1.eq.abs(idt(
i,
n)))
then 497 do while(abs(idt(
i,
n+
m)).eq.iad1)
503 if(
m.eq.2.and.idt(
i,
n)*idt(
i,
n+1).lt.0)
then 504 if(id1.eq.idt(
i,
n+1))mm=1
507 mm=int(drangen(dummy)*dble(
m))
511 if(abs(
idtrafo).eq.99)
call utstop(
'New particle not allowed ')
514 if(iadtr.ge.20.and.iadtr.le.22)
then 516 elseif(iadtr.eq.26.or.iadtr.eq.27)
then 518 elseif(iadtr.ge.14)
then integer npitbl real *nx parameter(n=101, npitbl=46, nx=n-1) real *8 uconst
block data cblkElemag data *AnihiE ! Eposi< 1 TeV, anihilation considered *X0/365.667/, ! radiation length of air in kg/m2 *Ecrit/81.e-3/, ! critical energy of air in GeV *MaxComptonE/1./, ! compton is considered below 1 GeV *MaxPhotoE/1.e-3/, ! above this, PhotoElectric effect neg. *MinPhotoProdE/153.e-3/, ! below 153 MeV, no gp --> hadrons ! scattering const not MeV *Knockon true
integer function idtrafo(code1, code2, idi)
subroutine ccos2kf(code, subcode, chg, kf)
********************block data cblkHeavy ********************integer j data *HeavyG2symbol *data *HeavyG2code kiron data j
*Zfirst p fm *Zfirst p Zfirst p code
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p charge
block data include Zlatfit h c fitting region data data data data data d0 data data d0 data data m
real *8 function drangen(u)
*Zfirst p fm *Zfirst p Zfirst p Zfirst p subcode