herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
MEfftoVH.h
1
// -*- C++ -*-
2
#ifndef HERWIG_MEfftoVH_H
3
#define HERWIG_MEfftoVH_H
4
//
5
// This is the declaration of the MEfftoVH class.
6
//
7
8
#include "DrellYanBase.h"
9
#include "ThePEG/Helicity/Vertex/AbstractFFVVertex.h"
10
#include "ThePEG/Helicity/Vertex/AbstractVVSVertex.h"
11
#include "Herwig/MatrixElement/ProductionMatrixElement.h"
12
#include "Herwig/PDT/GenericMassGenerator.h"
13
14
namespace
Herwig
{
15
using namespace
ThePEG
;
16
25
class
MEfftoVH
:
public
DrellYanBase
{
26
27
public
:
28
32
MEfftoVH
() : _shapeopt(2), _maxflavour(5), _mh(), _wh() {}
33
40
virtual
unsigned
int
orderInAlphaS()
const
;
41
46
virtual
unsigned
int
orderInAlphaEW()
const
;
47
55
virtual
double
me2()
const
;
56
60
virtual
Energy2 scale()
const
;
61
69
virtual
void
setKinematics();
70
75
virtual
int
nDim()
const
;
76
85
virtual
bool
generateKinematics(
const
double
* r);
86
91
virtual
CrossSection dSigHatDR()
const
;
92
101
virtual
Selector<DiagramIndex>
diagrams(
const
DiagramVector
& dv)
const
;
102
110
virtual
Selector<const ColourLines *>
111
colourGeometries(tcDiagPtr diag)
const
;
112
116
virtual
void
constructVertex(
tSubProPtr
);
118
119
120
public
:
121
128
void
persistentOutput(
PersistentOStream
& os)
const
;
129
135
void
persistentInput(
PersistentIStream
& is,
int
version);
137
144
static
void
Init();
145
146
protected
:
147
156
double
helicityME(vector<SpinorWaveFunction> & fin ,
157
vector<SpinorBarWaveFunction> & ain ,
158
vector<SpinorBarWaveFunction> & fout,
159
vector<SpinorWaveFunction> & aout,
160
bool
me)
const
;
161
169
PDPtr
WPlus
()
const
{
return
_wplus; }
170
174
PDPtr
WMinus
()
const
{
return
_wminus; }
175
179
PDPtr
Z0
()
const
{
return
_z0; }
180
184
PDPtr
higgs
()
const
{
return
_higgs; }
185
189
void
higgs
(
PDPtr
in) {_higgs =in;}
191
195
void
setWWHVertex
(AbstractVVSVertexPtr in) {
196
_vertexWWH = in;
197
}
198
202
void
lineShape
(
unsigned
int
in) {_shapeopt=in;}
203
207
unsigned
int
maxFlavour
()
const
{
return
_maxflavour;}
208
209
protected
:
210
218
virtual
void
doinit();
220
221
private
:
222
227
MEfftoVH
& operator=(
const
MEfftoVH
&) =
delete
;
228
229
private
:
230
234
unsigned
int
_shapeopt
;
235
239
unsigned
int
_maxflavour
;
240
248
PDPtr
_wplus
;
249
253
PDPtr
_wminus
;
254
258
PDPtr
_z0
;
259
263
PDPtr
_higgs
;
265
273
AbstractFFVVertexPtr
_vertexFFW
;
274
278
AbstractFFVVertexPtr
_vertexFFZ
;
279
283
AbstractVVSVertexPtr
_vertexWWH
;
285
289
Energy
_mh
;
290
294
Energy
_wh
;
295
299
GenericMassGeneratorPtr
_hmass
;
300
304
ProductionMatrixElement
_me
;
305
};
306
307
}
308
309
#endif
/* HERWIG_MEfftoVH_H */
ThePEG::PersistentIStream
Herwig::MEfftoVH::maxFlavour
unsigned int maxFlavour() const
Maximum flavour of the incoming partons.
Definition:
MEfftoVH.h:207
ThePEG::PersistentOStream
Herwig::MEfftoVH::_me
ProductionMatrixElement _me
Matrix element for spin correlations.
Definition:
MEfftoVH.h:304
Herwig::DrellYanBase
The DrellYanBase class class provides a base class for the implemented of Drell-Yan type processes an...
Definition:
DrellYanBase.h:23
Herwig::MEfftoVH::_vertexWWH
AbstractVVSVertexPtr _vertexWWH
Vertex for vector-vector-Higgs.
Definition:
MEfftoVH.h:283
ThePEG
Herwig::MEfftoVH::_vertexFFZ
AbstractFFVVertexPtr _vertexFFZ
Vertex for fermion-fermion-Z.
Definition:
MEfftoVH.h:278
Herwig::MEfftoVH::higgs
PDPtr higgs() const
Access to the higgs data.
Definition:
MEfftoVH.h:184
Herwig::MEfftoVH::_hmass
GenericMassGeneratorPtr _hmass
The mass generator for the Higgs.
Definition:
MEfftoVH.h:299
Herwig::MEfftoVH::Z0
PDPtr Z0() const
Access to the data.
Definition:
MEfftoVH.h:179
Herwig::MEfftoVH::_vertexFFW
AbstractFFVVertexPtr _vertexFFW
The vertices for the calculation of the matrix element.
Definition:
MEfftoVH.h:273
Herwig::MEfftoVH::_mh
Energy _mh
On-shell mass for the higgs.
Definition:
MEfftoVH.h:289
Herwig::ProductionMatrixElement
The storage of the helicity amplitude expression for the matrix element of a hard process...
Definition:
ProductionMatrixElement.h:34
Herwig::MEfftoVH::_maxflavour
unsigned int _maxflavour
The allowed flavours of the incoming quarks.
Definition:
MEfftoVH.h:239
Herwig::MEfftoVH::higgs
void higgs(PDPtr in)
Set the higgs data.
Definition:
MEfftoVH.h:189
Herwig::MEfftoVH::MEfftoVH
MEfftoVH()
The default constructor.
Definition:
MEfftoVH.h:32
Herwig::MEfftoVH::_z0
PDPtr _z0
Definition:
MEfftoVH.h:258
Herwig::MEfftoVH
The MEfftoVH class is the base class for processes.
Definition:
MEfftoVH.h:25
Herwig::MEfftoVH::_wplus
PDPtr _wplus
The intermediate vector bosons.
Definition:
MEfftoVH.h:248
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
ThePEG::PDPtr
ThePEG::Ptr< ParticleData >::pointer PDPtr
Herwig::MEfftoVH::_shapeopt
unsigned int _shapeopt
Defines the Higgs resonance shape.
Definition:
MEfftoVH.h:234
ThePEG::Selector
ThePEG::MEBase::DiagramVector
vector< DiagPtr > DiagramVector
Herwig::MEfftoVH::WMinus
PDPtr WMinus() const
Access to the data.
Definition:
MEfftoVH.h:174
Herwig::MEfftoVH::lineShape
void lineShape(unsigned int in)
Set the line shape treatment.
Definition:
MEfftoVH.h:202
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::MEfftoVH::WPlus
PDPtr WPlus() const
Access to the vector ParticleData objects.
Definition:
MEfftoVH.h:169
Herwig::MEfftoVH::_wminus
PDPtr _wminus
Definition:
MEfftoVH.h:253
Herwig::MEfftoVH::setWWHVertex
void setWWHVertex(AbstractVVSVertexPtr in)
Set the pointer to the vector-vector-Higgs vertex.
Definition:
MEfftoVH.h:195
Herwig::MEfftoVH::_higgs
PDPtr _higgs
The higgs bosom.
Definition:
MEfftoVH.h:263
Herwig::MEfftoVH::_wh
Energy _wh
On-shell width for the higgs.
Definition:
MEfftoVH.h:294
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13