GENIEGenerator
Loading...
Searching...
No Matches
QPMDMDISPXSec.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::QPMDMDISPXSec
5
6\brief Computes DMDIS differential cross sections.
7 Is a concrete implementation of the XSecAlgorithmI interface.
8
9\ref E.A.Paschos and J.Y.Yu, Phys.Rev.D 65.03300
10
11\author Joshua Berger <jberger \at physics.wisc.edu
12 University of Wisconsin-Madison
13
14 Costas Andreopoulos <c.andreopoulos \at cern.ch>
15 University of Liverpool
16
17\created September 4, 2017
18
19\cpright Copyright (c) 2003-2025, The GENIE Collaboration
20 For the full text of the license visit http://copyright.genie-mc.org
21
22*/
23//____________________________________________________________________________
24
25#ifndef _DMDIS_PARTON_MODEL_PARTIAL_XSEC_H_
26#define _DMDIS_PARTON_MODEL_PARTIAL_XSEC_H_
27
30
31namespace genie {
32
34class HadronizationModelI;
35class XSecIntegratorI;
36
38
39public:
41 QPMDMDISPXSec(string config);
42 virtual ~QPMDMDISPXSec();
43
44 // XSecAlgorithmI interface implementation
45 double XSec (const Interaction * i, KinePhaseSpace_t k) const;
46 double Integral (const Interaction * i) const;
47 bool ValidProcess (const Interaction * i) const;
48
49 // overload the Algorithm::Configure() methods to load private data
50 // members from configuration options
51 void Configure(const Registry & config);
52 void Configure(string config);
53
54private:
55 void LoadConfig (void);
56 double DMDISRESJoinSuppressionFactor (const Interaction * in) const;
57
60
61 const DISStructureFuncModelI * fDISSFModel; ///< SF model
62 const HadronizationModelI * fHadronizationModel; ///< hadronic multip. model
63 const XSecIntegratorI * fXSecIntegrator; ///< diff. xsec integrator
64
66
67 bool fUsingDisResJoin; ///< use a DMDIS/RES joining scheme?
68 bool fUseCache; ///< cache reduction factors used in joining scheme
69 double fWcut; ///< apply DMDIS/RES joining scheme < Wcut
70 double fCCScale; ///< cross section scaling factor for CC processes
71 double fNCScale; ///< cross section scaling factor for NC processes
72 double fEMScale; ///< cross section scaling factor for EM processes
73 double fSin48w; ///< sin^4(Weingberg angle)
74 int fVelMode; ///< velcoity dependence for xsec
75 double fMedMass; ///< Mediator mass
76 double fgzp; ///< Coupling to the mediator Zprime
77 double fQchiL; ///< Left-handed DM charge
78 double fQchiR; ///< Right-handed DM charge
79 double fQchiS; ///< Scalar DM charge
80};
81
82} // genie namespace
83#endif // _DMDIS_PARTON_MODEL_PARTIAL_XSEC_H_
Pure Abstract Base Class. Defines the DISStructureFuncModelI interface to be implemented by any algor...
A class holding Deep Inelastic Scattering (DIS) Form Factors (invariant structure funstions)
Summary information for an interaction.
Definition Interaction.h:56
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
double fSin48w
sin^4(Weingberg angle)
bool fUsingDisResJoin
use a DMDIS/RES joining scheme?
double fEMScale
cross section scaling factor for EM processes
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double fQchiL
Left-handed DM charge.
const XSecIntegratorI * fXSecIntegrator
diff. xsec integrator
double Integral(const Interaction *i) const
DISStructureFunc fDISSF
const HadronizationModelI * fHadronizationModel
hadronic multip. model
int fVelMode
velcoity dependence for xsec
double fNCScale
cross section scaling factor for NC processes
double fgzp
Coupling to the mediator Zprime.
double fQchiR
Right-handed DM charge.
double fQchiS
Scalar DM charge.
double fMedMass
Mediator mass.
double fCCScale
cross section scaling factor for CC processes
const DISStructureFuncModelI * fDISSFModel
SF model.
const XSecAlgorithmI * fCharmProdModel
bool fUseCache
cache reduction factors used in joining scheme
double fWcut
apply DMDIS/RES joining scheme < Wcut
double DMDISRESJoinSuppressionFactor(const Interaction *in) const
void Configure(const Registry &config)
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
Cross Section Integrator Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EKinePhaseSpace KinePhaseSpace_t