TABLE OF CONTENTS
- 1. /eventGenerator_eN_HiEnergy
- 1.1. eventGenerator_eN_HiEnergy/DoDiffr
- 1.2. eventGenerator_eN_HiEnergy/useVMD_VM
- 1.3. eventGenerator_eN_HiEnergy/DoLowEv
- 1.4. eventGenerator_eN_HiEnergy/DoTransEv
- 1.5. eventGenerator_eN_HiEnergy/useHermesPythiaPars
- 1.6. eventGenerator_eN_HiEnergy/PYTHIAthresh
- 1.7. eventGenerator_eN_HiEnergy/DoToyModel_pi
- 1.8. eventGenerator_eN_HiEnergy/DoToyModel_rho
- 1.9. eventGenerator_eN_HiEnergy/UseFormTime_ToyModel_rho
- 1.10. eventGenerator_eN_HiEnergy/HighEnergyThreshold
- 1.11. eventGenerator_eN_HiEnergy/useRes
- 1.12. eventGenerator_eN_HiEnergy/allowRes
- 1.13. eventGenerator_eN_HiEnergy/allow1pi
- 1.14. eventGenerator_eN_HiEnergy/allow2piBack
- 1.15. eventGenerator_eN_HiEnergy/allowDIS
- 1.16. eventGenerator_eN_HiEnergy/allowVMDrho
- 1.17. eventGenerator_eN_HiEnergy/allow2p2hQE
- 1.18. eventGenerator_eN_HiEnergy/allow2p2hDelta
- 1.19. eventGenerator_eN_HiEnergy/DoExclPiModel
- 1.20. eventGenerator_eN_HiEnergy/ExclPiCharge
- 1.21. eventGenerator_eN_HiEnergy/flagTwoJets
- 1.22. eventGenerator_eN_HiEnergy/ReadHiGammaNucleus
- 1.23. eventGenerator_eN_HiEnergy/HiGammaNucleus
- 1.24. eventGenerator_eN_HiEnergy/eventGen_eN_HiEnergy
/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/allow2p2hQE [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allow2p2hQE=.false.
PURPOSE
Switch for including/excluding the 2p2h QE contribution
eventGenerator_eN_HiEnergy/allow2p2hDelta [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: allow2p2hDelta=.false.
PURPOSE
Switch for including/excluding the 2p2h Delta 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/flagTwoJets [ Global module-variables ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Global module-variables ]
SOURCE
logical,save :: flagTwoJets=.false.
PURPOSE
If .true. - the events without two jets with large transverse momentum are marked with XS_tot=100000 mub.
eventGenerator_eN_HiEnergy/ReadHiGammaNucleus [ Subroutines ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Subroutines ]
NAME
subroutine ReadHiGammaNucleus
PURPOSE
read the namelist HiGammaNucleus
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
- useRes
- allowRes
- allow1pi
- allow2piBack
- allowDIS
- allowVMDrho
- DoToyModel_pi
- DoToyModel_rho
- UseFormTime_ToyModel_rho
- DoExclPiModel
- ExclPiCharge
- flagTwoJets
eventGenerator_eN_HiEnergy/eventGen_eN_HiEnergy [ Subroutines ]
[ Top ] [ eventGenerator_eN_HiEnergy ] [ Subroutines ]
NAME
subroutine eventGen_eN_HiEnergy(eNev,firstevent,scaleVMD, DoPauli,realparticles, OutPart,channel,FlagOK,XS_tot,XS_Arr,XS_Arr_low)
PURPOSE
This is the main routine for generating high energy electron nucleon events
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)
- logical :: DoPauli -- if .true., every event is checked for pauli blocking. if it is blocked, the corresponding cross section will be set to 0 and the Monte Carlo decision will neglect this event class. Thus the total cross section is reduced. Maybe all channel can be closed.
- type(particle),dimension(:,:) :: realParticles -- real particle vector, only needed for pauli blocking
OUTPUT
- integer :: channel -- Chosen Channel
- type(particle), dimension(:) :: OutPart -- Final State particle vector
- logical :: FlagOK -- .true. if event successfull
- real :: XS_tot -- total cross section (in mb)
- real, dimension(0:4),OPTIONAL :: XS_Arr -- cross sections of different channels
- real, dimension(nc),OPTIONAL :: XS_Arr_low -- cross sections of different low energy channels
NOTES
- The returned Cross Section is (x is lightcone-x, not Bjorken-x!) dsigma/(fT dx dQ2 dphi)|_(phi=0) = dsigma/(2 pi fT dx dQ2) and the units are mb
- Comparison with Bosted parametrisation shows, that the values correspond to their definition of the flux, \sigma^* = \sigma_T+\epsilon\sigma_L = \frac{1}{\Gamma} \frac{d\sigma}{dE' d\Omega} with \gamma = \frac{\alpha E (W^2-M^2)}{(2\pi)^2 Q^2 M E (1-\epsilon)} Thus, \sigma^* differs by a factor 2\pi from the definitions (C.36) in the GiBUU paper. Thus, curves in Fig. C.64 are a factor 2\pi too high, if one asumes eq.(C.63) to hold.