herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
MatrixElement
Matchbox
Base
MergerBase.h
1
// -*- C++ -*-
2
//
3
// MergerBase.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_MergerBase_H
10
#define HERWIG_MergerBase_H
11
//
12
// This is the declaration of the MergerBase class.
13
//
14
15
#include "ThePEG/Handlers/HandlerBase.h"
16
#include "ThePEG/MatrixElement/MEBase.h"
17
#include "Herwig/MatrixElement/Matchbox/Utility/LastMatchboxXCombInfo.h"
18
#include "Herwig/MatrixElement/Matchbox/Utility/MatchboxXComb.h"
19
20
#include "MatchboxMEBase.fh"
21
22
namespace
Herwig
{
23
24
using namespace
ThePEG
;
25
class
MergerBase;
26
27
ThePEG_DECLARE_POINTERS(MergerBase,MergerBasePtr);
28
38
class
MergerBase
:
public
HandlerBase
{
39
40
public
:
41
45
MergerBase
();
46
48
virtual
bool
matrixElementRegion
(
PVector
incoming
,
49
PVector
outcoming,
50
Energy winnerScale,
51
Energy cutscale)
const
= 0;
53
virtual
CrossSection
MergingDSigDR
() = 0;
55
virtual
void
setXComb
( tStdXCombPtr) = 0;
57
virtual
void
setME
(Ptr<MatchboxMEBase>::ptr) = 0;
59
virtual
void
setKinematics
() = 0;
61
virtual
void
clearKinematics
() = 0;
63
virtual
bool
generateKinematics
(
const
double
* ) = 0;
69
virtual
void
flushCaches
() = 0;
71
virtual
size_t
maxLegs
()
const
= 0;
73
virtual
Energy
mergingScale
()
const
= 0;
75
76
public
:
77
84
static
void
Init
();
85
86
87
88
};
89
90
91
92
}
93
94
#endif
/* HERWIG_MergerBase_H */
Herwig::MergerBase
MergerBase is the base class MergingHelpers.
Definition:
MergerBase.h:38
Herwig::MergerBase::MergingDSigDR
virtual CrossSection MergingDSigDR()=0
cross section of as given by the merging
Herwig::MergerBase::flushCaches
virtual void flushCaches()=0
flush all chaches of the subleading nodes.
Herwig::MergerBase::setME
virtual void setME(Ptr< MatchboxMEBase >::ptr)=0
set the current ME
Herwig::MergerBase::MergerBase
MergerBase()
The default constructor.
Herwig::MergerBase::mergingScale
virtual Energy mergingScale() const =0
return the current merging scale,
Herwig::MergerBase::setXComb
virtual void setXComb(tStdXCombPtr)=0
set the current xcomb, called from ME
Herwig::MergerBase::setKinematics
virtual void setKinematics()=0
set kinematics, called from ME
Herwig::MergerBase::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::MergerBase::maxLegs
virtual size_t maxLegs() const =0
return the current maximum legs, the shower should veto
Herwig::MergerBase::clearKinematics
virtual void clearKinematics()=0
clear kinematics, called from ME
Herwig::MergerBase::matrixElementRegion
virtual bool matrixElementRegion(PVector incoming, PVector outcoming, Energy winnerScale, Energy cutscale) const =0
define the ME region for a particle vector.
Herwig::MergerBase::generateKinematics
virtual bool generateKinematics(const double *)=0
generate kinematics, called from ME
ThePEG::HandlerBase
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::Helicity::incoming
incoming
ThePEG
ThePEG::PVector
vector< PPtr > PVector
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6