TABLE OF CONTENTS
- 1. /Coll_BaB
- 1.1. Coll_BaB/iset
- 1.2. Coll_BaB/readInput
- 1.3. Coll_BaB/coll_BaB
- 1.4. Coll_BaB/DoColl_BaB
- 1.5. Coll_BaB/GetBalacedKT
/Coll_BaB [ Modules ]
NAME
module Coll_BaB
PURPOSE
Implement Baryon-AntiBaryon Annihilation (for HiEnergy).
Coll_BaB/iset [ Global module-variables ]
[ Top ] [ Coll_BaB ] [ Global module-variables ]
SOURCE
integer, save :: iset = 1
PURPOSE
Switch to choose an initialization of jets:
- 1: phase space distribution, also the charge is conserved (new prescription)
- 2: first jet along inPart(1) momentum, 3-d jet opposite, others orthogonal, charge is not conserved (old prescription)
Coll_BaB/readInput [ Subroutines ]
[ Top ] [ Coll_BaB ] [ Subroutines ]
NAME
subroutine readInput
PURPOSE
Reads input in jobcard out of namelist "coll_BaB"
Coll_BaB/coll_BaB [ Namelists ]
[ Top ] [ Coll_BaB ] [ Namelists ]
NAME
NAMELIST /coll_BaB/
PURPOSE
Includes the switches:
Coll_BaB/DoColl_BaB [ Subroutines ]
[ Top ] [ Coll_BaB ] [ Subroutines ]
NAME
subroutine DoColl_BaB (inPart, outPart, flagOK, sqrtS, pcm, beta)
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!
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
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.
Coll_BaB/GetBalacedKT [ Subroutines ]
[ Top ] [ Coll_BaB ] [ Subroutines ]
NAME
subroutine GetBalancedKT(kTsquared, v)
PURPOSE
Select 3 transverse momenta vec{kT}_i = (kT_x, kT_y)_i randomly so that for all three |vec{kT}_i| follows a Gauss distribution and additionally all three vectors sum up to zero.
INPUTS
- real :: kTsquared -- width of the distribution
OUTPUT
- real, dimension(3,2) :: v -- the three 2D vectors