TABLE OF CONTENTS
- 1. /Coll_gammaN
/Coll_gammaN [ Modules ]
NAME
module Coll_gammaN
PURPOSE
...
Coll_gammaN/DoColl_gammaN_Py [ Subroutines ]
[ Top ] [ Coll_gammaN ] [ Subroutines ]
NAME
subroutine DoColl_gammaN_Py(eNev,outPart,flagOK, rVMD, DoDifr, Cross,EventClass,MinW)
PURPOSE
generate a high energy Photon event with PYTHIA
INPUTS
- type(electronNucleon_event) :: eNev -- electron nucleon kinematics
- real, dimension(1:4) :: rVMD -- scaling of VMD XS (rho, omega, phi, J/psi)
- logical :: DoDifr -- Do diffractive events or not
- real, OPTIONAL :: minW -- if given, return immediately if W<minW
OUTPUT
- type(particle),dimension(:) :: outPart -- outgoing particles
- real, dimension(0:4) :: Cross -- cross sections for the different event classes VMD, direct, anomalous, DIS and their sum
- integer :: EventClass -- reported class of this event (cf. PYTHIA encoding of events)
- logical :: flagOK -- .TRUE., if everything okay
NOTES
The returned cross section is sigma_T(y,Q^2) + eps * sigma_L(y,Q^2) in mb.
PYTHIA fails primarily below W=2GeV. Therefore it does not make sense to reduce the hard wired cut in this routine. You may increase it with the parameter MinW; if you *REALLY* know what you are doing, you may also decrease it this way, as e.g. for DIS events below W=2GeV.
Coll_gammaN/DoColl_gammaN_Fr [ Subroutines ]
[ Top ] [ Coll_gammaN ] [ Subroutines ]
NAME
subroutine DoColl_gammaN_Fr(inPart,outPart,flagOK, W,Q2,eps, pcm,beta, iTyp)
PURPOSE
generate a high energy Photon event with FRITIOF (=VMD!)
With FRITIOF we can only do VMD events. "iTyp" selects the type of vector meson.
INPUTS
- type(particle) :: inPart -- incoming nucleon
- real :: W -- incoming photon (W)
- real :: Q2 -- incoming photon (Q^2)
- real :: eps -- incoming photon (epsilon)
- real, dimension(0:3) :: pcm -- boost vector
- real, dimension(1:3) :: beta -- boost vector
- integer :: iTyp -- 1:4 = rho, omega, phi, J/Psi
OUTPUT
- type(particle),dimension(:) :: outPart -- outgoing particles
- logical :: flagOK -- .TRUE., if everything okay
NOTES
With Q2=Q^2 > 0 we have a projectile with imaginary mass. The VMD prescription holds for Q^2=0 with m_V=0.
Here, with Q2>0, the mass of the projectile (mass1) can be choosen to be =0 or to be massArr(iTyp) = /0.76850, 0.78194, 1.01940, 3.09688/.
Events of the kind V N -> pi0 pi0 R where both pi0 come from a cluster->2 decay are excluded (by returning "flagOK=.false.")
Coll_gammaN/DoColl_gammaN_Toy [ Subroutines ]
[ Top ] [ Coll_gammaN ] [ Subroutines ]
NAME
subroutine DoColl_gammaN_Toy(eNev,flagOK,outPart)
PURPOSE
generate a high energy Photon event according to a toy model
INPUTS
- type(electronNucleon_event) :: eNev -- electron nucleon kinematics
OUTPUT
- type(particle),dimension(:) :: outPart -- outgoing particles
- logical :: flagOK -- .TRUE., if everything okay
NOTES
- This generates a single pion according to a very simple toy model. There are no conservations: baryon number, energy, momentum etc is violated
* The full glory of "type(electronNucleon_event)" is not used up to now