GENIEGenerator
Loading...
Searching...
No Matches
HEDISPXSec.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::HEDISPXSec
5
6\brief Computes the double differential Cross Section for HEDIS. \n
7 Is a concrete implementation of the XSecAlgorithmI interface.
8
9\author Alfonso Garcia <alfonsog \at nikhef.nl>
10 NIKHEF
11
12\created August 28, 2019
13
14\cpright Copyright (c) 2003-2025, The GENIE Collaboration
15 For the full text of the license visit http://copyright.genie-mc.org
16 or see $GENIE/LICENSE
17*/
18//____________________________________________________________________________
19
20#ifndef _HEDIS_PXSEC_H_
21#define _HEDIS_PXSEC_H_
22
25
26namespace genie {
27
28 class XSecIntegratorI;
29
30 class HEDISPXSec : public XSecAlgorithmI {
31
32 public:
33 HEDISPXSec();
34 HEDISPXSec(string config);
35 virtual ~HEDISPXSec();
36
37 // XSecAlgorithmI interface implementation
38 double XSec (const Interaction * i, KinePhaseSpace_t k) const;
39 double Integral (const Interaction * i) const;
40 bool ValidProcess (const Interaction * i) const;
41
42 // overload the Algorithm::Configure() methods to load private data
43 // members from configuration options
44 void Configure(const Registry & config);
45 void Configure(string config);
46
47 private:
48 void LoadConfig (void);
49 double ds_dxdy (SF_xQ2 sf, double x, double y) const;
50 double ds_dxdy_mass (SF_xQ2 sf, double x, double y, double e, double mt, double ml2) const;
51
52 const XSecIntegratorI * fXSecIntegrator; ///< diff. xsec integrator
53
54 double fWmin; ///< Minimum value of W
55 bool fMassTerms; ///< Account for second order effects in DDxsec
56 SF_info fSFinfo; ///< Information used to computed SF
57 };
58
59} // genie namespace
60
61#endif // _HEDIS_PXSEC_H_
double ds_dxdy(SF_xQ2 sf, double x, double y) const
double ds_dxdy_mass(SF_xQ2 sf, double x, double y, double e, double mt, double ml2) const
SF_info fSFinfo
Information used to computed SF.
Definition HEDISPXSec.h:56
virtual ~HEDISPXSec()
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
void LoadConfig(void)
double Integral(const Interaction *i) const
const XSecIntegratorI * fXSecIntegrator
diff. xsec integrator
Definition HEDISPXSec.h:52
double fWmin
Minimum value of W.
Definition HEDISPXSec.h:54
void Configure(const Registry &config)
bool fMassTerms
Account for second order effects in DDxsec.
Definition HEDISPXSec.h:55
Summary information for an interaction.
Definition Interaction.h:56
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
Cross Section Integrator Interface.
const double e
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EKinePhaseSpace KinePhaseSpace_t