COSMOS v7.655  COSMOSv7655
(AirShowerMC)
cbremsPath.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine cbremspath (Ee, path)
 
subroutine cbremsenergy (Ee, Eg)
 

Function/Subroutine Documentation

◆ cbremsenergy()

subroutine cbremsenergy ( real*8  Ee,
real*8  Eg 
)

Definition at line 42 of file cbremsPath.f.

References a, cbrcsampe(), cbrlsampe(), cbrssampe(), d, e, and masele.

Referenced by cbrems().

42  implicit none
43 #include "Zmass.h"
44 #include "ZbpCnst.h"
45 
46 
47  real*8 ee ! input. e-/e+ energy in GeV
48  real*8 eg ! output. sampled Eg in GeV
49 
50 
51  10 continue
52  if(ee .le. breemaxs) then
53 ! Seltzer region
54  call cbrssampe(ee, eg)
55 
56  elseif(ee .le. compscre) then
57 ! screeinig region
58  call cbrlsampe(ee, eg)
59 
60  elseif(ee .le. bremeemaxl) then
61 ! complete screeing region
62  call cbrcsampe(ee, eg)
63 
64  else
65 ! LPM region; same as path part. should not come
66 ! call cBrHSampE(Ee, Eg)
67  call cbrcsampe(ee, eg)
68  endif
69  if( ee - masele <= eg ) goto 10
subroutine cbrssampe(Eein, Eg)
Definition: cBrSSamp.f:24
subroutine cbrcsampe(Ee, Eg)
Definition: cBrCSamp.f:37
const double masele
Definition: Zmass.h:2
subroutine cbrlsampe(Ee, Eg)
Definition: cBrLSamp.f:29
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cbremspath()

subroutine cbremspath ( real*8  Ee,
real*8  path 
)

Definition at line 2 of file cbremsPath.f.

References cbrcsampp(), cbrlsampp(), cbrssampp(), and rndc().

Referenced by csampeintl().

2 ! generic brems sampling routine
3  implicit none
4 #include "ZbpCnst.h"
5 ! entry cBrSampP(Ee, prob, path)
6 
7 
8  real*8 ee ! input. Electron/positron energy in GeV
9  real*8 prob ! output. Brems prob. per r%l
10  real*8 path ! ouptut. sampled path in r%l
11 
12  real*8 u
13 
14  if(ee .le. breemaxs) then
15 ! Seltzer region
16  call cbrssampp(ee, prob)
17  elseif(ee .le. compscre) then
18 ! screeinig region
19  call cbrlsampp(ee, prob)
20  elseif(ee .le. bremeemaxl) then
21 ! complete screeing region
22  call cbrcsampp(ee, prob)
23  else
24 ! LPM region;
25 ! call cBrHSampP(Ee, prob); this cannot be used due to rho change.
26 ! should not come here; LPM routine is called
27 ! from outer place. However, control may come here
28 ! because of small BremEemaxL ~ 94 GeV.
29 ! If you are very serious about LPM, the effect may
30 ! be seen in 100 GeV region at very small gamma energies
31 ! However, the effect in air shower development could be
32 ! seen at least > 10^15 eV. Therefore we use complete
33 ! screening cross section.
34 !
35  call cbrcsampp(ee, prob)
36  endif
37  call rndc(u)
38  path = - log(u)/prob
subroutine rndc(u)
Definition: rnd.f:91
subroutine cbrcsampp(Ee, prob)
Definition: cBrCSamp.f:2
subroutine cbrlsampp(Ee, prob)
Definition: cBrLSamp.f:2
subroutine cbrssampp(Ee, prob)
Definition: cBrSSamp.f:2
Here is the call graph for this function:
Here is the caller graph for this function: