TABLE OF CONTENTS
- 1. /eventGenerator_eN_HiEnergy
- 1.1. eventGenerator_eN_HiEnergy/HiGammaNucleus
- 1.2. eventGenerator_eN_HiEnergy/DoDiffr
- 1.3. eventGenerator_eN_HiEnergy/useVMD_VM
- 1.4. eventGenerator_eN_HiEnergy/DoLowEv
- 1.5. eventGenerator_eN_HiEnergy/DoTransEv
- 1.6. eventGenerator_eN_HiEnergy/useHermesPythiaPars
- 1.7. eventGenerator_eN_HiEnergy/PYTHIAthresh
- 1.8. eventGenerator_eN_HiEnergy/DoToyModel_pi
- 1.9. eventGenerator_eN_HiEnergy/DoToyModel_rho
- 1.10. eventGenerator_eN_HiEnergy/UseFormTime_ToyModel_rho
- 1.11. eventGenerator_eN_HiEnergy/HighEnergyThreshold
- 1.12. eventGenerator_eN_HiEnergy/useRes
- 1.13. eventGenerator_eN_HiEnergy/allowRes
- 1.14. eventGenerator_eN_HiEnergy/allow1pi
- 1.15. eventGenerator_eN_HiEnergy/allow2piBack
- 1.16. eventGenerator_eN_HiEnergy/allowDIS
- 1.17. eventGenerator_eN_HiEnergy/allowVMDrho
- 1.18. eventGenerator_eN_HiEnergy/DoExclPiModel
- 1.19. eventGenerator_eN_HiEnergy/ExclPiCharge
- 1.20. eventGenerator_eN_HiEnergy/ReadHiGammaNucleus
- 1.21. eventGenerator_eN_HiEnergy/eventGen_eN_HiEnergy
eventGenerator_eN_HiEnergy/HiGammaNucleus [ Namelists ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Namelists ]
PURPOSE
This namelist combines values which are used by "HiLepton" and "HiPhoton". It includes:
- DoLowEv
- DoTransEv
- useHermesPythiaPars
- DoDiffr
- PYTHIAthresh
- useVMD_VM
- DoToyModel_pi
- DoToyModel_rho
- useRes
- allowRes
- allow1pi
- allow2piBack
- allowDIS
- allowVMDrho
/eventGenerator_eN_HiEnergy [ Modules ]
NAME
module eventGenerator_eN_HiEnergy
PURPOSE
This module includes initilization routines for high energetic electron induced events
eventGenerator_eN_HiEnergy/DoDiffr [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoDiffr=.true.
PURPOSE
flag: Generate diffractive events
eventGenerator_eN_HiEnergy/useVMD_VM [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,dimension(4),save :: useVMD_VM = .true.
PURPOSE
These flags can be used to switch on/off some VM in the VMD description of the events generated by "transitionevent"
NOTES
- The VMD events of PYTHIA are not affected. (We could change this!)
eventGenerator_eN_HiEnergy/DoLowEv [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoLowEv=.true.
PURPOSE
If this flag is set true, then for W_free<HighEnergyThreshold we will call the low energy model routines.
eventGenerator_eN_HiEnergy/DoTransEv [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoTransEv=.false.
PURPOSE
flag: use transitionEvent in order to replace PYTHIA events by events where we give the cross section explicitely and do the remaining stuff by FRITIOF
NOTES
this replaces the flag "FRITIOF" in the namelists "HiLeptonNucleus" and "HiPhotonNucleus"
eventGenerator_eN_HiEnergy/useHermesPythiaPars [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: useHermesPythiaPars=.false.
PURPOSE
flag: Use "PYTHIA tuning done by HERMES collab"
eventGenerator_eN_HiEnergy/PYTHIAthresh [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
real, save :: PYTHIAthresh=2.0
PURPOSE
Below this value for W, PYTHIA is not used to generate (G)VMD events
NOTES
This value is transferred to PyVP.f. you can access this value by the function "GetPYTHIAthresh()".
eventGenerator_eN_HiEnergy/DoToyModel_pi [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoToyModel_pi=.false.
PURPOSE
flag: Use a Toy model instead of realistic event generation. Only a single pion is generated
eventGenerator_eN_HiEnergy/DoToyModel_rho [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoToyModel_rho=.false.
PURPOSE
flag: Use a Toy model instead of realistic event generation Only rho0 N events are generated.
Additional assumptions: (c.f.UseFormTime_ToyModel_rho) * tau_F = 0 * tau_F = m with t_F = E (boost according E/m, not E_string/M_string)
In the latter case we suffer also the following simplifications:
- no Q2 dependance
- XS starts with n_L/n = 0.5 (should be 0.66 for the nucleon)
eventGenerator_eN_HiEnergy/UseFormTime_ToyModel_rho [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: UseFormTime_ToyModel_rho=.false.
PURPOSE
flag: if .true., we set the formation times of the particles produced in the ToyModel_rho equals to the energy of the particle (t_f/fm=E/GeV) representing the assumption tau_f/fm = m/GeV plus a boost according E/m. (Otherwise the formation time is set to zero.)
eventGenerator_eN_HiEnergy/HighEnergyThreshold [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
real,parameter :: HighEnergyThreshold=2.0
PURPOSE
flag: minimal free energy, where HiEnergy routine should be called
eventGenerator_eN_HiEnergy/useRes [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save,dimension(2:nres+1) :: useRes=.true.
PURPOSE
Switch for including/excluding specific resonances
eventGenerator_eN_HiEnergy/allowRes [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allowRes=.true.
PURPOSE
Switch for including/excluding resonance contribution.
If this is set to .true., 1pion events will just be generated as for the background, but according the full MAID cross section (if at all)
eventGenerator_eN_HiEnergy/allow1pi [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allow1pi=.true.
PURPOSE
Switch for including/excluding 1pion contribution.
Depending on the switch allowRes, 1 pion events will be done according the full cross section or just as a background.
eventGenerator_eN_HiEnergy/allow2piBack [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allow2piBack=.true.
PURPOSE
Switch for including/excluding additional 2pion background.
eventGenerator_eN_HiEnergy/allowDIS [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allowDIS=.true.
PURPOSE
Switch for including/excluding DIS contribution
eventGenerator_eN_HiEnergy/allowVMDrho [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allowVMDrho=.true.
PURPOSE
Switch for including/excluding the VMD gamma N -> rho0 N contribution
eventGenerator_eN_HiEnergy/DoExclPiModel [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: DoExclPiModel=.false.
PURPOSE
flag: Use a model for exclusive pion production. Only those events are generated
eventGenerator_eN_HiEnergy/ExclPiCharge [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
integer,save :: ExclPiCharge = 1
PURPOSE
variable to specify the charge of the pion produced, if DoExclPiModel is selected
eventGenerator_eN_HiEnergy/ReadHiGammaNucleus [ Subroutines ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Subroutines ]
NAME
subroutine ReadHiGammaNucleus
PURPOSE
read the namelist HiGammaNucleus
eventGenerator_eN_HiEnergy/eventGen_eN_HiEnergy [ Subroutines ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Subroutines ]
NAME
subroutine eventGen_eN_HiEnergy(eNev,firstevent,scaleVMD,OutPart,channel,FlagOK,XS_tot,XS_Arr)
PURPOSE
This is the main routine for generating a high energy electron nucleon event.
INPUTS
- type(electronNucleon_event) :: eNev -- electron nucleon kinematics
- integer :: firstevent -- number to give in the outpart vector
- real, dimension(1:4) :: scaleVMD -- scaling of VMD XS (rho, omega, phi, J/psi)
OUTPUT
- integer :: channel -- Chosen Channel
- type(particle), dimension(:) :: OutPart -- Final State particle vector
- logical :: FlagOK -- .true. if event was successfull
- real :: XS_Tot -- total cross section (in mb)
- real, dimension(0:4),OPTIONAL :: XS_Arr -- cross sections of different channels
NOTES
- The returned Cross Section is (x not Bjorken x!) dsigma/(fT dx dQ2 dphi)|_(phi=0) = dsigma/(2 pi fT dx dQ2) and the units are mb