21 #include <CLHEP/Random/RandGeneral.h>
22 #include <CLHEP/Vector/LorentzVector.h>
25 #include <G4LorentzVector.hh>
26 #include <G4ThreeVector.hh>
27 #include <RAT/LinearInterp.hh>
55 void GenerateEvent(
const G4ThreeVector &nu_dir, G4LorentzVector &neutrino, G4LorentzVector &electron,
116 void LoadGenerator();
119 void GenInteraction(
double &Enu,
double &CosThetaLab);
127 G4double SampleNuEnergy();
130 G4double SampleRecoilEnergy(G4double Enu,
int &Transition,
double &Enucleus);
133 G4double SampleRecoilAngle(G4double Enu, G4double Te,
int Transition);
Calculates neutrino-nucleus charged current interaction on Lithium-7. (based on ES generator).
Definition: CCCrossSec.hh:40
Implements the generation of a neutrino-nucleus charged current interaction.
Definition: CCgen.hh:38
G4bool GetGenLoaded()
Definition: CCgen.hh:137
G4double fEnuMax
Definition: CCgen.hh:173
G4String fNuFlavor
Definition: CCgen.hh:145
const G4String & GetNuType() const
Definition: CCgen.hh:66
void SetNuType(const G4String &nutype)
Definition: CCgen.cc:283
G4String fDBName
Definition: CCgen.hh:195
void GenerateEvent(const G4ThreeVector &nu_dir, G4LorentzVector &neutrino, G4LorentzVector &electron, double &e_nucleus)
Definition: CCgen.cc:193
CCCrossSec * fXS
Definition: CCgen.hh:148
G4bool fGenLoaded
Definition: CCgen.hh:181
G4double GetRatePerTarget()
Getter for the SSM event rate per target for this flux.
Definition: CCgen.cc:393
void SetDBName(const G4String name)
Definition: CCgen.cc:304
std::vector< double > fFluxTbl
Definition: CCgen.hh:165
G4double fEmin
Definition: CCgen.hh:170
const G4String & GetNuFlavor() const
Definition: CCgen.hh:81
CLHEP::RandGeneral * fSpectrumRndm
Definition: CCgen.hh:190
G4double GetTotalFlux()
Getter for the total neutrino flux.
Definition: CCgen.hh:87
G4String fGenType
Definition: CCgen.hh:137
const G4String GetDBName() const
Definition: CCgen.hh:106
G4double fFluxMax
Definition: CCgen.hh:178
TGraph * fNuSpectrum
Spectrum shape to be sampled.
Definition: CCgen.hh:155
G4double fMassElectron
Definition: CCgen.hh:184
G4double fEnuMin
Definition: CCgen.hh:175
void SetNuFlavor(const G4String &nuflavor)
Definition: CCgen.cc:295
G4String fNuType
Definition: CCgen.hh:142
std::vector< double > fEnuTbl
Definition: CCgen.hh:162
G4double fTotalFlux
Definition: CCgen.hh:187
G4double fEmax
Definition: CCgen.hh:168
Definition: CCCrossSecMessenger.hh:29