herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
MEMinBias.h
1 // -*- C++ -*-
2 #ifndef HERWIG_MEMinBias_H
3 #define HERWIG_MEMinBias_H
4 //
5 // This is the declaration of the MEMinBias class.
6 //
7 
8 #include "Herwig/MatrixElement/HwMEBase.h"
9 #include "Herwig/Shower/UEBase.h"
10 
11 namespace Herwig {
12 
13 using namespace ThePEG;
14 
23 class MEMinBias: public HwMEBase {
24 
25 public:
26 
30  MEMinBias() : csNorm_(1.), Scale_(2.*GeV) {}
31 
32 public:
33 
40  virtual unsigned int orderInAlphaS() const;
41 
46  virtual unsigned int orderInAlphaEW() const;
47 
55  virtual double me2() const;
56 
61  double correctionweight() const;
62 
66  virtual Energy2 scale() const;
67 
75  virtual void setKinematics();
76 
81  virtual int nDim() const;
82 
91  virtual bool generateKinematics(const double * r);
92 
97  virtual CrossSection dSigHatDR() const;
98 
102  virtual void getDiagrams() const;
103 
112  virtual Selector<DiagramIndex> diagrams(const DiagramVector & dv) const;
113 
122  colourGeometries(tcDiagPtr diag) const;
124 
125 
126 public:
133  void persistentOutput(PersistentOStream & os) const;
134 
140  void persistentInput(PersistentIStream & is, int version);
142 
157  static void Init();
158 
159 protected:
160 
167  virtual IBPtr clone() const;
168 
173  virtual IBPtr fullclone() const;
175 
176 
177 // If needed, insert declarations of virtual function defined in the
178 // InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
179 
180 
181 private:
188  double csNorm_;
189 
193  Energy Scale_;
194 
198  bool onlyValQuarks_=true;
199 
205  UEBasePtr MPIHandler_;
206 
211  MEMinBias & operator=(const MEMinBias &) = delete;
212 
213 };
214 
215 }
216 
217 #endif /* HERWIG_MEMinBias_H */
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
The MEMinBias class provides a simple colour singlet exchange matrix element to be used in the soft c...
Definition: MEMinBias.h:23
MEMinBias()
The default constructor.
Definition: MEMinBias.h:30
UEBasePtr MPIHandler_
a MPIHandler to administer the creation of several (semihard) partonic interactions.
Definition: MEMinBias.h:205
double csNorm_
Normalization of the min-bias cross section.
Definition: MEMinBias.h:188
vector< DiagPtr > DiagramVector
-*- C++ -*-
The HwMEBase class serves a number of purposes.
Definition: HwMEBase.h:35
Energy Scale_
Scale for the Min Bias matrix element.
Definition: MEMinBias.h:193