herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
MatrixElement
Matchbox
Base
MatchboxReweightBase.h
1
// -*- C++ -*-
2
//
3
// MatchboxReweightBase.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_MatchboxReweightBase_H
10
#define HERWIG_MatchboxReweightBase_H
11
//
12
// This is the declaration of the MatchboxReweightBase class.
13
//
14
15
#include "ThePEG/Handlers/HandlerBase.h"
16
#include "ThePEG/Handlers/StandardXComb.h"
17
18
namespace
Herwig
{
19
20
using namespace
ThePEG
;
21
31
class
MatchboxReweightBase
:
public
HandlerBase
{
32
33
public
:
34
38
Ptr<MatchboxReweightBase>::ptr
cloneMe
()
const
{
39
return
dynamic_ptr_cast<Ptr<MatchboxReweightBase>::ptr>(
clone
());
40
}
41
45
virtual
void
cloneDependencies
(
const
std::string& prefix =
""
);
46
50
virtual
void
setXComb
(tStdXCombPtr) = 0;
51
55
virtual
bool
apply
()
const
= 0;
56
62
virtual
void
flushCaches
() = 0;
63
67
virtual
double
evaluate
()
const
= 0;
68
74
virtual
void
setVetoScales
(
tSubProPtr
)
const
{}
75
76
public
:
77
81
virtual
void
print
(ostream&)
const
{}
82
86
virtual
void
printLastEvent
(ostream&)
const
{}
87
88
public
:
89
96
void
persistentOutput
(
PersistentOStream
& os)
const
;
97
103
void
persistentInput
(
PersistentIStream
& is,
int
version);
105
112
static
void
Init
();
113
114
115
// If needed, insert declarations of virtual function defined in the
116
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
117
118
private
:
119
124
MatchboxReweightBase
&
operator=
(
const
MatchboxReweightBase
&) =
delete
;
125
126
};
127
128
}
129
130
131
#endif
/* HERWIG_MatchboxReweightBase_H */
Herwig::MatchboxReweightBase
MatchboxReweightBase is the base class for reweighting MatchboxMEBase matrix elements as |M|^2 ( w_1 ...
Definition:
MatchboxReweightBase.h:31
Herwig::MatchboxReweightBase::apply
virtual bool apply() const =0
Return true, if applies to the process in the xcomb.
Herwig::MatchboxReweightBase::evaluate
virtual double evaluate() const =0
Evaluate the reweight.
Herwig::MatchboxReweightBase::setVetoScales
virtual void setVetoScales(tSubProPtr) const
Set veto scales on the particles at the given SubProcess which has been generated using this matrix e...
Definition:
MatchboxReweightBase.h:74
Herwig::MatchboxReweightBase::cloneDependencies
virtual void cloneDependencies(const std::string &prefix="")
Clone the dependencies, using a given prefix.
Herwig::MatchboxReweightBase::operator=
MatchboxReweightBase & operator=(const MatchboxReweightBase &)=delete
The assignment operator is private and must never be called.
Herwig::MatchboxReweightBase::print
virtual void print(ostream &) const
Dump the setup to an ostream.
Definition:
MatchboxReweightBase.h:81
Herwig::MatchboxReweightBase::flushCaches
virtual void flushCaches()=0
Inform this matrix element that a new phase space point is about to be generated, so all caches shoul...
Herwig::MatchboxReweightBase::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::MatchboxReweightBase::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::MatchboxReweightBase::setXComb
virtual void setXComb(tStdXCombPtr)=0
Set the XComb object.
Herwig::MatchboxReweightBase::cloneMe
Ptr< MatchboxReweightBase >::ptr cloneMe() const
Clone this reweight.
Definition:
MatchboxReweightBase.h:38
Herwig::MatchboxReweightBase::printLastEvent
virtual void printLastEvent(ostream &) const
Print debug information on the last event.
Definition:
MatchboxReweightBase.h:86
Herwig::MatchboxReweightBase::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::HandlerBase
ThePEG::InterfacedBase::clone
virtual IBPtr clone() const=0
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6