GReWeightNuXSecNC.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::rew::GReWeightNuXSecNC
5 
6 \brief Tweak NC level in a gross way (scale by a given factor).
7  More detailed rew. functions also exist for specific NC sources.
8  RES NC cross section rew. is also handled by GReWeightNuXSecNCRES.
9  DIS NC cross section rew. is also handled by GReWeightNuXSecDIS.
10 
11 \author Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
12  University of Liverpool & STFC Rutherford Appleton Lab
13 
14  Jim Dobson <J.Dobson07 \at imperial.ac.uk>
15  Imperial College London
16 
17 \created May 25, 2010
18 
19 \cpright Copyright (c) 2003-2017, GENIE Neutrino MC Generator Collaboration
20  For the full text of the license visit http://copyright.genie-mc.org
21  or see $GENIE/LICENSE
22 */
23 //____________________________________________________________________________
24 
25 #ifndef _G_REWEIGHT_NU_XSEC_NC_H_
26 #define _G_REWEIGHT_NU_XSEC_NC_H_
27 
28 #include "ReWeight/GReWeightI.h"
29 
30 namespace genie {
31 namespace rew {
32 
33  class GReWeightNuXSecNC : public GReWeightI
34  {
35  public:
38 
39  // implement the GReWeightI interface
40  bool IsHandled (GSyst_t syst);
41  void SetSystematic (GSyst_t syst, double val);
42  void Reset (void);
43  void Reconfigure (void);
44  double CalcWeight (const EventRecord & event);
45 
46  // various config options
47  void RewNue (bool tf) { fRewNue = tf; }
48  void RewNuebar (bool tf) { fRewNuebar = tf; }
49  void RewNumu (bool tf) { fRewNumu = tf; }
50  void RewNumubar (bool tf) { fRewNumubar = tf; }
51  void RewQE (bool tf) { fRewQE = tf; }
52  void RewRES (bool tf) { fRewRES = tf; }
53  void RewDIS (bool tf) { fRewDIS = tf; }
54 
55  private:
56 
57  void Init (void);
58 
59  bool fRewNue; ///< reweight nu_e?
60  bool fRewNuebar; ///< reweight nu_e_bar?
61  bool fRewNumu; ///< reweight nu_mu?
62  bool fRewNumubar; ///< reweight nu_mu_bar?
63  bool fRewQE; ///< reweight NC elastic?
64  bool fRewRES; ///< reweight NC RES?
65  bool fRewDIS; ///< reweight NC DIS?
66  double fNCTwkDial; ///< tweaking dial
67  };
68 
69 } // rew namespace
70 } // genie namespace
71 
72 #endif
73 
void SetSystematic(GSyst_t syst, double val)
update the value for the specified nuisance param
#include "Numerical/GSFunc.h"
Definition: AlgCmp.h:26
bool IsHandled(GSyst_t syst)
does the current weight calculator handle the input nuisance param?
bool fRewDIS
reweight NC DIS?
bool fRewRES
reweight NC RES?
Definition: tf_graph.h:23
double fNCTwkDial
tweaking dial
Tweak NC level in a gross way (scale by a given factor). More detailed rew. functions also exist for ...
bool fRewQE
reweight NC elastic?
bool fRewNumu
reweight nu_mu?
An enumeration of systematic parameters.
void Reset(void)
set all nuisance parameters to default values
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
Definition: EventRecord.h:38
void Reconfigure(void)
propagate updated nuisance parameter values to actual MC, etc
double CalcWeight(const EventRecord &event)
calculate a weight for the input event using the current nuisance param values
bool fRewNuebar
reweight nu_e_bar?
Event finding and building.
GENIE event reweighting engine ABC.
Definition: GReWeightI.h:31
bool fRewNumubar
reweight nu_mu_bar?