herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Shower
Dipole
Base
DipoleEventReweight.h
1
// -*- C++ -*-
2
//
3
// DipoleEventReweight.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_DipoleEventReweight_H
10
#define Herwig_DipoleEventReweight_H
11
//
12
// This is the declaration of the DipoleEventReweight class.
13
//
14
15
#include "ThePEG/Handlers/HandlerBase.h"
16
#include "ThePEG/StandardModel/AlphaSBase.h"
17
18
19
namespace
Herwig
{
20
21
using namespace
ThePEG
;
22
31
class
DipoleEventReweight
:
public
HandlerBase
{
32
33
public
:
34
40
DipoleEventReweight
();
41
45
virtual
~DipoleEventReweight
();
47
48
public
:
49
54
virtual
double
weight
(
const
PPair
& in,
const
PList
& out,
const
PList
& hard,
55
Ptr<AlphaSBase>::tptr as)
const
= 0;
56
61
virtual
double
weightCascade
(
const
PPair
& in,
const
PList
& out,
const
PList
& hard,
62
Ptr<AlphaSBase>::tptr as)
const
= 0;
63
67
virtual
bool
firstInteraction
()
const
= 0;
68
72
virtual
bool
secondaryInteractions
()
const
= 0;
73
74
public
:
75
82
void
persistentOutput
(
PersistentOStream
& os)
const
;
83
89
void
persistentInput
(
PersistentIStream
& is,
int
version);
91
98
static
void
Init
();
99
100
101
// If needed, insert declarations of virtual function defined in the
102
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
103
104
105
private
:
106
111
DipoleEventReweight
&
operator=
(
const
DipoleEventReweight
&) =
delete
;
112
113
};
114
115
}
116
117
#endif
/* Herwig_DipoleEventReweight_H */
Herwig::DipoleEventReweight
Reweight full final states produced by the shower.
Definition:
DipoleEventReweight.h:31
Herwig::DipoleEventReweight::operator=
DipoleEventReweight & operator=(const DipoleEventReweight &)=delete
The assignment operator is private and must never be called.
Herwig::DipoleEventReweight::weight
virtual double weight(const PPair &in, const PList &out, const PList &hard, Ptr< AlphaSBase >::tptr as) const =0
Return the weight for the given incoming, outgoing coloured and hard colour neutral particles,...
Herwig::DipoleEventReweight::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::DipoleEventReweight::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::DipoleEventReweight::DipoleEventReweight
DipoleEventReweight()
The default constructor.
Herwig::DipoleEventReweight::secondaryInteractions
virtual bool secondaryInteractions() const =0
Return true, if the event reweight should be applied to secondary interactions.
Herwig::DipoleEventReweight::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::DipoleEventReweight::weightCascade
virtual double weightCascade(const PPair &in, const PList &out, const PList &hard, Ptr< AlphaSBase >::tptr as) const =0
Return the weight which is applied to a cascade only once even if there was no emission from the casc...
Herwig::DipoleEventReweight::firstInteraction
virtual bool firstInteraction() const =0
Return true, if the event reweight should be applied to the hard scattering.
Herwig::DipoleEventReweight::~DipoleEventReweight
virtual ~DipoleEventReweight()
The destructor.
ThePEG::HandlerBase
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::PPair
pair< PPtr, PPtr > PPair
ThePEG::PList
list< PPtr > PList
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6