TABLE OF CONTENTS
- 1. /lowElectron
- 1.1. lowElectron/runType
- 1.2. lowElectron/inputType
- 1.3. lowElectron/theta_lf
- 1.4. lowElectron/phi_lf
- 1.5. lowElectron/QSquared
- 1.6. lowElectron/energy_li
- 1.7. lowElectron/energy_lf
- 1.8. lowElectron/delta_energy_lf
- 1.9. lowElectron/W_min
- 1.10. lowElectron/W_max
- 1.11. lowElectron/energy_lf_min
- 1.12. lowElectron/energy_lf_max
- 1.13. lowElectron/Do_QE
- 1.14. lowElectron/minMass_QE
- 1.15. lowElectron/Do_1Pi
- 1.16. lowElectron/Do_2Pi
- 1.17. lowElectron/Do_DIS
- 1.18. lowElectron/Do_2p2hQE
- 1.19. lowElectron/Do_2p2hDelta
- 1.20. lowElectron/Do_Res
- 1.21. lowElectron/useRes
- 1.22. lowElectron/onlyDelta
- 1.23. lowElectron/nuclearTarget_corr
- 1.24. lowElectron/minEnergy_1pi
- 1.25. lowElectron/low_Ele_incXsection
- 1.26. lowElectron/init_lowElectron
- 1.27. lowElectron/lowElectron_protocol.log
- 1.28. lowElectron/originXS.dat
- 1.29. lowElectron/le_get_energy_lf
- 1.30. lowElectron/le_get_energy_li
- 1.31. lowElectron/le_get_theta_lf
- 1.32. lowElectron/initInput
- 1.33. lowElectron/LowElectron
- 1.34. lowElectron/resetFirstEvent
- 1.35. lowElectron/getFirstEvent
- 1.36. lowElectron/le_get_FirstEventRange
- 1.37. lowElectron/le_get_QSquared
- 1.38. lowElectron/writeOriginXS
/lowElectron [ Modules ]
NAME
module lowElectron
PURPOSE
This module includes a initilization routine for low energetic electron induced events (Resonance region)
INPUTS
The Namelist "LowElectron" in the Jobcard.
lowElectron/runType [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
integer, save :: runType=1
PURPOSE
- If runType=1, then we make runs at some fixed angle defined by lowElectron/theta_lf.
- If runType=2, then we make runs at some fixed QSquared defined by lowElectron/QSquared
lowElectron/inputType [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
integer, save :: inputType=1
PURPOSE
Decides which set of variables is used to determine the final electron energy energy_lf and the step size delta_energy_lf:
- If inputType=1, then we use directly energy_lf and delta_energy_lf as input
- If inputType=2, then we use W_min and W_max as input. For this we assume the nucleon to be at rest to calculate energy_lf out of W.
- If inputType=3, then we use energy_lf_min and energy_lf_max as input.
lowElectron/theta_lf [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: theta_lf=10.
PURPOSE
Theta scattering angle of outgoing electron with respect to the incoming one. Only relevant of runType=1.
lowElectron/phi_lf [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: phi_lf=-10.
PURPOSE
Phi scattering angle of outgoing electron with respect to the incoming one. If less than 0, then we do a Monte-Carlo-Integration over phi!
lowElectron/QSquared [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: QSquared=0.5
PURPOSE
QSquared of virtual photon. Only relevant of runType=2.
lowElectron/energy_li [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: energy_li=1.2
PURPOSE
Energy of incoming electron in GeV.
lowElectron/energy_lf [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: energy_lf=0.8
PURPOSE
Energy of final state electron in GeV. * Only used if inputType=1
lowElectron/delta_energy_lf [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: delta_energy_lf=0.8
PURPOSE
delta(Energy) of final state electron in GeV for energy scans. * Only used if inputType=1
lowElectron/W_min [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: W_min=0.9
PURPOSE
Minimal W at the hadronic vertex assuming a resting nucleon * Only used if inputType=2
lowElectron/W_max [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: W_max=1.9
PURPOSE
Maximal W at the hadronic vertex assuming a resting nucleon * Only used if inputType=2
lowElectron/energy_lf_min [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: energy_lf_min=0.1
PURPOSE
Minimal energy_lf * Only used if inputType=3
lowElectron/energy_lf_max [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: energy_lf_max=0.1
PURPOSE
Maximal energy_lf * Only used if inputType=3
lowElectron/Do_QE [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_QE=.true.
PURPOSE
Switch for including or excluding Quasi-Elastic (QE) processes
lowElectron/minMass_QE [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real,save :: minMass_QE=0.3
PURPOSE
Minimal mass of a nucleon in QE event. Prevents super-luminous nucleons when embedded in a Skyrme potential.
lowElectron/Do_1Pi [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_1Pi=.true.
PURPOSE
Switch for including or excluding direct Single pion production processes. If the resonances are included (Do_Res=.true.) then only the background part is included.
lowElectron/Do_2Pi [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_2Pi=.true.
PURPOSE
Switch for including or excluding direct Double pion production processes. If the resonances are included (Do_Res=.true.) then only the background part is included.
lowElectron/Do_DIS [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_DIS=.true.
PURPOSE
Switch for including or excluding deeply inelastic scattering (DIS) events. Only relevant for W>1.4-1.5 GeV.
lowElectron/Do_2p2hQE [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_2p2hQE=.false.
PURPOSE
Switch for including or excluding event according gamma* N1 N2 -> N1' N2'
lowElectron/Do_2p2hDelta [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_2p2hDelta=.false.
PURPOSE
Switch for including or excluding event according gamma* N1 N2 -> N' Delta
lowElectron/Do_Res [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: Do_Res=.true.
PURPOSE
Switch for including or excluding resonance production processes
lowElectron/useRes [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save,dimension(2:nres+1) :: useRes=.true.
PURPOSE
Switch for including/excluding specific resonances
lowElectron/onlyDelta [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical,save :: onlyDelta=.false.
PURPOSE
Switch for including only delta resonance
lowElectron/nuclearTarget_corr [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
logical , save :: nuclearTarget_corr=.true.
PURPOSE
- If the input is a nuclear targer, then the target nucleus is at rest and we calculate the cross section for nuclear target: use flux with respect to the nucleus.
- Use .false. only for debugging.
lowElectron/minEnergy_1pi [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real, save :: minEnergy_1pi=0.16
PURPOSE
Minimal q_0 such that pion production processes are considered.
lowElectron/low_Ele_incXsection [ Global module-variables ]
[ Top ] [ lowElectron ] [ Global module-variables ]
SOURCE
real, save :: low_Ele_incXsection = 0
PURPOSE
Collects at event generagtion the inclusive cross section for each run, which can then be easily processed by analysis routines
lowElectron/init_lowElectron [ Subroutines ]
[ Top ] [ lowElectron ] [ Subroutines ]
NAME
subroutine init_lowElectron(realParticles,pertParticles,raiseEnergy,targetNuc)
PURPOSE
Initializes e^- A events.
INPUTS
- logical :: raiseEnergy -- if true than we increase energy_lf by delta_energy_lf
- type(particle), dimension(:,:) :: realParticles -- real particle vector
- type(particle), dimension(:,:) :: pertParticles -- perturbative particle vector
- type(tNucleus), pointer :: targetNuc -- target Nucleus
OUPTUT * type(particle), dimension(:,:) :: pertParticles -- perturbative particle vector
lowElectron/lowElectron_protocol.log [ Output files ]
[ Top ] [ lowElectron ] [ Output files ]
NAME
file lowElectron_protocol.log
PURPOSE
Logs the kinematics being used in the electron nucleus initialization
lowElectron/originXS.dat [ Output files ]
[ Top ] [ lowElectron ] [ Output files ]
NAME
file originXS.dat
PURPOSE
cross section seperated according origin, see Electron_origin.f90
given vales are 1/A d\sigma/dE´d\Omega given in mb/sr GeV
lowElectron/le_get_energy_lf [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
real function le_get_energy_lf()
PURPOSE
Returns energy_lf
lowElectron/le_get_energy_li [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
real function le_get_energy_li()
PURPOSE
Returns energy_li
lowElectron/le_get_theta_lf [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
real function le_get_theta_lf()
PURPOSE
Returns theta_lf
lowElectron/initInput [ Subroutines ]
[ Top ] [ lowElectron ] [ Subroutines ]
NAME
subroutine initInput
PURPOSE
Reads in job card and checks the settings of the input parameters.
lowElectron/LowElectron [ Namelists ]
[ Top ] [ lowElectron ] [ Namelists ]
NAME
NAMELIST /LowElectron/
PURPOSE
This Namelist includes:
- runType
- inputType
- theta_lf
- phi_lf
- energy_li
- energy_lf
- energy_lf_min
- energy_lf_max
- delta_energy_lf
- W_min
- W_max
- QSquared
- Do_QE
- Do_1Pi
- Do_Res
- Do_2Pi
- Do_DIS
- Do_2p2hQE
- Do_2p2hDelta
- minMass_QE
- minEnergy_1pi
- onlyDelta
- nuclearTarget_corr
NOTES
For runType=1 (fixed angle):
- real,save :: theta_lf
For runType=2 (fixed Qsquared):
- real,save :: QSquared
For inputType=1 (energy_lf as input, fixed step size):
- real,save :: energy_li
- real,save :: energy_lf
- real,save :: delta_energy_lf
- real,save :: W_min
- real,save :: W_max
- real,save :: delta_energy_lf
For inputType=3 (Energy_lf as input, step size according to number of runs):
- real,save :: energy_lf_min
- real,save :: energy_lf_max
For Quasi-elastic scattering:
For Pion production:
For Resonance excitations:
For 2Pi background:
For DIS events:
For 2p2h excitations:
Technical issues:
lowElectron/resetFirstEvent [ Subroutines ]
[ Top ] [ lowElectron ] [ Subroutines ]
NAME
subroutine resetFirstEvent
PURPOSE
Resets the firstEvent counter to zero when starting a new run.
lowElectron/getFirstEvent [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
integer function getFirstEvent()
PURPOSE
Each event gets another entry in %firstEvent. This function is used to set firstEvent.
lowElectron/le_get_FirstEventRange [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
function le_get_FirstEventRange()
PURPOSE
Each event gets another entry in %firstEvent. This entry is an integer value between 1 and number of events. This function returns the upper and lower limits of the range of %firstEvent.
OUTPUT
integer, dimension (1:2) :: getFirstEventRange
lowElectron/le_get_QSquared [ Functions ]
[ Top ] [ lowElectron ] [ Functions ]
NAME
real function le_get_Qsquared()
PURPOSE
Return the Q^2 value of the electron
OUTPUT
real :: le_get_QSquared()
lowElectron/writeOriginXS [ Subroutines ]
[ Top ] [ lowElectron ] [ Subroutines ]
NAME
subroutine writeOriginXS
PURPOSE
write line to file 'originXS.dat'