herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
ReweightEW.h
1 // -*- C++ -*-
2 #ifndef Herwig_ReweightEW_H
3 #define Herwig_ReweightEW_H
4 //
5 // This is the declaration of the ReweightEW class.
6 //
7 
8 #include "ThePEG/MatrixElement/ReweightBase.h"
9 #include <array>
10 
11 namespace Herwig {
12 
13 using namespace ThePEG;
14 
21 class ReweightEW: public ReweightBase {
22 
23 public:
24 
30  ReweightEW();
31 
35  virtual ~ReweightEW();
37 
38 public:
39 
44  virtual double weight() const;
45 
49  double lastS() const {return thelasts;}
50  double lastT() const {return thelastt;}
51  double lastK() const {return thelastk;}
52 
53  void setSTK(double s, double t, double K);
54 
55 
62  void persistentOutput(PersistentOStream & os) const;
63 
69  void persistentInput(PersistentIStream & is, int version);
71 
78  static void Init();
79 
80 protected:
81 
88  virtual IBPtr clone() const;
89 
94  virtual IBPtr fullclone() const;
96 
97 
98 private:
99 
103  mutable double thelasts;
104 
108  mutable double thelastt;
109 
113  mutable double thelastk;
114 
118  std::array<std::array<double,6>,40001> tab;
119 
123  string filename;
124 
125 public:
129  double EWKFac(unsigned int f, double s, double t) const;
130 
131 private:
135  void inittable();
136 
137 private:
138 
144  virtual void doinit();
145 
150  virtual void doinitrun();
151 
152 private:
153 
158  ReweightEW & operator=(const ReweightEW &) = delete;
159 
160 };
161 
162 }
163 
164 #endif /* Herwig_ReweightEW_H */
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
std::array< std::array< double, 6 >, 40001 > tab
The table of K factors to be read from file.
Definition: ReweightEW.h:118
double thelasts
The last s.
Definition: ReweightEW.h:103
double thelastt
The last t.
Definition: ReweightEW.h:108
string filename
EW K factor filename.
Definition: ReweightEW.h:123
-*- C++ -*-
double thelastk
The last K-factor.
Definition: ReweightEW.h:113
Here is the documentation of the ReweightEW class.
Definition: ReweightEW.h:21
double lastS() const
Return values of the last evaluation (double/doubles in GeV2)
Definition: ReweightEW.h:49