thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
MEee2gZ2qq.h
1 // -*- C++ -*-
2 //
3 // MEee2gZ2qq.h is a part of ThePEG - Toolkit for HEP Event Generation
4 // Copyright (C) 1999-2019 Leif Lonnblad
5 //
6 // ThePEG 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 ThePEG_MEee2gZ2qq_H
10 #define ThePEG_MEee2gZ2qq_H
11 // This is the declaration of the MEee2gZ2qq class.
12 
13 #include "ThePEG/MatrixElement/ME2to2QCD.h"
14 
15 namespace ThePEG {
16 
29 class MEee2gZ2qq: public ME2to2QCD {
30 
31 public:
32 
38  MEee2gZ2qq();
40 
41 public:
42 
49  virtual unsigned int orderInAlphaS() const;
50 
55  virtual unsigned int orderInAlphaEW() const;
56 
64  virtual double me2() const;
65 
69  virtual void getDiagrams() const;
70 
79  colourGeometries(tcDiagPtr diag) const;
80 
89  virtual Selector<DiagramIndex> diagrams(const DiagramVector & dv) const;
90 
94  virtual Energy2 scale() const;
96 
97 public:
98 
105  void persistentOutput(PersistentOStream & os) const;
106 
112  void persistentInput(PersistentIStream & is, int version);
114 
118  static void Init();
119 
120 protected:
121 
128  virtual IBPtr clone() const;
129 
134  virtual IBPtr fullclone() const;
136 
144  virtual void doinit();
146 
147 protected:
148 
153  vector<double> coefs;
154 
159 
164 
168  mutable double lastCont;
169 
173  mutable double lastBW;
174 
175 private:
176 
181 
185  MEee2gZ2qq & operator=(const MEee2gZ2qq &) = delete;
186 
187 };
188 
193 template <>
194 struct BaseClassTrait<MEee2gZ2qq,1>: public ClassTraitsType {
196  typedef ME2to2QCD NthBase;
197 };
198 
201 template <>
202 struct ClassTraits<MEee2gZ2qq>: public ClassTraitsBase<MEee2gZ2qq> {
204  static string className() { return "ThePEG::MEee2gZ2qq"; }
208  static string library() { return "MEee2gZ2qq.so"; }
209 };
210 
213 }
214 
215 #endif /* ThePEG_MEee2gZ2qq_H */
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
PersistentIStream is used to read persistent objects from a stream where they were previously written...
const DiagramVector & diagrams() const
Return all possible diagrams.
Definition: MEBase.h:284
virtual IBPtr clone() const
Make a simple clone of this object.
ClassTraitsType is an empty, non-polymorphic, base class.
Definition: ClassTraits.h:30
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data...
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
virtual double me2() const
The matrix element for the kinematical configuration previously provided by the last call to setKinem...
virtual Energy2 scale() const
Return the scale associated with the last set phase space point.
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
MEee2gZ2qq()
Default constructor.
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Energy2 mZ2
The squared mass of the Z0.
Definition: MEee2gZ2qq.h:158
The ME2to2QCD class inherits from the ME2to2Base class and can be used as a sub class for all QCD 2 ...
Definition: ME2to2QCD.h:28
virtual unsigned int orderInAlphaS() const
Return the order in in which this matrix element is given.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Energy2 GZ2
The squared width of the Z0.
Definition: MEee2gZ2qq.h:163
virtual unsigned int orderInAlphaEW() const
Return the order in in which this matrix element is given.
static ClassDescription< MEee2gZ2qq > initMEee2gZ2qq
Describe a concrete class with persistent data.
Definition: MEee2gZ2qq.h:180
RCPtr is a reference counted (smart) pointer.
Definition: RCPtr.h:60
virtual Selector< const ColourLines * > colourGeometries(tcDiagPtr diag) const
Return a Selector with possible colour geometries for the selected diagram weighted by their relative...
virtual void getDiagrams() const
Add all possible diagrams with the add() function.
static void Init()
Standard Init function used to initialize the interface.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Selector is a templated class for storing objects associated with probabilities in a way such that...
Definition: Selector.h:46
vector< DiagPtr > DiagramVector
A vector of pointers to DiagramBase objects.
Definition: MEBase.h:77
The default concrete implementation of ClassTraitsBase.
Definition: ClassTraits.h:134
The MEee2gZ2qq class implements the matrix element.
Definition: MEee2gZ2qq.h:29
vector< double > coefs
Constants for the different terms set from the StandardModel in the init() function.
Definition: MEee2gZ2qq.h:153
double lastCont
The last continuum term to be used to select primary diagram.
Definition: MEee2gZ2qq.h:168
MEee2gZ2qq & operator=(const MEee2gZ2qq &)=delete
Private and non-existent assignment operator.
BaseClassTraits describes the base classes of the templated class.
Definition: ClassTraits.h:156
double lastBW
The last Breit-Wigner term to be used to select primary diagram.
Definition: MEee2gZ2qq.h:173
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
Definition: ClassTraits.h:52