herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
MatchboxHtScale.h
1// -*- C++ -*-
2//
3// MatchboxHtScale.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_MatchboxHtScale_H
10#define Herwig_MatchboxHtScale_H
11//
12// This is the declaration of the MatchboxHtScale class.
13//
14
15#include "Herwig/MatrixElement/Matchbox/Utility/MatchboxScaleChoice.h"
16#include "ThePEG/PDT/MatcherBase.h"
17#include "ThePEG/Cuts/JetFinder.h"
18
19namespace Herwig {
20
21using namespace ThePEG;
22
31
32public:
33
40
46
47public:
48
53 virtual Energy2 renormalizationScale() const;
54
59 virtual Energy2 factorizationScale() const;
60
61protected:
62
66 virtual void initWeightFactors(const tcPDVector&, const vector<LorentzMomentum>&,
67 const Ptr<JetFinder>::ptr&) const {}
68
72 virtual double jetPtWeight(const LorentzMomentum&) const { return 1.; }
73
74public:
75
83
89 void persistentInput(PersistentIStream & is, int version);
91
98 static void Init();
99
100protected:
101
108 virtual IBPtr clone() const;
109
114 virtual IBPtr fullclone() const;
116
117private:
118
122 Ptr<JetFinder>::ptr theJetFinder;
123
128
133
138
143
144// If needed, insert declarations of virtual function defined in the
145// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
146
147
148private:
149
155
156};
157
158}
159
160#endif /* Herwig_MatchboxHtScale_H */
MatchboxHtScale implements scale choices related to transverse momenta.
static void Init()
The standard Init function used to initialize the interfaces.
virtual Energy2 renormalizationScale() const
Return the renormalization scale.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
virtual Energy2 factorizationScale() const
Return the factorization scale.
double theHTFactor
An ovewrall scaling factor for the jet contribution.
virtual double jetPtWeight(const LorentzMomentum &) const
Return the jet pt weighting factor for the given jet.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Ptr< JetFinder >::ptr theJetFinder
Reference to the jet finder.
virtual void initWeightFactors(const tcPDVector &, const vector< LorentzMomentum > &, const Ptr< JetFinder >::ptr &) const
Initialize potential weighting factors for the given final state.
double theMTFactor
An ovewrall scaling factor for the non-jet contribution.
MatchboxHtScale()
The default constructor.
virtual IBPtr clone() const
Make a simple clone of this object.
Energy theScalePtCut
We define jets as clustered objects with a minimum pT.
MatchboxHtScale & operator=(const MatchboxHtScale &)=delete
The assignment operator is private and must never be called.
virtual ~MatchboxHtScale()
The destructor.
bool theIncludeMT
Include the transverse masses of the non-jet objects.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
MatchboxScaleChoice is the base class for scale choices within Matchbox.
-*- C++ -*-
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
vector< tcPDPtr > tcPDVector