herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
General
GeneralQQHiggs.h
1
// -*- C++ -*-
2
#ifndef HERWIG_GeneralQQHiggs_H
3
#define HERWIG_GeneralQQHiggs_H
4
//
5
// This is the declaration of the GeneralQQHiggs class.
6
//
7
8
#include "Herwig/MatrixElement/HwMEBase.h"
9
#include "Herwig/MatrixElement/ProductionMatrixElement.h"
10
#include "ThePEG/Helicity/Vertex/AbstractFFVVertex.h"
11
#include "ThePEG/Helicity/Vertex/AbstractFFSVertex.h"
12
#include "ThePEG/Helicity/Vertex/AbstractVVVVertex.h"
13
#include "ThePEG/Helicity/WaveFunction/ScalarWaveFunction.h"
14
#include "ThePEG/Helicity/WaveFunction/SpinorWaveFunction.h"
15
#include "ThePEG/Helicity/WaveFunction/VectorWaveFunction.h"
16
#include "ThePEG/Helicity/WaveFunction/SpinorBarWaveFunction.h"
17
#include "Herwig/PDT/GenericMassGenerator.h"
18
#include "GeneralQQHiggs.fh"
19
20
namespace
Herwig
{
21
22
using namespace
ThePEG
;
23
31
class
GeneralQQHiggs
:
public
HwMEBase
{
32
33
public
:
34
40
GeneralQQHiggs
();
42
50
void
setProcessInfo(
unsigned
int
quark,
PDPtr
higgs,
51
AbstractFFSVertexPtr vertex,
52
unsigned
int
shapeOpt,
53
unsigned
int
proc);
54
55
public
:
56
63
virtual
unsigned
int
orderInAlphaS()
const
;
64
69
virtual
unsigned
int
orderInAlphaEW()
const
;
70
78
virtual
double
me2()
const
;
79
83
virtual
Energy2 scale()
const
;
84
92
virtual
void
setKinematics();
93
98
virtual
int
nDim()
const
;
99
108
virtual
bool
generateKinematics(
const
double
* r);
109
114
virtual
CrossSection dSigHatDR()
const
;
115
119
virtual
void
getDiagrams()
const
;
120
129
virtual
Selector<DiagramIndex>
diagrams(
const
DiagramVector
& dv)
const
;
130
138
virtual
Selector<const ColourLines *>
139
colourGeometries(tcDiagPtr diag)
const
;
140
144
virtual
void
constructVertex(
tSubProPtr
);
146
147
protected
:
148
162
double
ggME(vector<VectorWaveFunction> &g1,vector<VectorWaveFunction> &g2,
163
vector<SpinorBarWaveFunction> & q,vector<SpinorWaveFunction> & qbar,
164
ScalarWaveFunction
& h,
165
unsigned
int
flow)
const
;
166
176
double
qqME(vector<SpinorWaveFunction> & q1,
177
vector<SpinorBarWaveFunction> & q2,
178
vector<SpinorBarWaveFunction> & q3,
179
vector<SpinorWaveFunction> & q4,
180
ScalarWaveFunction
& h,
181
unsigned
int
flow)
const
;
183
184
public
:
185
192
void
persistentOutput(
PersistentOStream
& os)
const
;
193
199
void
persistentInput(
PersistentIStream
& is,
int
version);
201
208
static
void
Init();
209
210
protected
:
211
218
virtual
IBPtr
clone()
const
;
219
224
virtual
IBPtr
fullclone()
const
;
226
227
protected
:
228
236
virtual
void
doinit();
238
239
private
:
240
245
GeneralQQHiggs
& operator=(
const
GeneralQQHiggs
&) =
delete
;
246
247
private
:
248
256
unsigned
int
quarkFlavour_
;
257
261
unsigned
int
process_
;
263
271
unsigned
int
shapeOpt_
;
272
276
Energy
mh_
;
277
281
Energy
wh_
;
282
286
GenericMassGeneratorPtr
hmass_
;
288
296
AbstractVVVVertexPtr
GGGVertex_
;
297
301
AbstractFFVVertexPtr
QQGVertex_
;
302
306
AbstractFFSVertexPtr
QQHVertex_
;
308
309
317
PDPtr
gluon_
;
318
322
PDPtr
higgs_
;
323
327
vector<PDPtr>
quark_
;
328
332
vector<PDPtr>
antiquark_
;
334
342
double
alpha_
;
344
348
mutable
unsigned
int
flow_
;
349
353
mutable
unsigned
int
diagram_
;
354
358
mutable
ProductionMatrixElement
me_
;
359
};
360
361
}
362
363
#endif
/* HERWIG_GeneralQQHiggs_H */
Herwig::GeneralQQHiggs::me_
ProductionMatrixElement me_
Matrix element.
Definition:
GeneralQQHiggs.h:358
ThePEG::PersistentIStream
Herwig::GeneralQQHiggs::flow_
unsigned int flow_
Colour flow.
Definition:
GeneralQQHiggs.h:348
Herwig::GeneralQQHiggs
The GeneralQQHiggs class implements the matrix elements for and .
Definition:
GeneralQQHiggs.h:31
Herwig::GeneralQQHiggs::alpha_
double alpha_
Parameters for the phase-space generation.
Definition:
GeneralQQHiggs.h:342
Herwig::GeneralQQHiggs::wh_
Energy wh_
On-shell width for the higgs.
Definition:
GeneralQQHiggs.h:281
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG
ThePEG::Helicity::ScalarWaveFunction
Herwig::ProductionMatrixElement
The storage of the helicity amplitude expression for the matrix element of a hard process...
Definition:
ProductionMatrixElement.h:34
Herwig::GeneralQQHiggs::QQGVertex_
AbstractFFVVertexPtr QQGVertex_
vertex
Definition:
GeneralQQHiggs.h:301
Herwig::GeneralQQHiggs::quark_
vector< PDPtr > quark_
the quarks
Definition:
GeneralQQHiggs.h:327
Herwig::GeneralQQHiggs::higgs_
PDPtr higgs_
The Higgs boson.
Definition:
GeneralQQHiggs.h:322
Herwig::GeneralQQHiggs::gluon_
PDPtr gluon_
ParticleData objects of the particles.
Definition:
GeneralQQHiggs.h:317
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
Herwig::GeneralQQHiggs::hmass_
GenericMassGeneratorPtr hmass_
The mass generator for the Higgs.
Definition:
GeneralQQHiggs.h:286
ThePEG::PDPtr
ThePEG::Ptr< ParticleData >::pointer PDPtr
Herwig::GeneralQQHiggs::diagram_
unsigned int diagram_
Diagram.
Definition:
GeneralQQHiggs.h:353
Herwig::GeneralQQHiggs::process_
unsigned int process_
Processes to include.
Definition:
GeneralQQHiggs.h:261
Herwig::GeneralQQHiggs::QQHVertex_
AbstractFFSVertexPtr QQHVertex_
vertex
Definition:
GeneralQQHiggs.h:306
ThePEG::Selector
Herwig::GeneralQQHiggs::mh_
Energy mh_
On-shell mass for the higgs.
Definition:
GeneralQQHiggs.h:276
ThePEG::MEBase::DiagramVector
vector< DiagPtr > DiagramVector
Herwig::GeneralQQHiggs::antiquark_
vector< PDPtr > antiquark_
the antiquarks
Definition:
GeneralQQHiggs.h:332
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::HwMEBase
The HwMEBase class serves a number of purposes.
Definition:
HwMEBase.h:35
Herwig::GeneralQQHiggs::GGGVertex_
AbstractVVVVertexPtr GGGVertex_
Vertices needed to compute the diagrams.
Definition:
GeneralQQHiggs.h:296
Herwig::GeneralQQHiggs::shapeOpt_
unsigned int shapeOpt_
Switches etc for the Higgs mass generation.
Definition:
GeneralQQHiggs.h:271
Herwig::GeneralQQHiggs::quarkFlavour_
unsigned int quarkFlavour_
Switches to control the subprocess.
Definition:
GeneralQQHiggs.h:256
Generated on Sat Apr 11 2020 14:50:29 for Herwig by
1.8.13