38 #ifndef _SPP_EVENT_GENERATOR_H_
39 #define _SPP_EVENT_GENERATOR_H_
41 #include <Math/IFunction.h>
42 #include <Math/IntegratorMultiDim.h>
75 Vertex (
double px1,
double px2,
double px3,
double px4) :
x1(px1),
x2(px2),
x3(px3),
x4(px4)
81 os <<
"(" <<
x1 <<
"," <<
x2 <<
"," <<
x3 <<
"," <<
x4 <<
")";
86 return (TMath::Abs(this->
x1 - v.
x1) < epsilon || TMath::Abs(this->x2 - v.
x2) < epsilon || TMath::Abs(this->x3 - v.
x3) < epsilon || TMath::Abs(this->x4 - v.
x4) < epsilon);
135 unsigned int NDim (
void)
const;
136 double DoEval (
const double * xin)
const;
137 ROOT::Math::IBaseFunctionMultiDim *
Clone (
void)
const;
153 #endif // _SPP_EVENT_GENERATOR_H_
Cross Section Calculation Interface.
Interaction * fInteraction
Vertex(double px1, double px2, double px3, double px4)
int GetRecoilNucleonPdgCode(Interaction *interaction) const
bool operator==(const Vertex &v) const
A simple [min,max] interval for doubles.
~d4XSecMK_dWQ2CosThetaPhi_E()
const XSecAlgorithmI * fModel
Abstract class. Provides a data caching mechanism for for concrete implementations of the EventRecord...
void ProcessEventRecord(GHepRecord *event_rec) const
ROOT::Math::IBaseFunctionMultiDim * Clone(void) const
Summary information for an interaction.
unsigned int NDim(void) const
Generates resonance single pion production event for the following channels:
double DoEval(const double *xin) const
void Configure(const Registry &config)
A registry. Provides the container for algorithm configuration parameters.
void Print(std::ostream &os)
d4XSecMK_dWQ2CosThetaPhi_E(const XSecAlgorithmI *m, const Interaction *i, double wcut)
int fMaxDepth
Maximum depth of dividing parent cell.
void Print(std::ostream &os)
int GetFinalPionPdgCode(Interaction *interaction) const
GENIE's GHEP MC event record.
static constexpr double m
double ComputeMaxXSec(const Interaction *interaction) const