GENIEGenerator
Loading...
Searching...
No Matches
SpectralFunc.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::SpectralFunc
5
6\brief A realistic spectral function - based nuclear model.
7 Is a concrete implementation of the NuclearModelI interface.
8
9\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
10 University of Liverpool
11
12\created May 07, 2004
13
14\cpright Copyright (c) 2003-2025, The GENIE Collaboration
15 For the full text of the license visit http://copyright.genie-mc.org
16
17
18*/
19//____________________________________________________________________________
20
21#ifndef _SPECTRAL_FUNCTION_H_
22#define _SPECTRAL_FUNCTION_H_
23
25
26class TNtupleD;
27class TGraph2D;
28
29namespace genie {
30
32
33public:
35 SpectralFunc(string config);
36 virtual ~SpectralFunc();
37
38 using NuclearModelI::GenerateNucleon; // inherit versions not overridden here
40
41 //-- implement the NuclearModelI interface
42 bool GenerateNucleon (const Target & t) const;
43 double Prob (double p, double w, const Target & t) const;
45 {
46 return kNucmSpectralFunc;
47 }
48
49 //-- override the Algorithm::Configure methods to load configuration
50 // data to private data members
51 void Configure (const Registry & config);
52 void Configure (string config);
53
54 protected:
55 void LoadConfig (void);
56
57private:
58
59 TGraph2D * Convert2Graph (TNtupleD & data) const;
60 TGraph2D * SelectSpectralFunction (const Target & target) const;
61
62 TGraph2D * fSfFe56; ///< Benhar's Fe56 SF
63 TGraph2D * fSfC12; ///< Benhar's C12 SF
64};
65
66} // genie namespace
67#endif // _SPECTRAL_FUNCTION_H_
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
TGraph2D * fSfFe56
Benhar's Fe56 SF.
TGraph2D * fSfC12
Benhar's C12 SF.
NuclearModel_t ModelType(const Target &) const
bool GenerateNucleon(const Target &t) const
TGraph2D * SelectSpectralFunction(const Target &target) const
void Configure(const Registry &config)
double Prob(double p, double w, const Target &t) const
TGraph2D * Convert2Graph(TNtupleD &data) const
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
@ kNucmSpectralFunc