GENIEGenerator
Loading...
Searching...
No Matches
FGMBodekRitchie.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::FGMBodekRitchie
5
6\brief The Bodek Richie Fermi Gass model. Implements the NuclearModelI
7 interface.
8
9\ref
10
11\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
12 University of Liverpool
13
14\created October 09, 2004
15
16\cpright Copyright (c) 2003-2025, The GENIE Collaboration
17 For the full text of the license visit http://copyright.genie-mc.org
18
19*/
20//____________________________________________________________________________
21
22#ifndef _FGM_BODEK_RITCHIE_H_
23#define _FGM_BODEK_RITCHIE_H_
24
25#include <map>
26
27#include <TH1D.h>
28
30
31using std::map;
32
33namespace genie {
34
36
37public:
39 FGMBodekRitchie(string config);
40 virtual ~FGMBodekRitchie();
41
42 using NuclearModelI::GenerateNucleon; // inherit versions not overridden here
44
45 //-- implement the NuclearModelI interface
46 bool GenerateNucleon (const Target & t) const;
47 double Prob (double mom, double w, const Target & t) const;
49 {
50 return kNucmFermiGas;
51 }
52
53 virtual double FermiMomentum( const Target & t, int nucleon_pdg ) const ;
54
55 //-- override the Algorithm::Configure methods to load configuration
56 // data to private data members
57 void Configure (const Registry & config);
58 void Configure (string param_set);
59
60 protected:
61 void LoadConfig (void);
62
63private:
64
65 TH1D * ProbDistro (const Target & t) const;
66
67 mutable map<string, TH1D *> fProbDistroMap;
68
69 map<int, double> fNucRmvE;
70
71 double fPMax;
72 double fPCutOff;
74
75};
76
77} // genie namespace
78#endif // _FGM_BODEK_RITCHIE_H_
79
void Configure(const Registry &config)
double Prob(double mom, double w, const Target &t) const
map< int, double > fNucRmvE
NuclearModel_t ModelType(const Target &) const
TH1D * ProbDistro(const Target &t) const
map< string, TH1D * > fProbDistroMap
virtual double FermiMomentum(const Target &t, int nucleon_pdg) const
bool GenerateNucleon(const Target &t) const
virtual double Prob(double p, double w, const Target &) const =0
virtual bool GenerateNucleon(const Target &) const =0
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
A Neutrino Interaction Target. Is a transparent encapsulation of quite different physical systems suc...
Definition Target.h:40
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::ENuclearModel NuclearModel_t
@ kNucmFermiGas