COSMOS v7.655  COSMOSv7655
(AirShowerMC)
cxpXsec.f
Go to the documentation of this file.
1 ! ***********************************************************
2 ! *
3 ! * cxpXsec: get xsection for proton target.
4 ! *
5 !
6  subroutine cxpxsec(pj, xs)
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
61  end
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
subroutine cxpxsec(pj, xs)
Definition: cxpXsec.f:7
max ptcl codes in the kkaon
Definition: Zcode.h:2
max ptcl codes in the komega
Definition: Zcode.h:2
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
********************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