32 #ifndef _NUCLEAR_MODEL_I_H_
33 #define _NUCLEAR_MODEL_I_H_
53 double hitNucleonRadius)
const;
55 virtual double Prob (
double p,
double w,
const Target &)
const = 0;
56 virtual double Prob (
double p,
double w,
const Target & tgt,
57 double hitNucleonRadius)
const;
139 #endif // _NUCLEAR_MODEL_I_H_
virtual double LocalFermiMomentum(const Target &, int nucleon_pdg, double radius) const
double RemovalEnergy(void) const
double Momentum(void) const
NuclearModelI(std::string name)
Algorithm abstract base class.
Pure abstract base class. Defines the NuclearModelI interface to be implemented by any physics model ...
A table of Fermi momentum constants.
const TVector3 & Momentum3(void) const
virtual NuclearModel_t ModelType(const Target &) const =0
FermiMoverInteractionType_t GetFermiMoverInteractionType(void) const
const genie::FermiMomentumTable & FermiMomentumTable() const
virtual double FermiMomentum(const Target &, int nucleon_pdg) const
FermiMoverInteractionType_t fFermiMoverInteractionType
A Neutrino Interaction Target. Is a transparent encapsulation of quite different physical systems suc...
virtual double Prob(double p, double w, const Target &) const =0
enum genie::EFermiMoverInteractionType FermiMoverInteractionType_t
double fCurrRemovalEnergy
virtual void LoadConfig()
const genie::FermiMomentumTable * fKFTable
enum genie::ENuclearModel NuclearModel_t
void SetRemovalEnergy(double E) const
void SetMomentum3(const TVector3 &mom) const
virtual bool GenerateNucleon(const Target &) const =0
NuclearModelI(std::string name, std::string config)
const string & FermiMomentumTableName() const