herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
DrellYanBase.h
1
// -*- C++ -*-
2
#ifndef HERWIG_DrellYanBase_H
3
#define HERWIG_DrellYanBase_H
4
//
5
// This is the declaration of the DrellYanBase class.
6
//
7
8
#include "HwMEBase.h"
9
#include "Herwig/Shower/ShowerAlpha.h"
10
11
namespace
Herwig
{
12
13
using namespace
ThePEG
;
14
23
class
DrellYanBase
:
public
HwMEBase
{
24
25
public
:
26
30
DrellYanBase
();
31
35
//virtual bool hasPOWHEGCorrection() {return _alpha;}
36
37
virtual
POWHEGType
hasPOWHEGCorrection
() {
return
ISR;}
38
39
43
virtual
bool
hasMECorrection
() {
return
_alpha;}
44
48
virtual
void
initializeMECorrection
(RealEmissionProcessPtr,
double
& initial,
49
double
&
final
) {
50
final
= 1.;
51
initial = 1.;
52
}
53
57
virtual
RealEmissionProcessPtr applyHardMatrixElementCorrection(RealEmissionProcessPtr);
58
71
virtual
bool
softMatrixElementVeto(
PPtr
parent,
72
PPtr
progenitor,
73
const
bool
& fs,
74
const
Energy & highestpT,
75
const
vector<tcPDPtr> & ids,
76
const
double
& z,
77
const
Energy & scale,
78
const
Energy & pT);
79
83
virtual
RealEmissionProcessPtr generateHardest(RealEmissionProcessPtr,
84
ShowerInteraction
);
85
91
virtual
void
setKinematics
() {
92
HwMEBase::setKinematics
();
93
mb2_ = sHat();
94
}
95
96
protected
:
97
112
bool
applyHard(
ParticleVector
& quarks,
113
vector<tcBeamPtr> beams,
114
Lorentz5Momentum boson,
unsigned
int
& iemit,
115
unsigned
int
& itype,vector<Lorentz5Momentum> & pnew,
116
LorentzRotation
& trans, pair<double,double> & xnew,
117
Energy2 shad);
118
127
double
getResult(
int
emis_type, Energy pt,
double
yj);
128
135
bool
getEvent(vector<Lorentz5Momentum> & pnew,
int
& emissiontype);
136
137
public
:
138
145
void
persistentOutput(
PersistentOStream
& os)
const
;
146
152
void
persistentInput(
PersistentIStream
& is,
int
version);
154
161
static
void
Init();
162
163
protected
:
164
172
virtual
void
doinit();
173
178
virtual
void
dofinish();
180
181
private
:
182
187
DrellYanBase
& operator=(
const
DrellYanBase
&) =
delete
;
188
189
private
:
190
194
Energy2
mb2_
;
195
203
double
_channelwgtA
;
204
208
double
_channelwgtB
;
209
213
vector<double>
_channelweights
;
214
218
unsigned
int
_nover
;
219
223
double
_maxwgt
;
225
234
double
_power
;
235
239
double
_preqqbar
;
240
244
double
_preqg
;
245
249
double
_pregqbar
;
250
254
vector<double>
_prefactor
;
256
264
vector<tcBeamPtr>
_beams
;
265
269
vector<tcPDPtr>
_partons
;
271
279
double
_yb
;
280
284
Energy
_mass
;
285
289
bool
_quarkplus
;
290
294
double
_yj
;
295
299
Energy
_pt
;
301
305
Energy
_min_pt
;
306
310
ShowerAlphaPtr
_alpha
;
311
};
312
313
}
314
315
#endif
/* HERWIG_DrellYanBase_H */
ThePEG::PPtr
ThePEG::Ptr< Particle >::pointer PPtr
Herwig::DrellYanBase::_yb
double _yb
Properties of the boson and jets.
Definition:
DrellYanBase.h:279
ThePEG::PersistentIStream
Herwig::DrellYanBase::_alpha
ShowerAlphaPtr _alpha
Pointer to the object calculating the strong coupling.
Definition:
DrellYanBase.h:310
Herwig::DrellYanBase::_prefactor
vector< double > _prefactor
The prefactors as a vector for easy use.
Definition:
DrellYanBase.h:254
Herwig::ShowerInteraction
ShowerInteraction
Handy header file to be included in all Shower classes.
Definition:
ShowerInteraction.h:23
Herwig::DrellYanBase::hasPOWHEGCorrection
virtual POWHEGType hasPOWHEGCorrection()
Has a POWHEG style correction.
Definition:
DrellYanBase.h:37
ThePEG::PersistentOStream
Herwig::DrellYanBase
The DrellYanBase class class provides a base class for the implemented of Drell-Yan type processes an...
Definition:
DrellYanBase.h:23
Herwig::DrellYanBase::_partons
vector< tcPDPtr > _partons
Pointers to the ParticleDataObjects for the partons.
Definition:
DrellYanBase.h:269
Herwig::DrellYanBase::_channelwgtA
double _channelwgtA
Parameters for the old-style ME correction.
Definition:
DrellYanBase.h:203
ThePEG::LorentzRotation
ThePEG
Herwig::DrellYanBase::_channelweights
vector< double > _channelweights
Weights for the channels as a vector.
Definition:
DrellYanBase.h:213
Herwig::DrellYanBase::_pt
Energy _pt
The transverse momentum of the jet.
Definition:
DrellYanBase.h:299
Herwig::DrellYanBase::_nover
unsigned int _nover
Number of weights greater than 1.
Definition:
DrellYanBase.h:218
Herwig::DrellYanBase::_maxwgt
double _maxwgt
Maximum weight.
Definition:
DrellYanBase.h:223
Herwig::DrellYanBase::_power
double _power
Constants for the sampling.
Definition:
DrellYanBase.h:234
Herwig::DrellYanBase::_preqg
double _preqg
The prefactor, for the channel.
Definition:
DrellYanBase.h:244
Herwig::DrellYanBase::mb2_
Energy2 mb2_
Mass squared of the vector boson.
Definition:
DrellYanBase.h:194
Herwig::DrellYanBase::setKinematics
virtual void setKinematics()
Set the typed and momenta of the incoming and outgoing partons to be used in subsequent calls to me()...
Definition:
DrellYanBase.h:91
Herwig::DrellYanBase::_channelwgtB
double _channelwgtB
Relative weight for the and channels.
Definition:
DrellYanBase.h:208
Herwig::DrellYanBase::initializeMECorrection
virtual void initializeMECorrection(RealEmissionProcessPtr, double &initial, double &final)
Initialize the ME correction.
Definition:
DrellYanBase.h:48
Herwig::DrellYanBase::_min_pt
Energy _min_pt
The transverse momentum of the jet.
Definition:
DrellYanBase.h:305
Herwig::DrellYanBase::hasMECorrection
virtual bool hasMECorrection()
Has an old fashioned ME correction.
Definition:
DrellYanBase.h:43
Herwig::HwMEBase::POWHEGType
POWHEGType
Virtual members to be overridden by inheriting classes which implement hard corrections.
Definition:
HwMEBase.h:87
Herwig::HwMEBase::setKinematics
virtual void setKinematics()
Set the typed and momenta of the incoming and outgoing partons to be used in subsequent calls to me()...
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::DrellYanBase::_pregqbar
double _pregqbar
The prefactor, for the channel.
Definition:
DrellYanBase.h:249
Herwig::DrellYanBase::_beams
vector< tcBeamPtr > _beams
Properties of the incoming particles.
Definition:
DrellYanBase.h:264
Herwig::DrellYanBase::_yj
double _yj
the rapidity of the jet
Definition:
DrellYanBase.h:294
Herwig::DrellYanBase::_quarkplus
bool _quarkplus
Whether the quark is in the + or - z direction.
Definition:
DrellYanBase.h:289
Herwig::HwMEBase
The HwMEBase class serves a number of purposes.
Definition:
HwMEBase.h:35
Herwig::DrellYanBase::_mass
Energy _mass
The mass of the gauge boson.
Definition:
DrellYanBase.h:284
ThePEG::ParticleVector
vector< PPtr > ParticleVector
Herwig::DrellYanBase::_preqqbar
double _preqqbar
The prefactor, for the channel.
Definition:
DrellYanBase.h:239
Generated on Sat Apr 11 2020 14:50:29 for Herwig by
1.8.13