herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
DIS
DISBase.h
1
// -*- C++ -*-
2
#ifndef HERWIG_DISBase_H
3
#define HERWIG_DISBase_H
4
//
5
// This is the declaration of the DISBase class.
6
//
7
8
#include "Herwig/MatrixElement/HwMEBase.h"
9
#include "Herwig/Shower/ShowerAlpha.h"
10
11
namespace
Herwig
{
12
13
using namespace
ThePEG
;
14
23
class
DISBase
:
public
HwMEBase
{
24
25
public
:
26
30
DISBase
();
31
35
virtual
~
DISBase
();
36
44
virtual
bool
hasMECorrection
() {
return
true
;}
45
49
virtual
void
initializeMECorrection(RealEmissionProcessPtr,
double
&,
50
double
& );
51
55
virtual
RealEmissionProcessPtr applyHardMatrixElementCorrection(RealEmissionProcessPtr);
56
69
virtual
bool
softMatrixElementVeto(
PPtr
parent,
70
PPtr
progenitor,
71
const
bool
& fs,
72
const
Energy & highestpT,
73
const
vector<tcPDPtr> & ids,
74
const
double
& z,
75
const
Energy & scale,
76
const
Energy & pT);
78
86
virtual
POWHEGType
hasPOWHEGCorrection
() {
return
Both;}
87
91
virtual
RealEmissionProcessPtr generateHardest(RealEmissionProcessPtr,
92
ShowerInteraction
);
94
95
public
:
96
102
virtual
Energy2 scale()
const
;
103
108
virtual
int
nDim()
const
;
109
118
virtual
bool
generateKinematics(
const
double
* r);
119
124
virtual
CrossSection dSigHatDR()
const
;
126
127
128
public
:
129
136
void
persistentOutput(
PersistentOStream
& os)
const
;
137
143
void
persistentInput(
PersistentIStream
& is,
int
version);
145
152
static
void
Init();
153
154
protected
:
155
163
virtual
void
doinit();
165
166
private
:
167
172
DISBase
& operator=(
const
DISBase
&) =
delete
;
173
174
protected
:
175
179
double
NLOWeight()
const
;
180
184
virtual
double
A(
tcPDPtr
lin,
tcPDPtr
lout,
tcPDPtr
qin,
tcPDPtr
qout,
185
Energy2 scale)
const
=0;
186
196
double
generateComptonPoint(
double
&xp,
double
& zp);
197
203
double
generateBGFPoint(
double
&xp,
double
& zp);
204
215
vector<double> ComptonME(
double
xp,
double
x2,
double
xperp,
216
bool
norm);
217
229
vector<double> BGFME(
double
xp,
double
x2,
double
x3,
double
xperp,
230
bool
norm);
232
240
void
generateCompton();
241
245
void
generateBGF();
247
248
private
:
249
257
double
initial_
;
258
262
double
final_
;
263
267
double
procProb_
;
268
272
double
comptonInt_
;
273
277
double
bgfInt_
;
279
287
double
comptonWeight_
;
288
292
double
BGFWeight_
;
293
297
Energy
pTmin_
;
299
307
Energy2
q2_
;
308
312
double
l_;
313
317
double
xB_
;
318
322
tcBeamPtr
beam_
;
323
327
tcPDPtr
partons_[2];
328
332
tcPDPtr
leptons_[2];
333
337
tcPDFPtr
pdf_
;
341
LorentzRotation
rot_
;
342
346
Lorentz5Momentum pl_[2];
347
351
Lorentz5Momentum pq_[2];
352
356
Lorentz5Momentum
q_
;
357
361
Energy
pTCompton_
;
362
bool
ComptonISFS_;
363
vector<Lorentz5Momentum> ComptonMomenta_;
364
368
Energy
pTBGF_
;
369
vector<Lorentz5Momentum> BGFMomenta_;
371
375
double
acoeff_
;
376
380
ShowerAlphaPtr
alpha_
;
381
385
PDPtr
gluon_
;
386
387
private
:
388
396
double
xp_
;
398
402
tcBeamPtr
hadron_
;
403
407
unsigned
int
scaleOpt_
;
408
412
Energy
muF_
;
413
417
double
scaleFact_
;
418
422
unsigned
int
contrib_
;
423
427
double
power_
;
428
432
double
jac_
;
433
434
};
435
436
}
437
438
#endif
/* HERWIG_DISBase_H */
Herwig::tcBeamPtr
Ptr< BeamParticleData >::transient_const_pointer tcBeamPtr
A typedef for the BeamParticleData.
Definition:
HwMEBase.h:20
ThePEG::PPtr
ThePEG::Ptr< Particle >::pointer PPtr
Herwig::DISBase::final_
double final_
Enchancement factor for FSR.
Definition:
DISBase.h:262
ThePEG::PersistentIStream
Herwig::DISBase::BGFWeight_
double BGFWeight_
Weight for the BGF channel.
Definition:
DISBase.h:292
Herwig::ShowerInteraction
ShowerInteraction
Handy header file to be included in all Shower classes.
Definition:
ShowerInteraction.h:23
Herwig::DISBase::bgfInt_
double bgfInt_
Integral for BGF process.
Definition:
DISBase.h:277
Herwig::DISBase::beam_
tcBeamPtr beam_
Beam particle.
Definition:
DISBase.h:322
Herwig::DISBase::scaleFact_
double scaleFact_
Prefactor if variable scale used.
Definition:
DISBase.h:417
ThePEG::PersistentOStream
Herwig::DISBase::scaleOpt_
unsigned int scaleOpt_
Selects a dynamic or fixed factorization scale.
Definition:
DISBase.h:407
ThePEG::tcPDFPtr
ThePEG::Ptr< PDFBase >::transient_const_pointer tcPDFPtr
Herwig::DISBase::pTCompton_
Energy pTCompton_
Compton parameters.
Definition:
DISBase.h:361
Herwig::DISBase::q2_
Energy2 q2_
Parameters for the point being generated.
Definition:
DISBase.h:307
ThePEG::LorentzRotation
Herwig::DISBase::xp_
double xp_
The radiative variables.
Definition:
DISBase.h:396
ThePEG
Herwig::DISBase::pTmin_
Energy pTmin_
Minimum value of .
Definition:
DISBase.h:297
Herwig::DISBase::procProb_
double procProb_
Relative fraction of compton and BGF processes to generate.
Definition:
DISBase.h:267
Herwig::DISBase::pdf_
tcPDFPtr pdf_
PDF object.
Definition:
DISBase.h:337
Herwig::DISBase::xB_
double xB_
Borm momentum fraction.
Definition:
DISBase.h:317
Herwig::DISBase::q_
Lorentz5Momentum q_
q
Definition:
DISBase.h:356
Herwig::DISBase::alpha_
ShowerAlphaPtr alpha_
Coupling.
Definition:
DISBase.h:380
ThePEG::tcPDPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
Herwig::DISBase::power_
double power_
Power for sampling .
Definition:
DISBase.h:427
ThePEG::PDPtr
ThePEG::Ptr< ParticleData >::pointer PDPtr
Herwig::DISBase::hasMECorrection
virtual bool hasMECorrection()
Members for the old-fashioned matrix element correction.
Definition:
DISBase.h:44
Herwig::DISBase::initial_
double initial_
Parameters for the matrix element correction.
Definition:
DISBase.h:257
Herwig::DISBase::acoeff_
double acoeff_
The coefficient for the correlations.
Definition:
DISBase.h:375
Herwig::HwMEBase::POWHEGType
POWHEGType
Virtual members to be overridden by inheriting classes which implement hard corrections.
Definition:
HwMEBase.h:87
Herwig::DISBase::gluon_
PDPtr gluon_
Gluon particle data object.
Definition:
DISBase.h:385
Herwig::DISBase::jac_
double jac_
Jacobian for integral.
Definition:
DISBase.h:432
Herwig::DISBase::muF_
Energy muF_
The factorization scale.
Definition:
DISBase.h:412
Herwig::DISBase::comptonWeight_
double comptonWeight_
Parameters for the POWHEG correction.
Definition:
DISBase.h:287
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::DISBase::hadron_
tcBeamPtr hadron_
The hadron.
Definition:
DISBase.h:402
Herwig::DISBase::comptonInt_
double comptonInt_
Integral for compton process.
Definition:
DISBase.h:272
Herwig::HwMEBase
The HwMEBase class serves a number of purposes.
Definition:
HwMEBase.h:35
Herwig::DISBase::pTBGF_
Energy pTBGF_
BGF parameters.
Definition:
DISBase.h:368
Herwig::DISBase::rot_
LorentzRotation rot_
Rotation to the Breit frame.
Definition:
DISBase.h:341
Herwig::DISBase
The DISBase class is the base class for the implementation of DIS type processes including correction...
Definition:
DISBase.h:23
Herwig::DISBase::hasPOWHEGCorrection
virtual POWHEGType hasPOWHEGCorrection()
Members for the POWHEG stype correction.
Definition:
DISBase.h:86
Herwig::DISBase::contrib_
unsigned int contrib_
Whether to generate the positive, negative or leading order contribution.
Definition:
DISBase.h:422
Generated on Sat Apr 11 2020 14:50:29 for Herwig by
1.8.13