herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
Matchbox
Builtin
Amplitudes
MatchboxAmplitudeggttbarg.h
1
// -*- C++ -*-
2
//
3
// MatchboxAmplitudeggttbarg.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef Herwig_MatchboxAmplitudeggttbarg_H
10
#define Herwig_MatchboxAmplitudeggttbarg_H
11
//
12
// This is the declaration of the MatchboxAmplitudeggttbarg class.
13
//
14
15
#include "Herwig/MatrixElement/Matchbox/Base/MatchboxAmplitude.h"
16
#include "Herwig/MatrixElement/Matchbox/Builtin/Amplitudes/MatchboxCurrents.h"
17
#include "MG_gg2ttxg.h"
18
#include "HelAmps_sm.h"
19
20
namespace
Herwig
{
21
22
using namespace
ThePEG
;
23
30
class
MatchboxAmplitudeggttbarg
:
31
public
MatchboxAmplitude
,
public
MatchboxCurrents
{
32
33
public
:
34
40
MatchboxAmplitudeggttbarg
();
41
45
virtual
~
MatchboxAmplitudeggttbarg
();
47
48
public
:
49
53
virtual
bool
canHandle(
const
PDVector
&)
const
;
54
59
virtual
unsigned
int
orderInGs
()
const
{
return
3; }
60
65
virtual
unsigned
int
orderInGem
()
const
{
return
0; }
66
70
virtual
bool
noCorrelations
()
const
{
return
true
; }
71
76
virtual
bool
haveOneLoop
()
const
{
return
false
; }
77
82
virtual
void
prepareAmplitudes(Ptr<MatchboxMEBase>::tcptr);
83
88
virtual
Complex
evaluate(
size_t
,
const
vector<int>&,
Complex
&);
89
95
virtual
Energy2
mu2
()
const
{
return
lastSHat(); }
96
100
virtual
void
flushCaches
() {
101
MatchboxCurrents::reset
();
102
MatchboxAmplitude::flushCaches
();
103
}
104
105
public
:
106
113
void
persistentOutput(
PersistentOStream
& os)
const
;
114
120
void
persistentInput(
PersistentIStream
& is,
int
version);
122
129
static
void
Init();
130
131
protected
:
132
139
virtual
IBPtr
clone()
const
;
140
145
virtual
IBPtr
fullclone()
const
;
147
148
149
// If needed, insert declarations of virtual function defined in the
150
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
151
152
protected
:
153
161
virtual
void
doinit();
162
167
virtual
void
doinitrun();
168
170
171
private
:
172
177
MatchboxAmplitudeggttbarg
& operator=(
const
MatchboxAmplitudeggttbarg
&) =
delete
;
178
182
double
mom0 [4];
183
double
mom1 [4];
184
double
mom2 [4];
185
double
mom3 [4];
186
double
mom4 [4];
187
191
void
setupParams(map<string, double> & MGParams);
192
196
map<string,double>
MGParams_
;
197
198
};
199
200
}
201
202
#endif
/* Herwig_MatchboxAmplitudeggttbarg_H */
ThePEG::PersistentIStream
ThePEG::Complex
std::complex< double > Complex
Herwig::MatchboxAmplitudeggttbarg::orderInGs
virtual unsigned int orderInGs() const
Return the (tree-level) order in in which this matrix element is given.
Definition:
MatchboxAmplitudeggttbarg.h:59
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Herwig::SpinorHelicity::AmplitudeCache< pair< size_t, size_t > >::reset
void reset() const
Reset flags.
ThePEG
Herwig::MatchboxAmplitudeggttbarg::MGParams_
map< string, double > MGParams_
Stores parameters needed in MG_process.
Definition:
MatchboxAmplitudeggttbarg.h:196
Herwig::MatchboxAmplitude
MatchboxAmplitude is the base class for amplitude implementations inside Matchbox.
Definition:
MatchboxAmplitude.h:108
Herwig::MatchboxAmplitudeggttbarg::flushCaches
virtual void flushCaches()
Flush all cashes.
Definition:
MatchboxAmplitudeggttbarg.h:100
Herwig::MatchboxAmplitudeggttbarg::haveOneLoop
virtual bool haveOneLoop() const
Return true, if this amplitude is capable of calculating one-loop (QCD) corrections.
Definition:
MatchboxAmplitudeggttbarg.h:76
Herwig::MatchboxAmplitudeggttbarg::mu2
virtual Energy2 mu2() const
Return the value of the dimensional regularization parameter.
Definition:
MatchboxAmplitudeggttbarg.h:95
Herwig::MatchboxAmplitudeggttbarg::orderInGem
virtual unsigned int orderInGem() const
Return the (tree-level) order in in which this matrix element is given.
Definition:
MatchboxAmplitudeggttbarg.h:65
Herwig::MatchboxAmplitude::flushCaches
virtual void flushCaches()
Flush all cashes.
Definition:
MatchboxAmplitude.h:566
Herwig::MatchboxAmplitudeggttbarg
MatchboxAmplitudeggttbarg.
Definition:
MatchboxAmplitudeggttbarg.h:30
Herwig::MatchboxAmplitudeggttbarg::noCorrelations
virtual bool noCorrelations() const
Return true, if this amplitude will not require colour correlations.
Definition:
MatchboxAmplitudeggttbarg.h:70
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::PDVector
vector< PDPtr > PDVector
Herwig::MatchboxCurrents
MatchboxCurrents.
Definition:
MatchboxCurrents.h:31
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13