herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
MatrixElement
Powheg
MEqq2W2ffPowheg.h
1
// -*- C++ -*-
2
//
3
// MEqq2W2ffPowheg.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_MEqq2W2ffPowheg_H
10
#define HERWIG_MEqq2W2ffPowheg_H
11
//
12
// This is the declaration of the MEqq2W2ffPowheg class.
13
//
14
15
#include "Herwig/MatrixElement/Hadron/MEqq2W2ff.h"
16
#include "ThePEG/PDF/BeamParticleData.h"
17
18
namespace
Herwig
{
19
using namespace
ThePEG
;
20
28
class
MEqq2W2ffPowheg
:
public
MEqq2W2ff
{
29
30
public
:
31
35
MEqq2W2ffPowheg
();
36
42
virtual
Energy2
scale
()
const
;
43
48
virtual
int
nDim
()
const
;
49
57
virtual
bool
generateKinematics
(
const
double
* r);
58
64
virtual
CrossSection
dSigHatDR
()
const
;
66
67
public
:
68
75
void
persistentOutput
(
PersistentOStream
& os)
const
;
76
82
void
persistentInput
(
PersistentIStream
& is,
int
version);
84
91
static
void
Init
();
92
93
protected
:
94
99
double
NLOweight
()
const
;
103
double
x
(
double
xt,
double
v)
const
;
107
double
x_a
(
double
x
,
double
v)
const
;
111
double
x_b
(
double
x
,
double
v)
const
;
115
double
xbar
(
double
v)
const
;
120
double
Ltilde_qg
(
double
x
,
double
v)
const
;
125
double
Ltilde_gq
(
double
x
,
double
v)
const
;
130
double
Ltilde_qq
(
double
x
,
double
v)
const
;
134
double
Vtilde_qq
()
const
;
139
double
Ccalbar_qg
(
double
x
)
const
;
144
double
Fcal_qg
(
double
x
,
double
v)
const
;
149
double
Fcal_gq
(
double
x
,
double
v)
const
;
154
double
Fcal_qq
(
double
x
,
double
v)
const
;
159
double
Ftilde_qg
(
double
xt,
double
v)
const
;
164
double
Ftilde_gq
(
double
xt,
double
v)
const
;
169
double
Ftilde_qq
(
double
xt,
double
v)
const
;
174
double
Ctilde_qg
(
double
x
,
double
v)
const
;
179
double
Ctilde_gq
(
double
x
,
double
v)
const
;
184
double
Ctilde_qq
(
double
x
,
double
v)
const
;
185
186
protected
:
187
194
virtual
IBPtr
clone
()
const
{
return
new_ptr(*
this
); }
195
200
virtual
IBPtr
fullclone
()
const
{
return
new_ptr(*
this
); }
202
203
protected
:
204
212
virtual
void
doinit
();
214
215
private
:
216
221
MEqq2W2ffPowheg
&
operator=
(
const
MEqq2W2ffPowheg
&) =
delete
;
222
223
private
:
224
228
mutable
double
_xb_a
;
229
233
mutable
double
_xb_b
;
234
238
mutable
tcPDPtr
_parton_a
;
239
243
mutable
tcPDPtr
_parton_b
;
244
248
mutable
Ptr<BeamParticleData>::transient_const_pointer
_hadron_A
;
249
253
mutable
Ptr<BeamParticleData>::transient_const_pointer
_hadron_B
;
254
258
tcPDPtr
_gluon
;
259
263
const
double
TR_
;
264
268
const
double
CF_
;
269
273
mutable
double
_alphaS2Pi
;
274
278
mutable
Energy2
_mll2
;
279
283
mutable
Energy2
_mu2
;
284
292
unsigned
int
_contrib
;
293
297
unsigned
int
_nlo_alphaS_opt
;
298
302
double
_fixed_alphaS
;
303
307
double
_a
;
308
312
double
_p
;
313
317
double
_eps
;
319
327
unsigned
int
_scaleopt
;
328
332
Energy
_fixedScale
;
333
337
double
_scaleFact
;
339
347
double
_xt
;
348
352
double
_v
;
354
362
mutable
double
_oldq
;
363
367
mutable
double
_oldqbar
;
369
};
370
371
}
372
373
#endif
/* HERWIG_MEqq2W2ffPowheg_H */
Herwig::MEqq2W2ffPowheg
The MEqq2W2ffPowheg class implements the matrix element for including the decay of the to Standard ...
Definition:
MEqq2W2ffPowheg.h:28
Herwig::MEqq2W2ffPowheg::_gluon
tcPDPtr _gluon
the ParticleData object for the gluon
Definition:
MEqq2W2ffPowheg.h:258
Herwig::MEqq2W2ffPowheg::_oldq
double _oldq
Values of the PDF's before radiation.
Definition:
MEqq2W2ffPowheg.h:362
Herwig::MEqq2W2ffPowheg::_oldqbar
double _oldqbar
For the antiquark.
Definition:
MEqq2W2ffPowheg.h:367
Herwig::MEqq2W2ffPowheg::x
double x(double xt, double v) const
Calculate the variable from the integration variables.
Herwig::MEqq2W2ffPowheg::Ftilde_qq
double Ftilde_qq(double xt, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::Ctilde_qq
double Ctilde_qq(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::MEqq2W2ffPowheg::generateKinematics
virtual bool generateKinematics(const double *r)
Generate internal degrees of freedom given 'nDim()' uniform random numbers in the interval ]0,...
Herwig::MEqq2W2ffPowheg::NLOweight
double NLOweight() const
Calculate the correction weight with which leading-order configurations are re-weighted.
Herwig::MEqq2W2ffPowheg::_fixed_alphaS
double _fixed_alphaS
The value of alphaS to use for the nlo weight if _nloalphaSopt=1.
Definition:
MEqq2W2ffPowheg.h:302
Herwig::MEqq2W2ffPowheg::_hadron_B
Ptr< BeamParticleData >::transient_const_pointer _hadron_B
The BeamParticleData object for the second hadron.
Definition:
MEqq2W2ffPowheg.h:253
Herwig::MEqq2W2ffPowheg::nDim
virtual int nDim() const
The number of internal degreed of freedom used in the matrix element.
Herwig::MEqq2W2ffPowheg::Ltilde_qq
double Ltilde_qq(double x, double v) const
Calculate the ratio of the radiative luminosity funcion to the Born luminosity function for the init...
Herwig::MEqq2W2ffPowheg::Ftilde_gq
double Ftilde_gq(double xt, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::Fcal_gq
double Fcal_gq(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::_p
double _p
The power of the correction term to reduce the negative contribution.
Definition:
MEqq2W2ffPowheg.h:312
Herwig::MEqq2W2ffPowheg::xbar
double xbar(double v) const
Calculate the minimum of .
Herwig::MEqq2W2ffPowheg::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::MEqq2W2ffPowheg::_eps
double _eps
Cut-off for the correction function.
Definition:
MEqq2W2ffPowheg.h:317
Herwig::MEqq2W2ffPowheg::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::MEqq2W2ffPowheg::_mu2
Energy2 _mu2
The renormalization/factorization scale.
Definition:
MEqq2W2ffPowheg.h:283
Herwig::MEqq2W2ffPowheg::_hadron_A
Ptr< BeamParticleData >::transient_const_pointer _hadron_A
The BeamParticleData object for the first hadron.
Definition:
MEqq2W2ffPowheg.h:248
Herwig::MEqq2W2ffPowheg::_parton_a
tcPDPtr _parton_a
The ParticleData object for the first parton in the Born process.
Definition:
MEqq2W2ffPowheg.h:238
Herwig::MEqq2W2ffPowheg::_xb_b
double _xb_b
The momentum fraction of the second parton in the Born process.
Definition:
MEqq2W2ffPowheg.h:233
Herwig::MEqq2W2ffPowheg::Ctilde_qg
double Ctilde_qg(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::Ccalbar_qg
double Ccalbar_qg(double x) const
Function for calculation of the and initiated real contribution.
Herwig::MEqq2W2ffPowheg::_contrib
unsigned int _contrib
Parameters for the NLO weight.
Definition:
MEqq2W2ffPowheg.h:292
Herwig::MEqq2W2ffPowheg::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Definition:
MEqq2W2ffPowheg.h:194
Herwig::MEqq2W2ffPowheg::dSigHatDR
virtual CrossSection dSigHatDR() const
Return the matrix element for the kinematical configuation previously provided by the last call to se...
Herwig::MEqq2W2ffPowheg::_nlo_alphaS_opt
unsigned int _nlo_alphaS_opt
Whether to use a fixed or a running QCD coupling for the NLO weight.
Definition:
MEqq2W2ffPowheg.h:297
Herwig::MEqq2W2ffPowheg::x_b
double x_b(double x, double v) const
Calculate the momentum fraction of second parton.
Herwig::MEqq2W2ffPowheg::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::MEqq2W2ffPowheg::scale
virtual Energy2 scale() const
Return the scale associated with the last set phase space point.
Herwig::MEqq2W2ffPowheg::x_a
double x_a(double x, double v) const
Calculate the momentum fraction of the first parton.
Herwig::MEqq2W2ffPowheg::_xb_a
double _xb_a
The momentum fraction of the first parton in the Born process.
Definition:
MEqq2W2ffPowheg.h:228
Herwig::MEqq2W2ffPowheg::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition:
MEqq2W2ffPowheg.h:200
Herwig::MEqq2W2ffPowheg::Fcal_qq
double Fcal_qq(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::_parton_b
tcPDPtr _parton_b
The ParticleData object for the second parton in the Born process.
Definition:
MEqq2W2ffPowheg.h:243
Herwig::MEqq2W2ffPowheg::CF_
const double CF_
The colour factor.
Definition:
MEqq2W2ffPowheg.h:268
Herwig::MEqq2W2ffPowheg::_xt
double _xt
Radiation variables.
Definition:
MEqq2W2ffPowheg.h:347
Herwig::MEqq2W2ffPowheg::Ltilde_gq
double Ltilde_gq(double x, double v) const
Calculate the ratio of the radiative luminosity funcion to the Born luminosity function for the init...
Herwig::MEqq2W2ffPowheg::_v
double _v
The angular variable.
Definition:
MEqq2W2ffPowheg.h:352
Herwig::MEqq2W2ffPowheg::_a
double _a
The magnitude of the correction term to reduce the negative contribution.
Definition:
MEqq2W2ffPowheg.h:307
Herwig::MEqq2W2ffPowheg::_scaleopt
unsigned int _scaleopt
Choice of the scale.
Definition:
MEqq2W2ffPowheg.h:327
Herwig::MEqq2W2ffPowheg::Ftilde_qg
double Ftilde_qg(double xt, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::_scaleFact
double _scaleFact
Prefactor if variable scale used.
Definition:
MEqq2W2ffPowheg.h:337
Herwig::MEqq2W2ffPowheg::Fcal_qg
double Fcal_qg(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::_alphaS2Pi
double _alphaS2Pi
The value of used for the calculation.
Definition:
MEqq2W2ffPowheg.h:273
Herwig::MEqq2W2ffPowheg::operator=
MEqq2W2ffPowheg & operator=(const MEqq2W2ffPowheg &)=delete
The assignment operator is private and must never be called.
Herwig::MEqq2W2ffPowheg::Ctilde_gq
double Ctilde_gq(double x, double v) const
Function for calculation of the initiated real contribution.
Herwig::MEqq2W2ffPowheg::MEqq2W2ffPowheg
MEqq2W2ffPowheg()
The default constructor.
Herwig::MEqq2W2ffPowheg::Ltilde_qg
double Ltilde_qg(double x, double v) const
Calculate the ratio of the radiative luminosity funcion to the Born luminosity function for the init...
Herwig::MEqq2W2ffPowheg::TR_
const double TR_
The colour factor.
Definition:
MEqq2W2ffPowheg.h:263
Herwig::MEqq2W2ffPowheg::_fixedScale
Energy _fixedScale
Fixed scale if used.
Definition:
MEqq2W2ffPowheg.h:332
Herwig::MEqq2W2ffPowheg::Vtilde_qq
double Vtilde_qq() const
Calculate the soft-virtual contribution to the NLO weight.
Herwig::MEqq2W2ffPowheg::_mll2
Energy2 _mll2
The mass squared of the lepton pair.
Definition:
MEqq2W2ffPowheg.h:278
Herwig::MEqq2W2ff
The MEqq2W2ff class implements the matrix element for including the decay of the to Standard Model ...
Definition:
MEqq2W2ff.h:33
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::tcPDPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6