herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Shower
Dipole
Utility
DipoleMCCheck.h
1
// -*- C++ -*-
2
//
3
// DipoleMCCheck.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef HERWIG_DipoleMCCheck_H
10
#define HERWIG_DipoleMCCheck_H
11
//
12
// This is the declaration of the DipoleMCCheck class.
13
//
14
15
#include "ThePEG/Handlers/HandlerBase.h"
16
17
#include "Herwig/Utilities/Histogram.h"
18
19
namespace
Herwig
{
20
21
using namespace
ThePEG
;
22
33
class
DipoleMCCheck
:
public
HandlerBase
{
34
35
public
:
36
40
DipoleMCCheck
();
41
42
public
:
43
47
void
book
(
double
xe,
double
xs,
48
Energy dScale,
49
Energy hardPt,
50
Energy pt,
double
z,
51
double
weight);
52
53
public
:
54
61
void
persistentOutput
(
PersistentOStream
& os)
const
;
62
68
void
persistentInput
(
PersistentIStream
& is,
int
version);
70
77
static
void
Init
();
78
79
protected
:
80
87
virtual
IBPtr
clone
()
const
;
88
93
virtual
IBPtr
fullclone
()
const
;
95
96
97
98
protected
:
99
104
virtual
void
doinitrun
();
105
110
virtual
void
dofinish
();
111
112
113
// If needed, insert declarations of virtual function defined in the
114
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
115
116
private
:
117
123
unsigned
int
theHardPtBins
;
124
130
unsigned
int
theEmitterXBins
;
131
137
unsigned
int
theSpectatorXBins
;
138
143
unsigned
int
thePtBins
;
144
148
unsigned
int
theZBins
;
149
157
map<double,
158
map<double,
159
map<double,
160
pair<Ptr<Histogram>::ptr,Ptr<Histogram>::ptr>
161
>
162
>
163
>
histoMap
;
164
168
vector<double>
makeLogBins
(
double
xlow,
double
xup,
unsigned
int
n)
const
;
169
170
private
:
171
176
static
ClassDescription<DipoleMCCheck>
initDipoleMCCheck
;
177
182
DipoleMCCheck
&
operator=
(
const
DipoleMCCheck
&) =
delete
;
183
184
};
185
186
}
187
188
#include "ThePEG/Utilities/ClassTraits.h"
189
190
namespace
ThePEG
{
191
196
template
<>
197
struct
BaseClassTrait
<
Herwig
::DipoleMCCheck,1> {
199
typedef
HandlerBase
NthBase
;
200
};
201
204
template
<>
205
struct
ClassTraits
<
Herwig
::DipoleMCCheck>
206
:
public
ClassTraitsBase
<Herwig::DipoleMCCheck> {
208
static
string
className
() {
return
"Herwig::DipoleMCCheck"
; }
216
static
string
library
() {
return
"HwDipoleShower.so"
; }
217
};
218
221
}
222
223
#endif
/* HERWIG_DipoleMCCheck_H */
Herwig::DipoleMCCheck
DipoleMCCheck is used to perform checks for the dipole shower.
Definition:
DipoleMCCheck.h:33
Herwig::DipoleMCCheck::doinitrun
virtual void doinitrun()
Initialize this object.
Herwig::DipoleMCCheck::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::DipoleMCCheck::makeLogBins
vector< double > makeLogBins(double xlow, double xup, unsigned int n) const
Helper to make logarithmic bins.
Herwig::DipoleMCCheck::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::DipoleMCCheck::theHardPtBins
unsigned int theHardPtBins
The number of bins in the starting scale divided by the dipole scale, the upper bound is 1/2.
Definition:
DipoleMCCheck.h:123
Herwig::DipoleMCCheck::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::DipoleMCCheck::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::DipoleMCCheck::theEmitterXBins
unsigned int theEmitterXBins
The number of bins in the emitter fraction.
Definition:
DipoleMCCheck.h:130
Herwig::DipoleMCCheck::theZBins
unsigned int theZBins
The number of bins in z.
Definition:
DipoleMCCheck.h:148
Herwig::DipoleMCCheck::book
void book(double xe, double xs, Energy dScale, Energy hardPt, Energy pt, double z, double weight)
Book a point.
Herwig::DipoleMCCheck::DipoleMCCheck
DipoleMCCheck()
The default constructor.
Herwig::DipoleMCCheck::thePtBins
unsigned int thePtBins
The number of bins in pt dicided by the dipole scale; the upper bound is 1/2.
Definition:
DipoleMCCheck.h:143
Herwig::DipoleMCCheck::operator=
DipoleMCCheck & operator=(const DipoleMCCheck &)=delete
The assignment operator is private and must never be called.
Herwig::DipoleMCCheck::dofinish
virtual void dofinish()
Finalize this object.
Herwig::DipoleMCCheck::initDipoleMCCheck
static ClassDescription< DipoleMCCheck > initDipoleMCCheck
The static object used to initialize the description of this class.
Definition:
DipoleMCCheck.h:176
Herwig::DipoleMCCheck::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::DipoleMCCheck::histoMap
map< double, map< double, map< double, pair< Ptr< Histogram >::ptr, Ptr< Histogram >::ptr > > > > histoMap
The recursive map structure: xe, xs, hard pt / GeV to histograms for pt and z; output is done such th...
Definition:
DipoleMCCheck.h:163
Herwig::DipoleMCCheck::theSpectatorXBins
unsigned int theSpectatorXBins
The number of bins in the spectator fraction.
Definition:
DipoleMCCheck.h:137
ThePEG::ClassDescription
ThePEG::HandlerBase
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::BaseClassTrait
ThePEG::BaseClassTrait::NthBase
int NthBase
ThePEG::ClassTraitsBase
ThePEG::ClassTraitsBase::className
static string className()
ThePEG::ClassTraitsBase::library
static string library()
ThePEG::ClassTraits
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6