TABLE OF CONTENTS
- 1. /neutrinoXsection
- 1.1. neutrinoXsection/debugflag
- 1.2. neutrinoXsection/nuclear_phasespace
- 1.3. neutrinoXsection/singlePiModel
- 1.4. neutrinoXsection/invariantMassCut
- 1.5. neutrinoXsection/invariantMassCut_BG
- 1.6. neutrinoXsection/DIScutW
- 1.7. neutrinoXsection/DIScutwidth
- 1.8. neutrinoXsection/REScutW
- 1.9. neutrinoXsection/Q2cutoff
- 1.10. neutrinoXsection/DISformfakEM
- 1.11. neutrinoXsection/DISformfakNCCC
- 1.12. neutrinoXsection/mcutDIS
- 1.13. neutrinoXsection/DISrespectHad
- 1.14. neutrinoXsection/DISdoMSTP23
- 1.15. neutrinoXsection/new2piBG
- 1.16. neutrinoXsection/indBG
- 1.17. neutrinoXsection/readinput
- 1.18. neutrinoXsection/nl_neutrinoxsection
- 1.19. neutrinoXsection/XsecdCosthetadElepton
- 1.20. neutrinoXsection/SetHadronCharge
- 1.21. neutrinoXsection/get_xsection_namelist
/neutrinoXsection [ Modules ]
NAME
module neutrinoXsection
PURPOSE
This module calculates various neutrino cross sections, depending on the choice of the user:
- integrated or differential or double differential cross sections (according to the value of nuXsectionmode, the corresponding subroutines are called in the neutrino init file)
- EM, CC or NC (according to the value of process_ID given as input to the corresponding subroutines)
- muon, electron or tau flavor (according to the value of flavor_ID given as input to the corresponding subroutines)
neutrinoXsection/debugflag [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, parameter :: debugflag=.false.
PURPOSE
to switch on/off debug information
neutrinoXsection/nuclear_phasespace [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, parameter :: nuclear_phasespace=.true.
PURPOSE
to change between different phasespace factors. (change only for debugging purposes):
- .false. = 1/SP(k_in,p_in) i.e. phasespace factor for each nucleon
- .true. = 1/k_in(0)*p_in(0) i.e. global phasespace factor for the nucleus
neutrinoXsection/singlePiModel [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
integer, save :: singlePiModel=1
PURPOSE
to change between different models for the pion nucleon cross section:
- 0 = pi N according to Nieves et al (hep-ph/0701149)
- 1 = MAID-like model
- 2 = Bosted-Christy
neutrinoXsection/invariantMassCut [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: invariantMassCut=100.
PURPOSE
cut events with invariant Mass above this value (in GeV); cut pion production from Delta and DIS on Wrec = Sqrt[M^2 + 2*M*nu - Q^2]
neutrinoXsection/invariantMassCut_BG [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: invariantMassCut_BG=100.
PURPOSE
cut MAID-like background events with invariantMass_BG above this value (in GeV); cut 1pi BG on Wrec = Sqrt[M^2 + 2*M*nu - Q^2]
neutrinoXsection/DIScutW [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: DIScutW = 2.9
PURPOSE
W-cut for sigmoid onset of DIS
neutrinoXsection/DIScutwidth [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: DIScutwidth = 0.05
PURPOSE
width for sigmoid onset of DIS
neutrinoXsection/REScutW [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: REScutW = 2.0
PURPOSE
W-cut for end of 1pi,2pi BGs
neutrinoXsection/Q2cutoff [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, save :: Q2cutoff = .true.
PURPOSE
cuts low Q^2 for W > 3 GeV
neutrinoXsection/DISformfakEM [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
integer,save :: DISformfakEM = 2
PURPOSE
Introduce an additional form factor for the DIS cross section, when processed via a photon:
In case of electron induced events, we need choose 2 in order to be compatible with Pythia's electron machinery.
neutrinoXsection/DISformfakNCCC [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
integer,save :: DISformfakNCCC = 1
PURPOSE
Introduce an additional form factor for the DIS cross section, when processed via W or Z boson:
In case of electron induced events, we need choose 2 in order to be compatible with Pythia's electron machinery.
neutrinoXsection/mcutDIS [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
real, save :: mcutDIS = 0.34
PURPOSE
parameter to control Q^2 dependence of DIS
neutrinoXsection/DISrespectHad [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, save :: DISrespectHad = .true.
PURPOSE
Flag to indicate, whether hadronization failures should be respected and affect the overall DIS cross section
Pythia is run to generate the DIS cross section. But not every of the generated events may lead to a correct hadronic final state.
neutrinoXsection/DISdoMSTP23 [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, save :: DISdoMSTP23 = .true.
PURPOSE
Flag to indicate, whether in Pythia for neutrino-DIS the value MSTP(23)=1 should be used or not
neutrinoXsection/new2piBG [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
logical, save :: new2piBG = .true.
PURPOSE
Flag to turn on the new treatment of 2pi BG for electrons and neutrinos
neutrinoXsection/indBG [ Global module-variables ]
[ Top ] [ neutrinoXsection ] [ Global module-variables ]
SOURCE
integer, save :: indBG = 3
PURPOSE
Index to choose Bloom-Gilman like BG parametrization 1 : original Bloom Gilman 2 : Niculescu fit 3 : nonresonant BG fit from Christy-Bosted
neutrinoXsection/readinput [ Subroutines ]
[ Top ] [ neutrinoXsection ] [ Subroutines ]
NAME
subroutine readinput
PURPOSE
This subroutine reads input out of jobcard.
neutrinoXsection/nl_neutrinoxsection [ Namelists ]
[ Top ] [ neutrinoXsection ] [ Namelists ]
NAME
NAMELIST /nl_neutrinoxsection/
PURPOSE
This Namelist includes:
- singlePiModel
- invariantMassCut
- invariantMassCut_BG
- DIScutW
- DIScutwidth
- REScutW
- Q2cutoff
- DISformfakEM
- DISformfakNCCC
- mcutDIS
- DISrespectHad
- DISdoMSTP23
- new2piBG
- indBG
neutrinoXsection/XsecdCosthetadElepton [ Subroutines ]
[ Top ] [ neutrinoXsection ] [ Subroutines ]
NAME
subroutine XsecdCosthetadElepton(eNev,IP,OutPart,sig)
PURPOSE
This subroutine is the basic subroutine, which does all the job of calculating the cross section dSigma/dCost dElepton and generating a corresponding final state particle vector.
This routine is called by all routines called "Xsec_...".
INPUTS
- type(electronNucleon_event) :: eNev -- the Lepton-Nucleon Event
- integer :: IP -- ID of outgoing hadron/process
OUTPUT
- type(electronNucleon_event) :: eNev -- the Lepton-Nucleon Event
- type(particle), dimension(:) :: OutPart -- FinalState particles
- real :: sig -- calculated cross section
NOTES
For the outgoing particles OutPart, the following entries have to be set afterwards:
- OutPart%firstEvent
- OutPart%event(1:2)
- OutPart%pert
- OutPart%vel
- OutPart%offshellPar
- OutPart%perweight
All the other values are set in this routine.
Returned cross section is in 10^-38 cm^2/GeV, except for EM, where the units are nb/GeV
neutrinoXsection/SetHadronCharge [ Functions ]
[ Top ] [ neutrinoXsection ] [ Functions ]
NAME
logical function SetHadronCharge(eNev,IP,Q_R,Q_pi)
PURPOSE
This function sets the charge of the outgoing hadrons depending on the reaction process. If successful, SetHadronCharge=.true., if not (when the reaction is not possible) SetHadronCharge=.false.
INPUTS
- type(electronNucleon_event) :: eNev -- the Lepton-Nucleon Event
- integer :: IP -- ID of reaction
OUTPUT
- integer :: Q_R -- charge of outgoing baryon
- integer :: Q_pi -- charge of outgoing pion
- function value -- indicates possible failures
neutrinoXsection/get_xsection_namelist [ Subroutines ]
[ Top ] [ neutrinoXsection ] [ Subroutines ]
NAME
subroutine get_xsection_namelist(XsectionMode, ...)
PURPOSE
This subroutine returns variables that are set in the according xsection namelist.
INPUTS:
- integer, optional :: XsectionMode
OUTPUT
- logical,optional :: Gdebugflag
- logical,optional :: Gnuclear_phasespace
- integer,optional :: GsinglePiModel
- integer,optional :: GintegralPrecision
- integer,optional :: GintegralPrecisionQE
- real,optional :: Genu
- real,optional :: Gdelta_enu
- real,optional :: GQs
- real,optional :: Gdelta_Qs
- real,optional :: Gcostheta,
- real,optional :: Gdelta_costheta
- real,optional :: Gelepton
- real,optional :: Gdelta_elepton
- real,optional :: GinvariantMasscut