ThinTargetpCPionReweighter.h
Go to the documentation of this file.
1 
2 #ifndef THINTARGETPCPIONREWEIGHTER_H
3 #define THINTARGETPCPIONREWEIGHTER_H
4 
6 #include "ParameterTable.h"
7 
8 #if defined __clang__
9  #pragma clang diagnostic push
10  #pragma clang diagnostic ignored "-Wunused-private-field"
11 #endif
12 namespace NeutrinoFluxReweight{
13 
14  /*! \class ThinTargetpCPionReweighter
15  * \brief Reweighter of thin target pion production
16  */
17 
19  public:
20  ThinTargetpCPionReweighter(int iuniv, const ParameterTable& cv_pars, const ParameterTable& univ_pars);
22  virtual bool canReweight(const InteractionData& aa);
23  virtual double calculateWeight(const InteractionData& inter_data);
24  double calculateDataScale(int inc_pdg, double inc_mom, int prod_pdg,double xf, double pt);
25 
26  double data_prod_xs;
27  std::vector<float> vbin_data_pip,vbin_data_pim;
29 
30  private:
31  int iUniv;
34  float aux_par;
35  };
36 
37 
38 }
39 #if defined __clang__
40  #pragma clang diagnostic pop
41 #endif
42 
43 #endif
A list/table of parameter names and values.
Reweighter of thin target pion production.
The information about a hadronic interaction needed to calculate weights.
double calculateDataScale(int inc_pdg, double inc_mom, int prod_pdg, double xf, double pt)
virtual double calculateWeight(const InteractionData &inter_data)
calculate a weight for this interaction given the central value parameters and the parameters for thi...
virtual bool canReweight(const InteractionData &aa)
can the particular instance of this class reweight this interaction?
ThinTargetpCPionReweighter(int iuniv, const ParameterTable &cv_pars, const ParameterTable &univ_pars)