DMELUtils.h
Go to the documentation of this file.
1 #ifndef _DMEL_UTILS_H_
2 #define _DMEL_UTILS_H_
3 
7 
8 #include "TLorentzVector.h"
9 #include "TVector3.h"
10 
11 #include <string>
12 
13 namespace genie {
14 
15  // Enumerated type used to specify the method for determining the off-shell energy
16  // of the hit nucleon for quasielastic events
17  typedef enum EDMELEvGenBindingMode {
18 
19  // Use removal energy from the nuclear model
21 
22  // Calculate binding energy assuming that the remnant nucleus is left in its
23  // ground state
25 
26  // Leave the struck nucleon on shell, effectively ignoring its binding energy
29 
30  namespace utils {
31 
32  double EnergyDeltaFunctionSolutionDMEL(const Interaction& inter);
33 
34  DMELEvGen_BindingMode_t StringToDMELBindingMode( const std::string& mode_str );
35 
37  const NuclearModelI* nucl_model, const XSecAlgorithmI* xsec_model,
38  double cos_theta_0, double phi_0, double& Eb,
39  DMELEvGen_BindingMode_t hitNucleonBindingMode, double min_angle_EM = 0.,
40  bool bind_nucleon = true);
41 
42  double CosTheta0Max(const genie::Interaction& interaction);
43 
44  void BindHitNucleon(Interaction& interaction, const NuclearModelI& nucl_model,
45  double& Eb, DMELEvGen_BindingMode_t hitNucleonBindingMode);
46  }
47 }
48 
49 #endif
Cross Section Calculation Interface.
EDMELEvGenBindingMode
Definition: DMELUtils.h:17
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
std::string string
Definition: nybbler.cc:12
double ComputeFullDMELPXSec(Interaction *interaction, const NuclearModelI *nucl_model, const XSecAlgorithmI *xsec_model, double cos_theta_0, double phi_0, double &Eb, DMELEvGen_BindingMode_t hitNucleonBindingMode, double min_angle_EM=0., bool bind_nucleon=true)
Definition: DMELUtils.cxx:94
Pure abstract base class. Defines the NuclearModelI interface to be implemented by any physics model ...
Definition: NuclearModelI.h:46
void BindHitNucleon(Interaction &interaction, const NuclearModelI &nucl_model, double &Eb, DMELEvGen_BindingMode_t hitNucleonBindingMode)
Definition: DMELUtils.cxx:259
Summary information for an interaction.
Definition: Interaction.h:56
enum genie::EDMELEvGenBindingMode DMELEvGen_BindingMode_t
double EnergyDeltaFunctionSolutionDMEL(const Interaction &inter)
Definition: DMELUtils.cxx:51
double CosTheta0Max(const genie::Interaction &interaction)
Definition: DMELUtils.cxx:217
Definition: utils.py:1
DMELEvGen_BindingMode_t StringToDMELBindingMode(const std::string &mode_str)
Definition: DMELUtils.cxx:195