14 do i = 0, noofsites + 1
20 debydeathmupik(i) = 0.
65 if(a.
where .ge. 1)
then 104 if(a.
where .ge. 1)
then 123 debydeathmupik(a.
where) = debydeathmupik(a.
where)
163 if(info .eq. 2 .and. a.
where .eq. eabsorb(2) )
then 177 elseif( info .eq. 1 )
then 186 if(code .gt. 7) code=7
192 ecrash(code) = ecrash(code) + (a.
p.fm.
p(4)-a.
p.
mass)*a.
wgt 195 espace(code) = espace(code) + (a.
p.fm.
p(4)-a.
p.
mass)*a.
wgt 216 real*8 Eout, diff, reldiff, Ein
217 real*8 diff1, diff2, Ein1, Ein2
227 if( a.p.fm.p(4) .gt. ebig )
then 228 ein1 = a.p.fm.p(4) +
masn*(targetnucleonno-targetprotonno) +
229 *
masp*targetprotonno
230 ein2 = a.p.fm.p(4) +
masp 233 eout = eout + p(i).fm.p(4)
241 if( abs(diff2) .lt. abs(diff1))
then 245 reldiff = (eout/ein -1.)
247 if( abs(reldiff) .gt. 0.02 )
then 251 if( abs(diff) .gt. abs(maxebreak(1)) )
then 253 maxebreak(2) = reldiff
256 if( abs(reldiff) .gt. abs(maxrelebreak(1)) )
then 257 maxrelebreak(1) = reldiff
258 maxrelebreak(2) = diff
261 sumediff = sumediff + diff
262 sumabsediff = sumabsediff + abs(diff)
281 integer nevent, ntevent
286 write(0,*)
"================= Warning: Ebreak =============" 287 write(0,*)
" event #=", nevent,
" 1ry Energy=", inci.p.fm.p(4)
288 write(0,*)
"incident(not 1ry) code=", a.p.
code,
289 *
" subcode=", a.p.
subcode,
" Ein~", a.p.fm.p(4)
290 write(0,*)
"Target(A,Z)=", targetnucleonno, targetprotonno
291 write(0,*)
"No. of generted particles =", n
292 write(0,*)
"Sum of outgoing ptcl Energy:Eout=", eout
293 write(0,*)
"dE=(Eout-Ein)=", diff,
" dE/Ein~",
295 write(0,*)
"(Eout-Ein)/1ryE=", diff/inci.p.fm.p(4)
296 write(0,*)
"Height=", a.pos.
height,
" depth=",a.pos.
depth/10.
297 write(0,*)
" where=", a.
where,
" weight=", a.
wgt 298 write(0,*)
"================================================" *Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p *Zfirst pos xyz Zfirst pos xyz *Zfirst pos *Zfirst pos depth
subroutine chookeabsorbw(a, n, p, Eout, diff)
subroutine chookeabsorbd(a, dE, info)
max ptcl codes in the kkaon
max ptcl codes in the kelec
subroutine chookeabsorbb(a, info)
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
max ptcl codes in the kneue
max ptcl codes in the kseethru ! subcode integer regptcl
********************block data cblkHeavy ********************integer j data *HeavyG2symbol p
*Zfirst p fm *Zfirst p Zfirst p code
********************block data cblkHeavy ********************integer j data *HeavyG2symbol *data *HeavyG2code knuc
max ptcl codes in the kneumu
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p *Zfirst pos xyz Zfirst pos xyz *Zfirst pos *Zfirst pos Zfirst pos height
subroutine cqeventno(num, cumnum)
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p *Zfirst pos xyz Zfirst pos xyz *Zfirst pos *Zfirst pos Zfirst pos *Zfirst pos *Zfirst Zfirst vec w *Zfirst vec w Zfirst vec coszenith
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p charge
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 ! knockon is considered Obsolete *PhotoProd false
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p *Zfirst pos xyz Zfirst pos xyz *Zfirst pos *Zfirst pos Zfirst pos *Zfirst pos *Zfirst Zfirst vec w *Zfirst vec w Zfirst vec *Zfirst Zfirst where
*Zfirst p fm *Zfirst p mass
subroutine chookeabsorb(a, b, dE, info)
This is called when Eabsorb != 0 and when a charged particle runs from a to b and deposits energy dE ...
subroutine chookeabsorbc(a, n, p, info)
subroutine chookeabsorbi(info)
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p *Zfirst pos xyz Zfirst pos xyz *Zfirst pos *Zfirst pos Zfirst pos *Zfirst pos *Zfirst Zfirst vec w *Zfirst vec w Zfirst vec *Zfirst wgt
*Zfirst p fm *Zfirst p Zfirst p Zfirst p subcode