20 #ifndef _COH_KINEMATICS_GENERATOR_H_
21 #define _COH_KINEMATICS_GENERATOR_H_
53 void SetKinematics(
const double E_l,
const double theta_l,
const double phi_l,
54 const double theta_pi,
const double phi_pi,
57 const double phi_l,
const double theta_pi,
58 const double phi_pi,
const Interaction* interaction)
const;
84 #endif // _COH_KINEMATICS_GENERATOR_H_
double MaxXSec_ReinSehgal(const Interaction *in) const
double fRo
nuclear scale parameter
void CalculateKin_BergerSehgalFM(GHepRecord *event_rec) const
void CalculateKin_AlvarezRuso(GHepRecord *event_rec) const
Generated/set kinematical variables for an event.
void Configure(const Registry &config)
void SetKinematics(const double E_l, const double theta_l, const double phi_l, const double theta_pi, const double phi_pi, const Interaction *interaction, Kinematics *kinematics) const
Abstract class. Provides a data caching mechanism for for concrete implementations of the EventRecord...
double MaxXSec_AlvarezRuso(const Interaction *in) const
void CalculateKin_ReinSehgal(GHepRecord *event_rec) const
void ProcessEventRecord(GHepRecord *event_rec) const
Summary information for an interaction.
double fTMax
upper bound for t = (q - p_pi)^2
double fQ2Min
lower bound of integration for Q^2 in Berger-Sehgal Model
void CalculateKin_BergerSehgal(GHepRecord *event_rec) const
double ComputeMaxXSec(const Interaction *in) const
double Energy(const Interaction *in) const
Generates values for the kinematic variables describing coherent neutrino-nucleus pion production eve...
A registry. Provides the container for algorithm configuration parameters.
~COHKinematicsGenerator()
double MaxXSec_BergerSehgal(const Interaction *in) const
bool CheckKinematics(const double E_l, const double theta_l, const double phi_l, const double theta_pi, const double phi_pi, const Interaction *interaction) const
double pionMass(const Interaction *in) const
TF2 * fEnvelope
2-D envelope used for importance sampling
GENIE's GHEP MC event record.
double MaxXSec_BergerSehgalFM(const Interaction *in) const
double fQ2Max
upper bound of integration for Q^2 in Berger-Sehgal Model
void throwOnTooManyIterations(unsigned int iters, GHepRecord *evrec) const