herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
MEfftoffH.h
1
// -*- C++ -*-
2
#ifndef HERWIG_MEfftoffH_H
3
#define HERWIG_MEfftoffH_H
4
//
5
// This is the declaration of the MEfftoffH class.
6
//
7
8
#include "HwMEBase.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
16
using namespace
ThePEG
;
17
25
class
MEfftoffH
:
public
HwMEBase
{
26
27
public
:
28
32
MEfftoffH
() : _shapeopt(2), _maxflavour(5), _minflavour(1), _process(0),
33
_mh(), _wh(), _swap(false) {}
34
41
virtual
unsigned
int
orderInAlphaS()
const
;
42
47
virtual
unsigned
int
orderInAlphaEW()
const
;
48
56
virtual
double
me2()
const
;
57
61
virtual
Energy2 scale()
const
;
62
70
virtual
void
setKinematics();
71
76
virtual
int
nDim()
const
;
77
86
virtual
bool
generateKinematics(
const
double
* r);
87
92
virtual
CrossSection dSigHatDR()
const
;
93
102
virtual
Selector<DiagramIndex>
diagrams(
const
DiagramVector
& dv)
const
;
103
111
virtual
Selector<const ColourLines *>
112
colourGeometries(tcDiagPtr diag)
const
;
113
117
virtual
void
constructVertex(
tSubProPtr
);
119
120
121
public
:
122
129
void
persistentOutput(
PersistentOStream
& os)
const
;
130
136
void
persistentInput(
PersistentIStream
& is,
int
version);
138
145
static
void
Init();
146
147
protected
:
148
159
double
helicityME(vector<SpinorWaveFunction> & f1 ,
160
vector<SpinorWaveFunction> & f2 ,
161
vector<SpinorBarWaveFunction> & a1,
162
vector<SpinorBarWaveFunction> & a2,
163
bool
swap1,
bool
swap2,
164
bool
me)
const
;
165
173
PDPtr
WPlus
()
const
{
return
_wplus;}
174
178
PDPtr
WMinus
()
const
{
return
_wminus;}
179
183
PDPtr
Z0
()
const
{
return
_z0;}
184
188
PDPtr
higgs
()
const
{
return
_higgs;}
189
193
void
higgs
(
PDPtr
in) {_higgs=in;}
195
199
void
setWWHVertex
(AbstractVVSVertexPtr in) {
200
_vertexWWH = in;
201
}
202
206
void
lineShape
(
unsigned
int
in) {_shapeopt=in;}
207
211
unsigned
int
process
()
const
{
return
_process;}
212
216
bool
swapOrder
() {
return
_swap;}
217
221
void
process
(
unsigned
int
in) {_process = in;}
222
226
unsigned
int
maxFlavour
()
const
{
return
_maxflavour;}
227
231
unsigned
int
minFlavour
()
const
{
return
_minflavour;}
232
233
protected
:
234
242
virtual
void
doinit();
244
245
private
:
246
251
MEfftoffH
& operator=(
const
MEfftoffH
&) =
delete
;
252
253
private
:
254
258
unsigned
int
_shapeopt
;
259
263
unsigned
int
_maxflavour
;
264
268
unsigned
int
_minflavour
;
269
273
unsigned
int
_process
;
274
282
PDPtr
_wplus
;
283
287
PDPtr
_wminus
;
288
292
PDPtr
_z0
;
293
297
PDPtr
_higgs
;
299
307
AbstractFFVVertexPtr
_vertexFFW
;
308
312
AbstractFFVVertexPtr
_vertexFFZ
;
313
317
AbstractVVSVertexPtr
_vertexWWH
;
319
323
Energy
_mh
;
324
328
Energy
_wh
;
329
333
GenericMassGeneratorPtr
_hmass
;
334
335
339
mutable
ProductionMatrixElement
_me
;
340
344
bool
_swap
;
345
};
346
347
}
348
349
#endif
/* HERWIG_MEfftoffH_H */
Herwig::MEfftoffH::setWWHVertex
void setWWHVertex(AbstractVVSVertexPtr in)
Set the pointer to the vector-vector-Higgs vertex.
Definition:
MEfftoffH.h:199
ThePEG::PersistentIStream
Herwig::MEfftoffH::_shapeopt
unsigned int _shapeopt
Defines the Higgs resonance shape.
Definition:
MEfftoffH.h:258
Herwig::MEfftoffH::Z0
PDPtr Z0() const
Access to the data.
Definition:
MEfftoffH.h:183
Herwig::MEfftoffH::_vertexFFZ
AbstractFFVVertexPtr _vertexFFZ
Vertex for fermion-fermion-Z.
Definition:
MEfftoffH.h:312
Herwig::MEfftoffH::_process
unsigned int _process
Whether to include $WW$ and $ZZ$ processes or both.
Definition:
MEfftoffH.h:273
ThePEG::PersistentOStream
Herwig::MEfftoffH::_z0
PDPtr _z0
Definition:
MEfftoffH.h:292
Herwig::MEfftoffH::MEfftoffH
MEfftoffH()
The default constructor.
Definition:
MEfftoffH.h:32
Herwig::MEfftoffH::_mh
Energy _mh
On-shell mass for the higgs.
Definition:
MEfftoffH.h:323
ThePEG
Herwig::MEfftoffH::process
void process(unsigned int in)
Which process to generate.
Definition:
MEfftoffH.h:221
Herwig::MEfftoffH::higgs
void higgs(PDPtr in)
Set the Higgs boson.
Definition:
MEfftoffH.h:193
Herwig::MEfftoffH
The MEfftoffH class is the base class for vector boson fusion type processes in Herwig.
Definition:
MEfftoffH.h:25
Herwig::MEfftoffH::_maxflavour
unsigned int _maxflavour
Maximum flavour of the quarks involved.
Definition:
MEfftoffH.h:263
Herwig::MEfftoffH::_wh
Energy _wh
On-shell width for the higgs.
Definition:
MEfftoffH.h:328
Herwig::MEfftoffH::lineShape
void lineShape(unsigned int in)
Set the line shape treatment.
Definition:
MEfftoffH.h:206
Herwig::MEfftoffH::_swap
bool _swap
if order swaped
Definition:
MEfftoffH.h:344
Herwig::ProductionMatrixElement
The storage of the helicity amplitude expression for the matrix element of a hard process...
Definition:
ProductionMatrixElement.h:34
Herwig::MEfftoffH::maxFlavour
unsigned int maxFlavour() const
Maximum flavour of the incoming partons.
Definition:
MEfftoffH.h:226
Herwig::MEfftoffH::process
unsigned int process() const
Which process to generate.
Definition:
MEfftoffH.h:211
Herwig::MEfftoffH::_minflavour
unsigned int _minflavour
Minimum flavour of the quarks involved.
Definition:
MEfftoffH.h:268
Herwig::MEfftoffH::_vertexWWH
AbstractVVSVertexPtr _vertexWWH
Vertex for vector-vector-Higgs.
Definition:
MEfftoffH.h:317
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
ThePEG::PDPtr
ThePEG::Ptr< ParticleData >::pointer PDPtr
Herwig::MEfftoffH::_me
ProductionMatrixElement _me
Matrix element for spin correlations.
Definition:
MEfftoffH.h:339
Herwig::MEfftoffH::_higgs
PDPtr _higgs
Higgs boson.
Definition:
MEfftoffH.h:297
Herwig::MEfftoffH::WMinus
PDPtr WMinus() const
Access to the data.
Definition:
MEfftoffH.h:178
Herwig::MEfftoffH::_hmass
GenericMassGeneratorPtr _hmass
The mass generator for the Higgs.
Definition:
MEfftoffH.h:333
Herwig::MEfftoffH::WPlus
PDPtr WPlus() const
Access to the vector ParticleData objects.
Definition:
MEfftoffH.h:173
ThePEG::Selector
Herwig::MEfftoffH::higgs
PDPtr higgs() const
Access to the Higgs boson.
Definition:
MEfftoffH.h:188
ThePEG::MEBase::DiagramVector
vector< DiagPtr > DiagramVector
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::MEfftoffH::_wplus
PDPtr _wplus
The intermediate vector bosons.
Definition:
MEfftoffH.h:282
Herwig::MEfftoffH::_vertexFFW
AbstractFFVVertexPtr _vertexFFW
The vertices for the calculation of the matrix element.
Definition:
MEfftoffH.h:307
Herwig::HwMEBase
The HwMEBase class serves a number of purposes.
Definition:
HwMEBase.h:35
Herwig::MEfftoffH::minFlavour
unsigned int minFlavour() const
Minimum flavour of the incoming partons.
Definition:
MEfftoffH.h:231
Herwig::MEfftoffH::swapOrder
bool swapOrder()
Whether momenta are swapped.
Definition:
MEfftoffH.h:216
Herwig::MEfftoffH::_wminus
PDPtr _wminus
Definition:
MEfftoffH.h:287
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13