herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
Matchbox
Tests
HardProcessAnalysis.h
1
// -*- C++ -*-
2
#ifndef Herwig_HardProcessAnalysis_H
3
#define Herwig_HardProcessAnalysis_H
4
//
5
// This is the declaration of the HardProcessAnalysis class.
6
//
7
8
#include "ThePEG/Handlers/AnalysisHandler.h"
9
#include "Herwig/Utilities/Histogram.h"
10
11
namespace
Herwig
{
12
13
using namespace
ThePEG
;
14
21
class
HardProcessAnalysis
:
public
AnalysisHandler
{
22
23
public
:
24
30
HardProcessAnalysis
();
31
35
virtual
~
HardProcessAnalysis
();
37
38
public
:
39
59
virtual
void
analyze(
tEventPtr
event,
long
ieve,
int
loop,
int
state);
60
62
63
protected
:
64
69
virtual
void
doinitrun();
70
75
virtual
void
dofinish();
76
77
78
public
:
79
86
void
persistentOutput(
PersistentOStream
& os)
const
;
87
93
void
persistentInput(
PersistentIStream
& is,
int
version);
95
102
static
void
Init();
103
104
protected
:
105
112
virtual
IBPtr
clone()
const
;
113
118
virtual
IBPtr
fullclone()
const
;
120
121
122
// If needed, insert declarations of virtual function defined in the
123
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
124
125
126
private
:
127
132
HardProcessAnalysis
& operator=(
const
HardProcessAnalysis
&) =
delete
;
133
137
struct
Histograms
{
138
142
Histograms
() {}
143
147
explicit
Histograms
(Energy ECM,
unsigned
int
theNBins);
148
152
void
fill(
const
Lorentz5Momentum& p,
double
weight);
153
157
void
finalize(ostream& dat,
158
ostream& plot,
159
const
string
& subpro,
160
size_t
legid,
161
double
norm,
162
bool
theUnitWeights);
163
167
HistogramPtr
transverse
;
168
172
HistogramPtr
rapidity
;
173
177
HistogramPtr
phi
;
178
179
};
180
184
struct
AllHistograms
{
185
189
vector<Histograms>
outgoing
;
190
194
HistogramPtr
x1
;
195
199
HistogramPtr
x2
;
200
204
HistogramPtr
sshat
;
205
209
HistogramPtr
rapidity
;
210
214
double
sumWeights
;
215
216
};
217
221
map<vector<string>,
AllHistograms
>
histogramData
;
222
226
double
sumWeights
;
227
231
void
fill(
PPair
,
ParticleVector
,
double
);
232
236
unsigned
int
theNBins
;
237
241
bool
theUnitWeights
;
242
246
bool
theSplitInitialStates
;
247
251
bool
thePartonsAreJets
;
252
253
};
254
255
}
256
257
#endif
/* Herwig_HardProcessAnalysis_H */
ThePEG::PersistentIStream
Herwig::HardProcessAnalysis::histogramData
map< vector< string >, AllHistograms > histogramData
Histograms per subprocess.
Definition:
HardProcessAnalysis.h:221
Herwig::HardProcessAnalysis::AllHistograms::outgoing
vector< Histograms > outgoing
Outgoing partons.
Definition:
HardProcessAnalysis.h:189
Herwig::HardProcessAnalysis::sumWeights
double sumWeights
The total sum of weights.
Definition:
HardProcessAnalysis.h:226
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Herwig::HardProcessAnalysis::theUnitWeights
bool theUnitWeights
True, if unit weights should be booked.
Definition:
HardProcessAnalysis.h:241
Herwig::HardProcessAnalysis::AllHistograms::sumWeights
double sumWeights
The sum of weights.
Definition:
HardProcessAnalysis.h:214
Herwig::HardProcessAnalysis::theNBins
unsigned int theNBins
The number of bins to use.
Definition:
HardProcessAnalysis.h:236
Herwig::HardProcessAnalysis::Histograms::Histograms
Histograms()
The constructor.
Definition:
HardProcessAnalysis.h:142
Herwig::HardProcessAnalysis::Histograms::transverse
HistogramPtr transverse
Pt spectrum.
Definition:
HardProcessAnalysis.h:167
ThePEG
ThePEG::AnalysisHandler
Herwig::HardProcessAnalysis::theSplitInitialStates
bool theSplitInitialStates
True, if subprocesses should be distinguished by initial state.
Definition:
HardProcessAnalysis.h:246
Herwig::HardProcessAnalysis::Histograms
Differential information per outgoing parton.
Definition:
HardProcessAnalysis.h:137
Herwig::HardProcessAnalysis::AllHistograms::x2
HistogramPtr x2
x2 distribution
Definition:
HardProcessAnalysis.h:199
Herwig::HardProcessAnalysis::AllHistograms::x1
HistogramPtr x1
x1 distribution
Definition:
HardProcessAnalysis.h:194
ThePEG::PPair
pair< PPtr, PPtr > PPair
Herwig::HardProcessAnalysis::AllHistograms::sshat
HistogramPtr sshat
sqrt(shat) distribution
Definition:
HardProcessAnalysis.h:204
Herwig::HardProcessAnalysis::thePartonsAreJets
bool thePartonsAreJets
True, if partons should be handled as jets irrespective of flavour.
Definition:
HardProcessAnalysis.h:251
ThePEG::tEventPtr
ThePEG::Ptr< Event >::transient_pointer tEventPtr
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::HardProcessAnalysis::AllHistograms
Outgoing partons and x distributions.
Definition:
HardProcessAnalysis.h:184
ThePEG::ParticleVector
vector< PPtr > ParticleVector
Herwig::HardProcessAnalysis
Here is the documentation of the HardProcessAnalysis class.
Definition:
HardProcessAnalysis.h:21
Herwig::HardProcessAnalysis::Histograms::rapidity
HistogramPtr rapidity
Rapidity distribution.
Definition:
HardProcessAnalysis.h:172
Herwig::HardProcessAnalysis::AllHistograms::rapidity
HistogramPtr rapidity
y distribution
Definition:
HardProcessAnalysis.h:209
Herwig::HardProcessAnalysis::Histograms::phi
HistogramPtr phi
Azimuthal angle distribution.
Definition:
HardProcessAnalysis.h:177
Generated on Sat Apr 11 2020 14:50:29 for Herwig by
1.8.13