herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
WeightAnalyzer.h
1 // -*- C++ -*-
2 #ifndef Herwig_WeightAnalyzer_H
3 #define Herwig_WeightAnalyzer_H
4 //
5 // This is the declaration of the WeightAnalyzer class.
6 //
7 
8 #include "ThePEG/Handlers/AnalysisHandler.h"
9 
10 namespace Herwig {
11 
12 using namespace ThePEG;
13 
21 
22 public:
23 
30 
34  virtual ~WeightAnalyzer();
36 
37 public:
38 
58  virtual void analyze(tEventPtr event, long ieve, int loop, int state);
60 
61 protected:
62 
67  virtual void doinitrun();
68 
73  virtual void dofinish();
74 
75 
76 public:
77 
84  void persistentOutput(PersistentOStream & os) const;
85 
91  void persistentInput(PersistentIStream & is, int version);
93 
100  static void Init();
101 
102 protected:
103 
110  virtual IBPtr clone() const;
111 
116  virtual IBPtr fullclone() const;
118 
119 
120 // If needed, insert declarations of virtual function defined in the
121 // InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
122 
123 private:
124 
128  double sumWeights;
129 
134 
139 
144 
149 
154 
159 
165 
170 
175 
180 
185 
189  map<double,double> positiveWeightDistribution;
190 
194  map<double,double> negativeWeightDistribution;
195 
196 
200  bool gnuplot;
201 
202 
203 
204 private:
205 
210  WeightAnalyzer & operator=(const WeightAnalyzer &) = delete;
211 
212 };
213 
214 }
215 
216 #endif /* Herwig_WeightAnalyzer_H */
double nNegativeWeights
Total number of negative weights.
double nPositiveWeights
Total number of positive weights.
double maxDeviationGroupWeight
The maximum deviation of the group weight sum from one.
double sumPositiveGroupWeights
The sum of positive weights calculated by subprocess group weights.
bool gnuplot
Gnuplot output.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
double sumPositiveWeights
The sum of positive weights.
map< double, double > positiveWeightDistribution
Histogram of positive weight occurences.
map< double, double > negativeWeightDistribution
Histogram of negative weight occurences.
Here is the documentation of the WeightAnalyzer class.
double sumWeights
The sum of weights.
double sumGroupWeights
The sum of weights calculated by subprocess group weights.
ThePEG::Ptr< Event >::transient_pointer tEventPtr
-*- C++ -*-
double maxDeviationEventWeight
The maximum deviation of the event weight sum from the overall event weight.
double maxNegativeWeight
The maximum absolute negative weight.
double maxPositiveWeight
The maximum postive weight.
double sumNegativeGroupWeights
The sum of negative weights calculated by subprocess group weights.
double sumNegativeWeights
The sum of negative weights.