18 #include <CLHEP/Vector/LorentzVector.h>
20 #include <G4ThreeVector.hh>
21 #include <RAT/LinearInterp.hh>
43 CLHEP::HepLorentzVector GenerateEvent(
const G4ThreeVector &nu_dir);
46 double Flux(
double E)
const {
return rmpflux(E); };
51 void SetMixingAngle(
double sin2thw = WEAKANGLE);
52 void SetNeutrinoMoment(
double vMu = 0.0);
54 double GetXSec(
double Enu,
double T);
56 void SetXSecMax(
int ntry = NTRIAL);
58 double GetRandomNumber(
double rmin = 0.,
double rmax = 1.);
60 inline bool GetNormFlag() {
return FlagNorm; };
61 inline void SetNormFlag(
bool iFlag) { FlagNorm = iFlag; };
63 inline double GetMixingAngle() {
return SinSqThetaW; };
64 inline double GetMagneticMoment() {
return MagneticMoment; };
65 inline double GetXSecMax() {
return XSecMax; };
67 inline double GetIBDAmplitude() {
return IBDAmp; };
68 inline double GetESAmplitude() {
return ESAmp; };
69 inline double GetCCAmplitude() {
return CCAmp; };
70 inline double GetICCAmplitude() {
return ICCAmp; };
71 inline double GetNCAmplitude() {
return NCAmp; };
72 inline double GetINCAmplitude() {
return INCAmp; };
73 inline int GetModel() {
return ModelTmp; };
75 void SetIBDAmplitude(
double IBDAm = IBDDEFAULT);
76 void SetESAmplitude(
double ESAm = ESDEFAULT);
77 void SetCCAmplitude(
double CCAm = CCDEFAULT);
78 void SetICCAmplitude(
double ICCAm = ICCDEFAULT);
79 void SetNCAmplitude(
double NCAm = NCDEFAULT);
80 void SetINCAmplitude(
double INCAm = INCDEFAULT);
81 void SetModel(
double ModelTm = MODELDEFAULT);
85 double GetIBDRandomEnergy(Double_t &dt);
86 double GetESRandomEnergy(Double_t &dt);
87 double GetCCRandomEnergy(Double_t &dt);
88 double GetICCRandomEnergy(Double_t &dt);
89 double GetNCRandomEnergy(Double_t &dt);
90 double GetNCRandomNuEnergy();
91 double GetINCRandomEnergy(Double_t &dt);
92 double GetRandomTime();
118 double MagneticMoment;
122 static const double WEAKANGLE;
123 static const int NTRIAL;
133 static const double IBDDEFAULT;
134 static const double ESDEFAULT;
135 static const double CCDEFAULT;
136 static const double ICCDEFAULT;
137 static const double NCDEFAULT;
138 static const double INCDEFAULT;
139 static const int MODELDEFAULT;
155 std::vector<double> spec_E;
156 std::vector<double> spec_mag;
Definition: SNgenMessenger.hh:22
Definition: CCCrossSecMessenger.hh:29