herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
Hadron
MEPP2VGamma.h
1
// -*- C++ -*-
2
#ifndef HERWIG_MEPP2VGamma_H
3
#define HERWIG_MEPP2VGamma_H
4
//
5
// This is the declaration of the MEPP2VGamma class.
6
//
7
8
#include "Herwig/MatrixElement/HwMEBase.h"
9
#include "ThePEG/Helicity/Vertex/AbstractFFVVertex.h"
10
#include "ThePEG/Helicity/Vertex/AbstractVVVVertex.h"
11
#include "Herwig/MatrixElement/ProductionMatrixElement.h"
12
13
namespace
Herwig
{
14
15
using namespace
ThePEG
;
16
23
class
MEPP2VGamma
:
public
HwMEBase
{
24
25
public
:
26
30
MEPP2VGamma
();
31
38
virtual
unsigned
int
orderInAlphaS()
const
;
39
44
virtual
unsigned
int
orderInAlphaEW()
const
;
45
53
virtual
double
me2()
const
;
54
58
virtual
Energy2 scale()
const
;
59
63
virtual
void
getDiagrams()
const
;
64
73
virtual
Selector<DiagramIndex>
diagrams(
const
DiagramVector
& dv)
const
;
74
82
virtual
Selector<const ColourLines *>
83
colourGeometries(tcDiagPtr diag)
const
;
84
88
virtual
void
constructVertex(
tSubProPtr
);
90
91
92
public
:
93
100
void
persistentOutput(
PersistentOStream
& os)
const
;
101
107
void
persistentInput(
PersistentIStream
& is,
int
version);
109
116
static
void
Init();
117
118
protected
:
119
128
double
WGammaME(vector<SpinorWaveFunction> & f1,
129
vector<SpinorBarWaveFunction> & a1,
130
vector<VectorWaveFunction> & v1,
131
vector<VectorWaveFunction> & v2,
132
bool
me)
const
;
133
142
double
ZGammaME(vector<SpinorWaveFunction> & f1,
143
vector<SpinorBarWaveFunction> & a1,
144
vector<VectorWaveFunction> & v1,
145
vector<VectorWaveFunction> & v2,
146
bool
me)
const
;
147
148
protected
:
149
156
virtual
IBPtr
clone()
const
;
157
162
virtual
IBPtr
fullclone()
const
;
164
165
protected
:
166
174
virtual
void
doinit();
176
177
private
:
178
183
MEPP2VGamma
& operator=(
const
MEPP2VGamma
&) =
delete
;
184
185
private
:
186
194
AbstractFFVVertexPtr
FFPvertex_
;
195
199
AbstractFFVVertexPtr
FFWvertex_
;
200
204
AbstractFFVVertexPtr
FFZvertex_
;
205
209
AbstractVVVVertexPtr
WWWvertex_
;
211
215
unsigned
int
process_
;
216
220
int
maxflavour_
;
221
225
unsigned
int
massOption_
;
226
230
mutable
ProductionMatrixElement
me_
;
231
};
232
233
}
234
235
#endif
/* HERWIG_MEPP2VGamma_H */
Herwig::MEPP2VGamma
The MEPP2VGamma class implements the .
Definition:
MEPP2VGamma.h:23
ThePEG::PersistentIStream
Herwig::MEPP2VGamma::me_
ProductionMatrixElement me_
The matrix element.
Definition:
MEPP2VGamma.h:230
Herwig::MEPP2VGamma::FFWvertex_
AbstractFFVVertexPtr FFWvertex_
FFWVertex.
Definition:
MEPP2VGamma.h:199
ThePEG::PersistentOStream
Herwig::MEPP2VGamma::FFZvertex_
AbstractFFVVertexPtr FFZvertex_
FFZVertex.
Definition:
MEPP2VGamma.h:204
Herwig::MEPP2VGamma::WWWvertex_
AbstractVVVVertexPtr WWWvertex_
WWW Vertex.
Definition:
MEPP2VGamma.h:209
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG
Herwig::MEPP2VGamma::maxflavour_
int maxflavour_
Allowed flavours of the incoming quarks.
Definition:
MEPP2VGamma.h:220
Herwig::ProductionMatrixElement
The storage of the helicity amplitude expression for the matrix element of a hard process...
Definition:
ProductionMatrixElement.h:34
Herwig::MEPP2VGamma::massOption_
unsigned int massOption_
Treatment of the the boson masses.
Definition:
MEPP2VGamma.h:225
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
Herwig::MEPP2VGamma::process_
unsigned int process_
Processes.
Definition:
MEPP2VGamma.h:215
ThePEG::Selector
ThePEG::MEBase::DiagramVector
vector< DiagPtr > DiagramVector
Herwig::MEPP2VGamma::FFPvertex_
AbstractFFVVertexPtr FFPvertex_
Vertices.
Definition:
MEPP2VGamma.h:194
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::HwMEBase
The HwMEBase class serves a number of purposes.
Definition:
HwMEBase.h:35
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13