herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Shower
QTilde
Couplings
ShowerAlphaQCD.h
1
// -*- C++ -*-
2
//
3
// ShowerAlphaQCD.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_ShowerAlphaQCD_H
10
#define HERWIG_ShowerAlphaQCD_H
11
//
12
// This is the declaration of the ShowerAlphaQCD class.
13
//
14
15
#include "Herwig/Shower/ShowerAlpha.h"
16
17
namespace
Herwig
{
18
19
using namespace
ThePEG
;
20
33
class
ShowerAlphaQCD
:
public
ShowerAlpha
{
34
35
public
:
36
40
ShowerAlphaQCD
() :
ShowerAlpha
(),
41
_qmin(0.630882*GeV), _asType(1), _asMaxNP(1.0),
42
_thresholds(4), _lambda(4),
43
_nloop(3),_thresopt(false),
44
_alphain(0.118),_tolerance(1e-10),
45
_maxtry(100),_alphamin(0.),_val0(1.), _optInputScale(91.1876_GeV) {}
46
47
public
:
48
59
virtual
double
value(
const
Energy2 scale)
const
;
60
65
virtual
double
overestimateValue()
const
;
66
70
virtual
double
ratio(
const
Energy2 scale,
double
factor =1.)
const
;
71
75
virtual
void
initialize
() { doinit(); }
76
81
string
value(
string
);
82
88
string
check(
string
args);
89
91
96
Energy
lambdaQCD
(
unsigned
int
nf) {
97
if
(nf <= 3)
return
_lambda[0];
98
else
if
(nf==4 || nf==5)
return
_lambda[nf-3];
99
else
return
_lambda[3];
100
}
101
107
const
vector<Energy>&
quarkMasses
()
const
{
return
_quarkMasses; }
108
109
public
:
110
117
void
persistentOutput(
PersistentOStream
& os)
const
;
118
124
void
persistentInput(
PersistentIStream
& is,
int
version);
126
133
static
void
Init();
134
135
protected
:
136
143
virtual
IBPtr
clone()
const
;
144
149
virtual
IBPtr
fullclone()
const
;
151
152
153
protected
:
154
162
virtual
void
doinit();
164
165
private
:
166
179
Energy computeLambda(Energy
match
,
double
alpha,
unsigned
int
nflav)
const
;
180
186
pair<short, Energy> getLamNfTwoLoop(Energy q)
const
;
188
189
private
:
190
195
ShowerAlphaQCD
& operator=(
const
ShowerAlphaQCD
&) =
delete
;
196
197
private
:
198
202
Energy
_qmin
;
203
208
int
_asType
;
209
214
double
_asMaxNP
;
215
219
vector<Energy>
_thresholds
;
220
224
vector<Energy>
_lambda
;
225
229
unsigned
int
_nloop
;
230
234
bool
_thresopt
;
235
239
double
_alphain
;
240
244
double
_tolerance
;
245
249
unsigned
int
_maxtry
;
250
254
double
_alphamin
;
255
259
double
_val0
;
260
265
Energy
_optInputScale
;
266
271
vector<Energy>
_quarkMasses
;
272
};
273
274
}
275
276
#endif
/* HERWIG_ShowerAlphaQCD_H */
Herwig::ShowerAlphaQCD::_qmin
Energy _qmin
Minimum value of the scale.
Definition:
ShowerAlphaQCD.h:202
ThePEG::PersistentIStream
Herwig::ShowerAlphaQCD::_asMaxNP
double _asMaxNP
Another parameter, a possible (maximum) value of alpha in the non-perturbative region.
Definition:
ShowerAlphaQCD.h:214
ThePEG::PersistentOStream
Herwig::ShowerAlphaQCD::_nloop
unsigned int _nloop
Option for the number of loops.
Definition:
ShowerAlphaQCD.h:229
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG
Herwig::ShowerAlphaQCD::ShowerAlphaQCD
ShowerAlphaQCD()
The default constructor.
Definition:
ShowerAlphaQCD.h:40
Herwig::ShowerAlphaQCD::_alphamin
double _alphamin
The minimum value of the coupling.
Definition:
ShowerAlphaQCD.h:254
Herwig::ShowerAlphaQCD::_quarkMasses
vector< Energy > _quarkMasses
The quark masses to be used; if not empty these masses should be considered instead of the ones set i...
Definition:
ShowerAlphaQCD.h:271
Herwig::ShowerAlphaQCD::_asType
int _asType
Parameter controlling the behaviour of in the non-perturbative region.
Definition:
ShowerAlphaQCD.h:208
Herwig::ShowerAlphaQCD::lambdaQCD
Energy lambdaQCD(unsigned int nf)
Get the value of .
Definition:
ShowerAlphaQCD.h:96
Herwig::ShowerAlphaQCD::_alphain
double _alphain
Input value of .
Definition:
ShowerAlphaQCD.h:239
Herwig::ShowerAlphaQCD::initialize
virtual void initialize()
Initialize this coupling.
Definition:
ShowerAlphaQCD.h:75
Herwig::ShowerAlphaQCD::_val0
double _val0
Value of at the minimum scale.
Definition:
ShowerAlphaQCD.h:259
Herwig::ShowerAlphaQCD::_tolerance
double _tolerance
Tolerance for discontinuities at the thresholds.
Definition:
ShowerAlphaQCD.h:244
Herwig::ShowerAlphaQCD::_optInputScale
Energy _optInputScale
An optional input scale to be used for the input alphas; if zero MZ will be used out of the particle ...
Definition:
ShowerAlphaQCD.h:265
Herwig::ShowerAlphaQCD::quarkMasses
const vector< Energy > & quarkMasses() const
Return the quark masses to be used; if not empty these masses should be considered instead of the one...
Definition:
ShowerAlphaQCD.h:107
Herwig::ShowerAlphaQCD
This concrete class provides the definition of the pure virtual function value() and overestimateValu...
Definition:
ShowerAlphaQCD.h:33
Herwig::ShowerAlpha
This class is the abstract class from which all types of running couplings used in the Showering deri...
Definition:
ShowerAlpha.h:49
Herwig::ShowerAlphaQCD::_thresopt
bool _thresopt
Option for the threshold masses.
Definition:
ShowerAlphaQCD.h:234
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::ShowerAlphaQCD::_thresholds
vector< Energy > _thresholds
Thresholds for the different number of flavours.
Definition:
ShowerAlphaQCD.h:219
Herwig::RandomHelpers::match
matcher< Density > match(const Generator< Density > &gen)
Indicate that the argument density should be matched to the previous one in a piecewise definition...
Definition:
RandomHelpers.h:573
Herwig::ShowerAlphaQCD::_lambda
vector< Energy > _lambda
for the different number of flavours
Definition:
ShowerAlphaQCD.h:224
Herwig::ShowerAlphaQCD::_maxtry
unsigned int _maxtry
Maximum number of iterations for the Newton-Raphson method to converge.
Definition:
ShowerAlphaQCD.h:249
Generated on Sat Apr 11 2020 14:50:31 for Herwig by
1.8.13