herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Hadronization
PartonSplitter.h
1
// -*- C++ -*-
2
//
3
// PartonSplitter.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_PartonSplitter_H
10
#define HERWIG_PartonSplitter_H
11
12
#include "CluHadConfig.h"
13
#include <ThePEG/Interface/Interfaced.h>
14
#include <ThePEG/Utilities/Selector.h>
15
#include "PartonSplitter.fh"
16
17
namespace
Herwig
{
18
19
20
using namespace
ThePEG
;
21
22
44
class
PartonSplitter
:
public
Interfaced
{
45
46
public
:
47
51
PartonSplitter
() :
52
_splitPwtUquark(1),
53
_splitPwtDquark(1),
54
_splitPwtSquark(0.5),
55
_gluonDistance(
ZERO
),
56
_splitGluon(0),
57
_enhanceSProb(0),
58
_m0(10.*GeV),
59
_massMeasure(0)
60
{}
61
69
void
split(
PVector
& tagged);
70
71
public
:
72
79
void
persistentOutput(
PersistentOStream
& os)
const
;
80
86
void
persistentInput(
PersistentIStream
& is,
int
version);
88
95
static
void
Init();
96
97
protected
:
98
105
virtual
IBPtr
clone()
const
;
106
111
virtual
IBPtr
fullclone()
const
;
113
114
protected
:
115
123
virtual
void
doinit();
124
126
127
private
:
128
132
PartonSplitter
& operator=(
const
PartonSplitter
&) =
delete
;
133
141
void
splitTimeLikeGluon(
tcPPtr
gluon,
PPtr
& quark,
PPtr
& anti);
142
143
153
void
massSplitTimeLikeGluon(
tcPPtr
gluon,
PPtr
& quark,
PPtr
& anti,
154
size_t
i);
155
161
void
colourSorted(
PVector
& tagged);
162
166
double
enhanceStrange(
size_t
i);
167
168
private
:
169
174
double
_splitPwtUquark
;
175
double
_splitPwtDquark;
176
double
_splitPwtSquark;
177
181
Selector<PDPtr,double>
_quarkSelector
;
182
186
Length
_gluonDistance
;
187
191
int
_splitGluon
;
192
197
vector<int>
_colSingletSize
;
198
203
vector<Energy2>
_colSingletm2
;
204
209
int
_enhanceSProb
;
210
214
Energy
_m0
;
215
220
int
_massMeasure
;
221
226
const
double
_maxScale = 20.;
227
228
};
229
230
}
231
232
#endif
/* HERWIG_PartonSplitter_H */
ThePEG::PPtr
ThePEG::Ptr< Particle >::pointer PPtr
ThePEG::PersistentIStream
Herwig::PartonSplitter::_gluonDistance
Length _gluonDistance
c tau for gluon decays
Definition:
PartonSplitter.h:186
Herwig::PartonSplitter
This class splits the gluons from the end of the shower.
Definition:
PartonSplitter.h:44
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG
Herwig::PartonSplitter::_splitPwtUquark
double _splitPwtUquark
Different variables for the weight for splitting into various light quark species.
Definition:
PartonSplitter.h:174
Herwig::PartonSplitter::_colSingletm2
vector< Energy2 > _colSingletm2
Vector that stores the masses of the colour-singlets or of a colourless particle. ...
Definition:
PartonSplitter.h:203
Herwig::PartonSplitter::_massMeasure
int _massMeasure
Flag that switches between mass measures used in strangeness enhancement: cluster mass...
Definition:
PartonSplitter.h:220
ThePEG::tcPPtr
ThePEG::Ptr< Particle >::transient_const_pointer tcPPtr
ThePEG::Interfaced
Herwig::PartonSplitter::_enhanceSProb
int _enhanceSProb
Option to choose which functional form to use for strangeness production.
Definition:
PartonSplitter.h:209
ThePEG::Selector< PDPtr, double >
Herwig::PartonSplitter::_quarkSelector
Selector< PDPtr, double > _quarkSelector
The selector to pick the type of quark.
Definition:
PartonSplitter.h:181
Herwig::PartonSplitter::PartonSplitter
PartonSplitter()
Default constructor.
Definition:
PartonSplitter.h:51
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::PartonSplitter::_colSingletSize
vector< int > _colSingletSize
Vector that stores the index in the event record of the anti-triplet of the colour-singlets, or of a colourless particle.
Definition:
PartonSplitter.h:197
ThePEG::PVector
vector< PPtr > PVector
Herwig::PartonSplitter::_splitGluon
int _splitGluon
Flag used to determine between normal gluon splitting and alternative gluon splitting.
Definition:
PartonSplitter.h:191
ZERO
constexpr ZeroUnit ZERO
Herwig::PartonSplitter::_m0
Energy _m0
Characteristic mass scale for strangeness enhancement.
Definition:
PartonSplitter.h:214
Generated on Sat Apr 11 2020 14:50:31 for Herwig by
1.8.13