GReWeightFGM.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::rew::GReWeightFGM
5 
6 \brief Reweighting the Fermi Gas nuclear model
7 
8 \author Jim Dobson <J.Dobson07 \at imperial.ac.uk>
9  Imperial College London
10 
11  Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
12  University of Liverpool & STFC Rutherford Appleton Lab
13 
14 \created Apr 26, 2010
15 
16 \cpright Copyright (c) 2003-2017, GENIE Neutrino MC Generator Collaboration
17  For the full text of the license visit http://copyright.genie-mc.org
18  or see $GENIE/LICENSE
19 */
20 //____________________________________________________________________________
21 
22 #ifndef _G_REWEIGHT_FGM_H_
23 #define _G_REWEIGHT_FGM_H_
24 
25 //#define _G_REWEIGHT_FGM_DEBUG_
26 
27 #include <map>
28 
29 #include "ReWeight/GReWeightI.h"
30 
31 using std::map;
32 
33 using namespace genie::rew;
34 using namespace genie;
35 
36 class TH1D;
37 class TNtupleD;
38 class TFile;
39 
40 namespace genie {
41 
42 class NuclearModelI;
43 
44 namespace rew {
45 
46  class GReWeightFGM : public GReWeightI
47  {
48  public:
49  GReWeightFGM();
50  ~GReWeightFGM();
51 
52  // implement the GReWeightI interface
53  bool IsHandled (GSyst_t syst);
54  void SetSystematic (GSyst_t syst, double val);
55  void Reset (void);
56  void Reconfigure (void);
57  double CalcWeight (const EventRecord & event);
58 
59  private:
60 
61  void Init(void);
62 
63  double RewCCQEPauliSupViaKF (const EventRecord & event);
64  double RewCCQEMomDistroFGtoSF (const EventRecord & event);
65 
66  double fKFTwkDial;
68 
69  const NuclearModelI * fFG;
70  const NuclearModelI * fSF;
71 
72  map<int, TH1D *> fMapFGn;
73  map<int, TH1D *> fMapFGp;
74  map<int, TH1D *> fMapSFn;
75  map<int, TH1D *> fMapSFp;
76 
77 #ifdef _G_REWEIGHT_FGM_DEBUG_
78  TFile * fTestFile;
79  TNtupleD * fTestNtp;
80 #endif
81 
82  };
83 
84 } // rew
85 } // genie
86 
87 #endif
88 
map< int, TH1D * > fMapFGp
Definition: GReWeightFGM.h:73
#include "Numerical/GSFunc.h"
Definition: AlgCmp.h:26
Pure abstract base class. Defines the NuclearModelI interface to be implemented by any physics model ...
Definition: NuclearModelI.h:42
map< int, TH1D * > fMapFGn
Definition: GReWeightFGM.h:72
const NuclearModelI * fFG
Definition: GReWeightFGM.h:69
map< int, TH1D * > fMapSFp
Definition: GReWeightFGM.h:75
Reweighting the Fermi Gas nuclear model.
Definition: GReWeightFGM.h:46
An enumeration of systematic parameters.
void Init(void)
Definition: gXSecComp.cxx:138
map< int, TH1D * > fMapSFn
Definition: GReWeightFGM.h:74
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
Definition: EventRecord.h:38
Event finding and building.
const NuclearModelI * fSF
Definition: GReWeightFGM.h:70
GENIE event reweighting engine ABC.
Definition: GReWeightI.h:31