herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
QTildeMatching.h
1 // -*- C++ -*-
2 //
3 // QTildeMatching.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_QTildeMatching_H
10 #define Herwig_QTildeMatching_H
11 //
12 // This is the declaration of the QTildeMatching class.
13 //
14 
15 #include "Herwig/MatrixElement/Matchbox/Matching/ShowerApproximation.h"
16 #include "Herwig/Shower/ShowerHandler.h"
17 #include "Herwig/Shower/QTilde/Base/PartnerFinder.h"
18 #include "Herwig/Shower/QTilde/SplittingFunctions/SudakovFormFactor.h"
19 
20 namespace Herwig {
21 
22 using namespace ThePEG;
23 
32 
33 public:
34 
41 
45  virtual ~QTildeMatching();
47 
48 public:
49 
55  virtual CrossSection dSigHatDR() const;
56 
63  virtual double me2() const;
64 
68  virtual void checkCutoff();
69 
75  virtual void getShowerVariables();
76 
77 protected:
78 
83  virtual bool isInShowerPhasespace() const;
84 
90  virtual bool isAboveCutoff() const;
91 
95  void calculateShowerVariables() const;
96 
101  double splitFn(const pair<Energy2,double>&) const;
102 
103 public:
104 
111  void persistentOutput(PersistentOStream & os) const;
112 
118  void persistentInput(PersistentIStream & is, int version);
120 
127  static void Init();
128 
129 protected:
130 
137  virtual IBPtr clone() const;
138 
143  virtual IBPtr fullclone() const;
145 
146 
147 // If needed, insert declarations of virtual function defined in the
148 // InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
149 
150 protected:
151 
159  virtual void doinit();
160 
165  virtual void doinitrun();
167 
168 private:
169 
174  QTildeMatching & operator=(const QTildeMatching &) = delete;
175 
179  Ptr<ShowerHandler>::ptr theShowerHandler;
180 
184  Ptr<PartnerFinder>::ptr theQTildeFinder;
185 
189  Ptr<SudakovFormFactor>::ptr theQTildeSudakov;
190 
196 
197 };
198 
199 }
200 
201 #endif /* Herwig_QTildeMatching_H */
Ptr< SudakovFormFactor >::ptr theQTildeSudakov
The qtilde Sudakov to access the cutoff.
ShowerApproximation describes the shower emission to be used in NLO matching.
bool theCorrectForXZMismatch
True, if PDF weight should be corrected for z/x mismatch at the hard phase space boundary.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Ptr< ShowerHandler >::ptr theShowerHandler
The shower handler to be used.
QTildeMatching implements NLO matching with the default shower.
-*- C++ -*-
Ptr< PartnerFinder >::ptr theQTildeFinder
The qtilde partner finder for calculating the hard scales.