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

Go to the source code of this file.

Functions/Subroutines

subroutine cxpxsec (pj, xs)
 

Function/Subroutine Documentation

◆ cxpxsec()

subroutine cxpxsec ( type(ptcl pj,
real*8  xs 
)

Definition at line 7 of file cxpXsec.f.

References cerrormsg(), charge, ckminuspxsec(), ckpluspxsec(), code, cpbarpxsec(), cpiminuspxsec(), cpipluspxsec(), cppxsec(), kbomega, kdmes, keta, kkaon, klambda, knuc, komega, kphi, kpion, krho, mass, and p.

7  implicit none
8 
9 #include "Zcode.h"
10 #include "Zptcl.h"
11 
12  type(ptcl):: pj
13  real*8 xs, ke
14  integer k
15 !
16 
17  character*100 msg
18 
19 
20 
21  k=pj.code
22  ke = pj.fm.p(4) - pj.mass
23  if(ke .le. 0.) then
24  xs = 0.
25  return !*******
26  endif
27 !
28 
29  if(k .eq. kpion .or. k .eq. keta) then
30  if(pj.charge .ge. 0) then
31  call cpipluspxsec(ke, xs)
32  else
33  call cpiminuspxsec(ke, xs)
34  endif
35  elseif(k .eq. kkaon ) then
36  if(pj.charge .ge. 0.) then
37  call ckpluspxsec(ke, xs)
38  else
39  call ckminuspxsec(ke, xs)
40  endif
41  elseif(k .eq. knuc) then
42  if(pj.charge .ge. 0.) then
43  call cppxsec(ke, xs)
44  else
45  call cpbarpxsec(ke, xs)
46  endif
47  elseif(k .eq. krho .or. k .eq. komega
48  * .or. k .eq. kphi .or. k .eq. kdmes) then
49  if(pj.charge .ge. 0) then
50  call cpipluspxsec(ke, xs)
51  else
52  call cpiminuspxsec(ke, xs)
53  endif
54  elseif( k .ge. klambda .and. k .le. kbomega) then
55  call cppxsec(ke, xs)
56  else
57  write(msg,*) ' undef.ptcl for cxpXsec=', k,
58  * ' K.E=', ke
59  call cerrormsg(msg, 0)
60  endif
subroutine cerrormsg(msg, needrtn)
Definition: cerrorMsg.f:4
max ptcl codes in the kdmes
Definition: Zcode.h:2
max ptcl codes in the kphi
Definition: Zcode.h:2
max ptcl codes in the kkaon
Definition: Zcode.h:2
max ptcl codes in the komega
Definition: Zcode.h:2
! constants thru Cosmos real ! if multiplied to deg radian Torad ! light velocity m sec ! infinty ! kg m2 *Togpcm2 g cm2 ! g cm2 *Tokgpm2 kg m2 ! cm *Tom m ! m *Tocm cm ! g cm3 *Tokgpm3 kg m3 ! kg m3 *Togpcm3 g cm3 ! sec *Tonsec nsec ! Tesla m ! Avogadro *A2deninv ! mfp *n * xs
Definition: Zglobalc.h:18
subroutine ckminuspxsec(e, xs)
Definition: cppXsec.f:104
********************block data cblkHeavy ********************integer j data *HeavyG2symbol p
Definition: cblkHeavy.h:7
*Zfirst p fm *Zfirst p Zfirst p code
Definition: ZavoidUnionMap.h:1
max ptcl codes in the klambda
Definition: Zcode.h:2
subroutine cpiminuspxsec(e, xs)
Definition: cppXsec.f:70
integer maxn LabEquivE real * ke(maxn) integer indx(maxn) integer nevent integer outzero
********************block data cblkHeavy ********************integer j data *HeavyG2symbol *data *HeavyG2code knuc
Definition: cblkHeavy.h:7
max ptcl codes in the krho
Definition: Zcode.h:2
*Zfirst p fm *Zfirst p Zfirst p Zfirst p *Zfirst p charge
Definition: ZavoidUnionMap.h:1
subroutine cppxsec(e, xs)
Definition: cppXsec.f:35
max ptcl codes in the keta
Definition: Zcode.h:2
Definition: Zptcl.h:75
*Zfirst p fm *Zfirst p mass
Definition: ZavoidUnionMap.h:1
max ptcl codes in the kpion
Definition: Zcode.h:2
subroutine cpipluspxsec(e, xs)
Definition: cppXsec.f:87
subroutine cpbarpxsec(e, xs)
Definition: cppXsec.f:53
subroutine ckpluspxsec(e, xs)
Definition: cppXsec.f:121
max ptcl codes in the kbomega
Definition: Zcode.h:2
Here is the call graph for this function: