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 <constantinos.andreopoulos \at cern.ch>
15  University of Liverpool & STFC Rutherford Appleton Laboratory
16 
17 \created September 4, 2017
18 
19 \cpright Copyright (c) 2003-2020, 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 
31 namespace genie {
32 
33 class DISStructureFuncModelI;
34 class HadronizationModelI;
35 class XSecIntegratorI;
36 
37 class QPMDMDISPXSec : public XSecAlgorithmI {
38 
39 public:
40  QPMDMDISPXSec();
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 
54 private:
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 fScale; ///< cross section scaling factor
71  double fSin48w; ///< sin^4(Weingberg angle)
72  int fVelMode; ///< velcoity dependence for xsec
73  double fMedMass; ///< Mediator mass
74  double fgzp; ///< Coupling to the mediator Zprime
75  double fQchiL; ///< Left-handed DM charge
76  double fQchiR; ///< Right-handed DM charge
77  double fQchiS; ///< Scalar DM charge
78 };
79 
80 } // genie namespace
81 #endif // _DMDIS_PARTON_MODEL_PARTIAL_XSEC_H_
Computes DMDIS differential cross sections. Is a concrete implementation of the XSecAlgorithmI interf...
Definition: QPMDMDISPXSec.h:37
Cross Section Calculation Interface.
Pure Abstract Base Class. Defines the DISStructureFuncModelI interface to be implemented by any algor...
const HadronizationModelI * fHadronizationModel
hadronic multip. model
Definition: QPMDMDISPXSec.h:62
double fgzp
Coupling to the mediator Zprime.
Definition: QPMDMDISPXSec.h:74
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
Cross Section Integrator Interface.
double fSin48w
sin^4(Weingberg angle)
Definition: QPMDMDISPXSec.h:71
int fVelMode
velcoity dependence for xsec
Definition: QPMDMDISPXSec.h:72
double Integral(const Interaction *i) const
enum genie::EKinePhaseSpace KinePhaseSpace_t
const XSecAlgorithmI * fCharmProdModel
Definition: QPMDMDISPXSec.h:65
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double DMDISRESJoinSuppressionFactor(const Interaction *in) const
double fQchiS
Scalar DM charge.
Definition: QPMDMDISPXSec.h:77
Summary information for an interaction.
Definition: Interaction.h:56
static Config * config
Definition: config.cpp:1054
double fQchiR
Right-handed DM charge.
Definition: QPMDMDISPXSec.h:76
const DISStructureFuncModelI * fDISSFModel
SF model.
Definition: QPMDMDISPXSec.h:61
double fMedMass
Mediator mass.
Definition: QPMDMDISPXSec.h:73
DISStructureFunc fDISSF
Definition: QPMDMDISPXSec.h:58
bool fUseCache
cache reduction factors used in joining scheme
Definition: QPMDMDISPXSec.h:68
double fQchiL
Left-handed DM charge.
Definition: QPMDMDISPXSec.h:75
double fScale
cross section scaling factor
Definition: QPMDMDISPXSec.h:70
const XSecIntegratorI * fXSecIntegrator
diff. xsec integrator
Definition: QPMDMDISPXSec.h:63
A class holding Deep Inelastic Scattering (DIS) Form Factors (invariant structure funstions) ...
void Configure(const Registry &config)
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double fWcut
apply DMDIS/RES joining scheme < Wcut
Definition: QPMDMDISPXSec.h:69
bool fUsingDisResJoin
use a DMDIS/RES joining scheme?
Definition: QPMDMDISPXSec.h:67
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.