13 common /showshow/ show
15 if(intinfarray(processno)%process .eq.
'coll')
then 18 write(0,*)
'entering chAcol' 21 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
25 write(0,*)
' aft chAcol: Npro=',nproduced
29 write(msg, *)
' in cinteNuc: process=',
30 * intinfarray(processno)%process,
31 *
' undef. ProcessNo=',processno
48 if(intinfarray(processno)%process .eq.
'coll')
then 49 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
52 elseif(intinfarray(processno)%process .eq.
'decay')
then 53 if(movedtrack%p%charge .eq. 0)
then 54 call cpi0decay(movedtrack%p, pwork, nproduced)
57 * pwork, nproduced, muonpolarization)
60 write(msg, *)
' in cintePion: process=',
61 * intinfarray(processno)%process,
62 *
' undef. ProcessNo=',processno
63 write(0,*)
' Et=', movedtrack%p%fm%p(4),
' chg=',
83 if(intinfarray(processno)%process .eq.
'coll')
then 84 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
86 elseif(intinfarray(processno)%process .eq.
'decay')
then 88 * pwork, nproduced, muonpolarization)
90 write(msg, *)
' in cinteKaon: process=',
91 * intinfarray(processno)%process,
92 *
' undef. ProcessNo=',processno
110 icg = movedtrack%p%charge
111 if(intinfarray(processno)%process .eq.
'decay')
then 112 call cddecay(movedtrack%p, pwork, nproduced)
113 elseif(intinfarray(processno)%process .eq.
'coll')
then 120 call ce2p(movedtrack)
121 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
124 write(msg, *)
' in cinteDmeson: process=',
125 * intinfarray(processno)%process,
126 *
' undef. ProcessNo=',processno
138 if(intinfarray(processno)%process .eq.
'decay')
then 142 *
' Delta resonance collision should not happen ' 162 if(intinfarray(processno)%process .eq.
'coll')
then 163 call cheavyint(movedtrack%p, targetnucleonno,
164 * targetprotonno, pwork, nproduced)
166 write(msg, *)
' in cinteHeavy: process=',
167 * intinfarray(processno)%process,
168 *
' undef. ProcessNo=',processno
185 real*8 capr, t0cap, u1, u2
188 if(intinfarray(processno)%process .eq.
'decay')
then 190 if(movedtrack%p%charge .eq. -1)
then 191 if(movedtrack%p%fm%p(4) .le. movedtrack%p%mass*1.001)
then 195 capr = media(mediumno)%xs
199 if( - log(u1)*
t0mu .gt. - log(u2)*t0cap)
then 201 intinfarray(processno)%process =
"capt" 203 call ccapnu(targetnucleonno, targetprotonno,
208 call cmuneudcy(movedtrack%p, muonpolarization,
209 * eabsorb(1), pwork, nproduced)
212 call cmuneudcy(movedtrack%p, muonpolarization,
213 * eabsorb(1), pwork, nproduced)
216 call cmuneudcy(movedtrack%p, muonpolarization,
217 * eabsorb(1), pwork, nproduced)
231 muonpolarization =min(1.
d0, max(val, -1.
d0 ))
245 if(intinfarray(processno)%process .eq.
'decay')
then 246 call cnnbdc(movedtrack%p, pwork, nproduced)
248 write(msg, *)
' in cintennb: process=',
249 * intinfarray(processno)%process,
250 *
' undef. ProcessNo=',processno
266 if(intinfarray(processno)%process .eq.
'decay')
then 267 call cddbdc(movedtrack%p, pwork, nproduced)
269 write(msg, *)
' in cintennb: process=',
270 * intinfarray(processno)%process,
271 *
' undef. ProcessNo=',processno
285 if(intinfarray(processno)%process .eq.
'decay')
then 288 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
302 if(intinfarray(processno)%process .eq.
'decay')
then 303 call clambdadcy(movedtrack%p, pwork, nproduced)
305 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
319 if(intinfarray(processno)%process .eq.
'decay')
then 320 call cgzaidecay(movedtrack%p, pwork, nproduced)
322 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
336 if(intinfarray(processno)%process .eq.
'decay')
then 337 call cbomegadcy(movedtrack%p, pwork, nproduced)
339 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
353 if(intinfarray(processno)%process .eq.
'decay')
then 354 call cetadecay(movedtrack%p, pwork, nproduced)
356 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
370 if(intinfarray(processno)%process .eq.
'decay')
then 371 call cetapdecay(movedtrack%p, pwork, nproduced)
389 if(intinfarray(processno)%process .eq.
'decay')
then 391 elseif(intinfarray(processno)%process .eq.
'coll')
then 393 if( movedtrack%p%charge > 0 )
then 398 call ce2p(movedtrack)
399 call chacol(movedtrack%p, targetnucleonno, targetprotonno,
402 write(msg, *)
' in cinteLambdac: process=',
403 * intinfarray(processno)%process,
404 *
' undef. ProcessNo=',processno
418 if(intinfarray(processno)%process .eq.
'decay')
then 419 call crhodc(movedtrack%p, pwork, nproduced)
420 elseif(intinfarray(processno)%process .eq.
'coll')
then 423 write(msg, *)
' in cinterho: process=',
424 * intinfarray(processno)%process,
425 *
' undef. ProcessNo=',processno
439 if(intinfarray(processno)%process .eq.
'decay')
then 440 call comgdc(movedtrack%p, pwork, nproduced)
441 elseif(intinfarray(processno)%process .eq.
'coll')
then 444 write(msg, *)
' in cinteomega: process=',
445 * intinfarray(processno)%process,
446 *
' undef. ProcessNo=',processno
460 if(intinfarray(processno)%process .eq.
'decay')
then 461 call cphidc(movedtrack%p, pwork, nproduced)
462 elseif(intinfarray(processno)%process .eq.
'coll')
then 465 write(msg, *)
' in cintephi: process=',
466 * intinfarray(processno)%process,
467 *
' undef. ProcessNo=',processno
481 if(intinfarray(processno)%process .eq.
'decay')
then 482 call cdsdecay(movedtrack%p, pwork, nproduced)
483 elseif(intinfarray(processno)%process .eq.
'coll')
then 486 write(msg, *)
' in cinteds: process=',
487 * intinfarray(processno)%process,
488 *
' undef. ProcessNo=',processno
503 if(intinfarray(processno)%process .eq.
'decay')
then 504 call ctauneudcy(movedtrack%p, pwork, nproduced)
505 elseif(intinfarray(processno)%process .eq.
'coll')
then 508 write(msg, *)
' in cintetau: process=',
509 * intinfarray(processno)%process,
510 *
' undef. ProcessNo=',processno
subroutine cddbdc(a, b, n)
subroutine cerrormsg(msg, needrtn)
subroutine cddecay(pj, a, np)
subroutine crhodc(vm, a, np)
max ptcl codes in the kseethru ! subcode integer k0l
subroutine csetmuonpol(val)
subroutine cmuneudcy(pj, polari, inclusive, a, np)
subroutine cpi0decay(pj, a, np)
subroutine cdsdecay(pj, a, np)
max ptcl codes in the kkaon
subroutine cheavyint(pj, ia, iz, a, ntp)
subroutine cpimudecay(pj, mupol, a, np, polari)
subroutine cdeltadecay(pj, a, np)
subroutine csigmadecay(pj, a, np)
subroutine clambdacdcy(pj, a, np)
subroutine cnnbdc(a, b, n)
block data cblkEvhnp ! currently usable models data RegMdls ad *special data *Cekaon d0
********************block data cblkHeavy ********************integer j data *HeavyG2symbol *data *HeavyG2code knuc
subroutine cbomegadcy(pj, a, np)
subroutine comgdc(vm, a, np)
! life time in s real t0mu
subroutine cetadecay(pj, a, np)
subroutine cetapdecay(pj, a, np)
subroutine ckaondecay(pj, mupol, a, np, polari)
subroutine cphidc(vm, a, np)
subroutine cmkptc(code, subcode, charge, p)
subroutine cgzaidecay(pj, a, np)
subroutine ctauneudcy(pj, a, np)
subroutine cfixtarget(media)
subroutine clambdadcy(pj, a, np)
subroutine cgetcaprate(media)
subroutine ccapnu(atms, z, a, np)
subroutine chacol(pj, ia, iz, a, ntp)