COSMOS v7.655  COSMOSv7655
(AirShowerMC)
cupsilon.f
Go to the documentation of this file.
1 ! cupsilon: compute upsilon
2 ! cy2zeta: y --> zeta
3 ! cx2zeta: x --> zeta
4 !
5 ! compute critical value Upsilon
6 ! = E/m * H/Hcr
7  real*8 function cupsilon(electron, mag)
8  implicit none
9 #include "Zglobalc.h"
10 #include "Zptcl.h"
11 #include "Zmagfield.h"
12 
13  type(ptcl):: electron ! electron
14  type(magfield):: mag ! magnetic field.
15  real*8 bsin, cgetBsin
16 
17  bsin = cgetbsin(electron, mag)
18 ! E/m * Bsin/Bcr
19  cupsilon = electron%fm%p(4) /electron%mass * bsin/bcr
20  end
21 ! *****************************************************************
22 ! compute critical energy (peak energy) of photons for synchrotron
23 ! radiation.
24 !
25  real*8 function cegcrit(e, upsilon)
26  implicit none
27 ! y in Erber is Eg/Egcrit
28 
29  real*8 e ! input. Electron energy in GeV.
30  real*8 upsilon ! Upsilon value E/m * Bsin/Bcr
31 !
32  cegcrit = e * 3. * upsilon/(2. + 3.*upsilon)
33  end
34 ! *****************************************
35 ! zeta = y/(2 + 3Upsilon(1-y))
36 ! = y/(2+3Upsilon)/(1- x)
37 ! = x (1+x )/ (3Upsilon) Eq.2.8
38  real*8 function cy2zeta(y, upsilon)
39  implicit none
40  real*8 y ! input. Eg/Egcrit
41  real*8 upsilon ! input.
42 
43  cy2zeta = y/ (2. + 3.*upsilon*(1. - y))
44  end
45 ! ********************************************
46 ! This is approx. formula.
47 !
48  real*8 function cx2zeta(x, upsilon)
49  implicit none
50  real*8 x ! input. Eg/Ee
51  real*8 upsilon ! input.
52 
53  cx2zeta = x *(1. + x)/(3.*upsilon)
54  end
real *8 function cx2zeta(x, upsilon)
Definition: cupsilon.f:49
real *8 function cy2zeta(y, upsilon)
Definition: cupsilon.f:39
real *8 function cupsilon(electron, mag)
Definition: cupsilon.f:8
Definition: Zptcl.h:75
real *8 function cegcrit(e, upsilon)
Definition: cupsilon.f:26