gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/Coll_gammaN [ Modules ]

[ Top ] [ 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.

This follows the definitions of Christy&Bosted, so one has to multiply this returned cross section with

   \alpha/(2\pi) K/(Q^2 \nu^2) (E E')/\pi cT

with cT ~ 1+(1-y)^2 in order to get the value of

   d\sigma/(dE'd\cos\theta) in mb/GeV

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

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