TABLE OF CONTENTS
/Coll_ChEx [ Modules ]
PURPOSE
Implement a + b -> X elastic processes/reactions (for the HiEnergy part) by doing a charge exchange.
Coll_Elastic/DoColl_ChEx [ Subroutines ]
[ Top ] [ Coll_Elastic ] [ Subroutines ]
NAME
subroutine DoColl_ChEx(inPart,outPart,flagOK,sqrtS,pcm,beta,AngDist)
PURPOSE
Perform a collision of particles given in "inPart" with energy "sqrtS" and return outgoing particles in "outPart".
"pcm" and "beta" are vectors used for Boost and Rotation of the event.
if "flagOK" is false, no event happened, the output in "outPart" should be neglected!
Different angular (tSlope) distributions are possible:
- isotropic
- tSlope_EL_pbarp(sqrts) --- for pbar p elastic scattering from L.A. Kondratyuk and M.G. Sapozhnikov, Sov. J. Nucl. Phys. 46, 56 (1987).
- tSlope_CEX_pbarp(sqrts) --- for pbar p --> nbar n charge exchange parameterization of available HEP data at plab=0.7-35 GeV/c by A.L.
INPUTS
- type(particle),dimension(:) :: inPart -- incoming particles
- real :: sqrtS -- energy of ollision
- real, dimension(0:3) :: pcm -- boost-vector
- real, dimension(1:3) :: beta -- boost vector
- integer, :: AngDist -- angular distribution
OUTPUT
- type(particle),dimension(:) :: outPart ! outgoing particles
- logical :: flagOK ! event okay ?
NOTES
cf. DoColl_Pythia
in order to understand the meaning of "pcm" and "beta": The (Pythia-)event is done in the restframe of the two given particles. Then a call to PYROBO according
phi = atan2(pcm(2),pcm(1)) theta = atan2(sqrt(pcm(1)**2+pcm(2)**2),pcm(3)) call PYROBO(1,N, theta,phi, beta(1),beta(2),beta(3))
is performed in order to transform the system into the desired (Lab-) system.