herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
MatrixElement
Matchbox
Builtin
Amplitudes
MatchboxAmplitudeggttbar.h
1
// -*- C++ -*-
2
//
3
// MatchboxAmplitudeggttbar.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_MatchboxAmplitudeggttbar_H
10
#define Herwig_MatchboxAmplitudeggttbar_H
11
//
12
// This is the declaration of the MatchboxAmplitudeggttbar class.
13
//
14
15
#include "Herwig/MatrixElement/Matchbox/Base/MatchboxAmplitude.h"
16
#include "Herwig/MatrixElement/Matchbox/Builtin/Amplitudes/MatchboxCurrents.h"
17
#include "MG_gg2ttx.h"
18
#include "HelAmps_sm.h"
19
20
namespace
Herwig
{
21
22
using namespace
ThePEG
;
23
30
class
MatchboxAmplitudeggttbar
:
31
public
MatchboxAmplitude
,
public
MatchboxCurrents
{
32
33
public
:
34
40
MatchboxAmplitudeggttbar
();
41
45
virtual
~
MatchboxAmplitudeggttbar
();
47
48
public
:
49
53
virtual
bool
canHandle(
const
PDVector
&)
const
;
54
59
virtual
unsigned
int
orderInGs
()
const
{
return
2; }
60
65
virtual
unsigned
int
orderInGem
()
const
{
return
0; }
66
70
virtual
bool
noCorrelations
()
const
{
return
false
; }
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
MatchboxAmplitudeggttbar
& operator=(
const
MatchboxAmplitudeggttbar
&) =
delete
;
178
182
double
mom0 [4];
183
double
mom1 [4];
184
double
mom2 [4];
185
double
mom3 [4];
186
190
void
setupParams(map<string, double> & MGParams);
191
195
map<string,double>
MGParams_
;
196
197
};
198
199
}
200
201
#endif
/* Herwig_MatchboxAmplitudeggttbar_H */
ThePEG::PersistentIStream
ThePEG::Complex
std::complex< double > Complex
Herwig::MatchboxAmplitudeggttbar::haveOneLoop
virtual bool haveOneLoop() const
Return true, if this amplitude is capable of calculating one-loop (QCD) corrections.
Definition:
MatchboxAmplitudeggttbar.h:76
Herwig::MatchboxAmplitudeggttbar::flushCaches
virtual void flushCaches()
Flush all cashes.
Definition:
MatchboxAmplitudeggttbar.h:100
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::MatchboxAmplitude
MatchboxAmplitude is the base class for amplitude implementations inside Matchbox.
Definition:
MatchboxAmplitude.h:108
Herwig::MatchboxAmplitudeggttbar::MGParams_
map< string, double > MGParams_
Stores parameters needed in MG_process.
Definition:
MatchboxAmplitudeggttbar.h:195
Herwig::MatchboxAmplitude::flushCaches
virtual void flushCaches()
Flush all cashes.
Definition:
MatchboxAmplitude.h:566
Herwig::MatchboxAmplitudeggttbar::mu2
virtual Energy2 mu2() const
Return the value of the dimensional regularization parameter.
Definition:
MatchboxAmplitudeggttbar.h:95
Herwig::MatchboxAmplitudeggttbar
MatchboxAmplitudeggttbar.
Definition:
MatchboxAmplitudeggttbar.h:30
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::PDVector
vector< PDPtr > PDVector
Herwig::MatchboxAmplitudeggttbar::orderInGem
virtual unsigned int orderInGem() const
Return the (tree-level) order in in which this matrix element is given.
Definition:
MatchboxAmplitudeggttbar.h:65
Herwig::MatchboxAmplitudeggttbar::noCorrelations
virtual bool noCorrelations() const
Return true, if this amplitude will not require colour correlations.
Definition:
MatchboxAmplitudeggttbar.h:70
Herwig::MatchboxCurrents
MatchboxCurrents.
Definition:
MatchboxCurrents.h:31
Herwig::MatchboxAmplitudeggttbar::orderInGs
virtual unsigned int orderInGs() const
Return the (tree-level) order in in which this matrix element is given.
Definition:
MatchboxAmplitudeggttbar.h:59
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13