GReWeightResonanceDecay.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::rew::GReWeightResonanceDecay
5 
6 \brief Reweighting resonance decays
7 
8 \author Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
9  University of Liverpool & STFC Rutherford Appleton Lab
10 
11  Jim Dobson <J.Dobson07 \at imperial.ac.uk>
12  Imperial College London
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_RESDEC_H_
23 #define _G_REWEIGHT_RESDEC_H_
24 
25 //#define _G_REWEIGHT_RESDEC_DEBUG_
26 
27 #include <map>
28 
29 #include "ReWeight/GReWeightI.h"
30 
31 class TH1D;
32 class TNtupleD;
33 class TFile;
34 
35 using std::map;
36 
37 using namespace genie::rew;
38 using namespace genie;
39 
40 namespace genie {
41 namespace rew {
42 
44  {
45  public:
48 
49  // implement the GReWeightI interface
50  bool IsHandled (GSyst_t syst);
51  void SetSystematic (GSyst_t syst, double val);
52  void Reset (void);
53  void Reconfigure (void);
54  double CalcWeight (const EventRecord & event);
55 
56  // various config options
57  void RewNue (bool tf ) { fRewNue = tf; }
58  void RewNuebar (bool tf ) { fRewNuebar = tf; }
59  void RewNumu (bool tf ) { fRewNumu = tf; }
60  void RewNumubar (bool tf ) { fRewNumubar = tf; }
61  void RewCC (bool tf ) { fRewCC = tf; }
62  void RewNC (bool tf ) { fRewNC = tf; }
63 
64  private:
65 
66  void Init (void);
67  double RewBR (const EventRecord & event);
68  double RewThetaDelta2Npi (const EventRecord & event);
69 
73 
74  bool fRewNue; ///< reweight nu_e?
75  bool fRewNuebar; ///< reweight nu_e_bar?
76  bool fRewNumu; ///< reweight nu_mu?
77  bool fRewNumubar; ///< reweight nu_mu_bar?
78  bool fRewCC; ///< reweight CC?
79  bool fRewNC; ///< reweight NC?
80 
81  map<int, TH1D*> fMpBR1gammaDef; // resonance pdg -> X + 1gamma, default BR = f(W)
82  map<int, TH1D*> fMpBR1etaDef; // resonance pdg -> X + 1eta, default BR = f(W)
83 
84 #ifdef _G_REWEIGHT_RESDEC_DEBUG_
85  TFile * fTestFile;
86  TNtupleD * fTestNtp;
87 #endif
88  };
89 
90 } // rew
91 } // genie
92 
93 #endif
94 
#include "Numerical/GSFunc.h"
Definition: AlgCmp.h:26
Definition: tf_graph.h:23
An enumeration of systematic parameters.
void Init(void)
Definition: gXSecComp.cxx:138
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
Definition: EventRecord.h:38
Reweighting resonance decays.
Event finding and building.
GENIE event reweighting engine ABC.
Definition: GReWeightI.h:31