Herwig 7
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.1.0
Shower
Dipole
Kernels
FIMDecayqx2qgxDipoleKernel.h
1
// -*- C++ -*-
2
#ifndef HERWIG_FIMDecayqx2qgxDipoleKernel_H
3
#define HERWIG_FIMDecayqx2qgxDipoleKernel_H
4
//
5
// This is the declaration of the FIMDecayqx2qgxDipoleKernel class.
6
//
7
8
#include "DipoleSplittingKernel.h"
9
10
namespace
Herwig
{
11
12
using namespace
ThePEG
;
13
23
class
FIMDecayqx2qgxDipoleKernel
:
public
DipoleSplittingKernel
{
24
25
public
:
26
32
FIMDecayqx2qgxDipoleKernel
();
33
37
virtual
~
FIMDecayqx2qgxDipoleKernel
();
39
40
public
:
45
virtual
bool
canHandle(
const
DipoleIndex
&)
const
;
46
52
virtual
bool
canHandleEquivalent(
const
DipoleIndex
& a,
53
const
DipoleSplittingKernel
& sk,
54
const
DipoleIndex
& b)
const
;
55
60
virtual
tcPDPtr
emitter(
const
DipoleIndex
& ind)
const
;
61
66
virtual
tcPDPtr
emission(
const
DipoleIndex
&)
const
;
67
72
virtual
tcPDPtr
spectator(
const
DipoleIndex
& ind)
const
;
73
78
virtual
double
evaluate(
const
DipoleSplittingInfo
& split)
const
;
79
80
public
:
81
88
void
persistentOutput(
PersistentOStream
& os)
const
;
89
95
void
persistentInput(
PersistentIStream
& is,
int
version);
97
104
static
void
Init();
105
106
protected
:
107
114
virtual
IBPtr
clone()
const
;
115
120
virtual
IBPtr
fullclone()
const
;
122
123
124
// If needed, insert declarations of virtual function defined in the
125
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
126
127
128
private
:
129
134
static
ClassDescription<FIMDecayqx2qgxDipoleKernel>
initFIMDecayqx2qgxDipoleKernel
;
135
140
FIMDecayqx2qgxDipoleKernel
& operator=(
const
FIMDecayqx2qgxDipoleKernel
&);
141
142
};
143
144
}
145
146
#include "ThePEG/Utilities/ClassTraits.h"
147
148
namespace
ThePEG
{
149
154
template
<>
155
struct
BaseClassTrait
<
Herwig
::
FIMDecayqx2qgxDipoleKernel
,1> {
157
typedef
Herwig::DipoleSplittingKernel
NthBase;
158
};
159
162
template
<>
163
struct
ClassTraits
<
Herwig
::
FIMDecayqx2qgxDipoleKernel
>
164
:
public
ClassTraitsBase
<Herwig::FIMDecayqx2qgxDipoleKernel> {
166
static
string
className() {
return
"Herwig::FIMDecayqx2qgxDipoleKernel"
; }
174
static
string
library() {
return
"HwDipoleShower.so"
; }
175
};
176
179
}
180
181
#endif
/* HERWIG_FIMDecayqx2qgxDipoleKernel_H */
ThePEG::PersistentIStream
Herwig::FIMDecayqx2qgxDipoleKernel
FIMDecayqx2qgxDipoleKernel implements the q -> qg splitting off a final-initial decay dipole and incl...
Definition:
FIMDecayqx2qgxDipoleKernel.h:23
ThePEG::ClassDescription
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Herwig::DipoleIndex
DipoleIndex is used to index splitting generators for a particular dipole.
Definition:
DipoleSplittingInfo.h:34
ThePEG
Herwig::FIMDecayqx2qgxDipoleKernel::initFIMDecayqx2qgxDipoleKernel
static ClassDescription< FIMDecayqx2qgxDipoleKernel > initFIMDecayqx2qgxDipoleKernel
The static object used to initialize the description of this class.
Definition:
FIMDecayqx2qgxDipoleKernel.h:134
ThePEG::tcPDPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::ClassTraits
Herwig::DipoleSplittingInfo
DipoleSplittingInfo contains all parameters to generate a full dipole splitting.
Definition:
DipoleSplittingInfo.h:185
ThePEG::BaseClassTrait
Herwig::DipoleSplittingKernel
DipoleSplittingKernel is the base class for all kernels used within the dipole shower.
Definition:
DipoleSplittingKernel.h:37
ThePEG::ClassTraitsBase
Generated on Sat Jun 17 2017 13:52:09 for Herwig by
1.8.13