Go to the source code of this file.
◆ cmubrsmpe()
subroutine cmubrsmpe |
( |
real*8 |
Emu, |
|
|
real*8 |
Eg |
|
) |
| |
Definition at line 32 of file cmuBrsmp.f.
References d0, masmu, mulogf0, rndc(), and true.
Referenced by cmuinte().
42 real*8 vc, vmx,
cmuvmax2, term1, term2, u1, u2,
x 43 real*8 delta, logf, func, u, v
47 term1 =4.
d0/3.
d0 * (log(vmx/vc) - (vmx-vc))
48 term2 = (vmx-vc)*(vmx+vc)/2.
d0 52 if(u .le. term1/(term1+term2))
then 59 if( u .lt. (1.0-
x))
then 60 if(
x .lt. vmx)
goto 10
70 if(
x .gt. vc .and.
x .lt. vmx)
goto 20
79 delta = (
masmu/emu) * v /(1.
d0-v)/2
80 logf = muakm / (1.
d0 + muakm2*delta)
81 if(zeff .gt. 10.)
then 82 logf = logf * 2./3.
d0 /zeff3
86 if(u .gt. func/
mulogf0)
goto 100
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
real *8 function cmuvmax2(E)
block data cblkEvhnp ! currently usable models data RegMdls ad *special data *Cekaon d0
! muon interaction related variables ! real Zeff3 ! Zeff **real muPrEmax1 integer muPrTXT ! real muBrEmax1 integer muBrTXT ! real muNEmax1 integer muNTXT ! real muNpwdEdxt real real mulogf0 real muBrLEmin common muintc mulogf0
! structure defining a particle at production ! Basic idea of what is to be contained in ! the particle structue is that dynamical ones should be included those derivable from the particle code ! is not included ******************************************************type fmom momentum sequence union map real e endmap map real * x
◆ cmubrsmpp()
subroutine cmubrsmpp |
( |
real*8 |
Emu, |
|
|
real*8 |
prob, |
|
|
real*8 |
path |
|
) |
| |
Definition at line 2 of file cmuBrsmp.f.
References kintp3(), and rndc().
Referenced by csampmuint().
13 if(emu .le. mubremin)
then 15 elseif(emu .le. mubremax1)
then 17 call kintp3(mubrtx, 1, mubrtxt, mubrlemin,
18 * mubrdetx, ale, prob)
21 prob = mubrtx(mubrtxt)
subroutine kintp3(f, intv, n, x1, h, x, ans)