TABLE OF CONTENTS
/leptonKinematics [ Modules ]
NAME
module leptonKinematics
PURPOSE
This module includes routines, which deal with kinematics of lepton-nucleon scattering.
leptonKinematics/evaluate_energy_lf [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Evaluates final energy of a lepton
- Either (QSquared, energy_li, W) must be given or (theta_lf, energy_li, W)
- Assumes leptons to be massless
INPUTS
- real, intent (in),optional :: theta_lf -- lepton scattering angle in degrees
- real, intent (in),optional :: energy_li -- initial lepton energy in GeV
- real, intent (in),optional :: W -- center of mass energy at the hadronic vertex assuming resting nucleon
- real, intent (in),optional :: Qsquared -- photon momentum transfer Q^2
NOTES
- ATTENTION: All inputs are optional, so you MUST use identifiers in the call-statement to specify your input! E.g.: x=evaluate_energy_lf (Qsquared=a,energy_li=b,W=c)
OUTPUT
- real :: energy_lf -- final lepton energy
leptonKinematics/evaluate_epsilon [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Evaluates epsilon for given final and initial lepton energy and given lepton scattering angle.
- Assumes leptons to be massless
INPUTS
- real, intent (in) :: theta_lf -- lepton scattering angle in degrees
- real, intent (in) :: energy_li -- initial lepton energy in GeV
- real, intent (in) :: energy_lf -- final lepton energy in GeV
OUTPUT
- real function evaluate_epsilon -- epsilon [dimensionless]
leptonKinematics/evaluate_W [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Evaluates W for given final and initial lepton energy and given lepton scattering angle.
- Assumes resting nucleon and leptons to be massless
INPUTS
- real, intent (in) :: theta_lf -- lepton scattering angle in degrees
- real, intent (in) :: energy_li -- initial lepton energy in GeV
- real, intent (in) :: energy_lf -- final lepton energy in GeV
OUTPUT
- real function evaluate_W -- W in GeV
leptonKinematics/evaluate_QSquared [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Evaluates QSquared for given final and initial lepton energy and given lepton scattering angle.
- Assumes leptons to be massless
INPUTS
- real, intent (in) :: theta_lf -- lepton scattering angle in degrees
- real, intent (in) :: energy_li -- initial lepton energy in GeV
- real, intent (in) :: energy_lf -- final lepton energy in GeV
OUTPUT
- real function evaluate_QSquared -- Q^2 in GeV^2
leptonKinematics/evaluate_theta_lf [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Evaluates lepton scattering angle for given QSquared and given final and initial lepton energy.
- Assumes leptons to be massless
INPUTS
- real, intent (in) :: QSquared -- virtual photon Q^2 in GeV^2
- real, intent (in) :: energy_li -- initial lepton energy in GeV
- real, intent (in) :: energy_lf -- final lepton energy in GeV
OUTPUT
- real function evaluate_theta_lf -- lepton scattering angle in degrees
leptonKinematics/buildElectrons [ Subroutines ]
[ Top ] [ leptonKinematics ] [ Subroutines ]
PURPOSE
- Calculate 4-momenta of an electron pair for given scattering angles theta,phi and given energies energy_in,energy_out. Direction_in denotes a space-vector pointing in the direction of the incoming electron.
INPUTS
- real, intent(in) :: theta_lf [radian],phi_MC [radian],energy_li [GeV],energy_lf [GeV]
- real, dimension(1:3), intent(in) :: direction_in
OUTPUT
- real, dimension(0:4), intent(out) :: p_in, p_out [all in GeV]