thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
MEQQ2qq2.h
1// -*- C++ -*-
2//
3// MEQQ2qq2.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_MEQQ2qq_H
10#define ThePEG_MEQQ2qq_H
11// This is the declaration of the MEQQ2qq class.
12
13#include "ThePEG/MatrixElement/ME2to2QCD.h"
14
15namespace ThePEG {
16
25class MEQQ2qq: public ME2to2QCD {
26
27public:
28
38 virtual double me2() const;
39
43 virtual void getDiagrams() const;
44
53 colourGeometries(tcDiagPtr diag) const;
54
65
66protected:
67
75 double colA() const
76 {
77 return (sqr(uHat()) + sqr(tHat()))/sqr(sHat());
78 }
80
81public:
82
86 static void Init();
87
88protected:
89
96 virtual IBPtr clone() const { return new_ptr(*this); }
97
102 virtual IBPtr fullclone() const { return new_ptr(*this); }
104
105private:
106
111
115 MEQQ2qq & operator=(const MEQQ2qq &) = delete;
116
117};
118
119}
120
121
122namespace ThePEG {
123
128template <>
129struct BaseClassTrait<MEQQ2qq,1>: public ClassTraitsType {
131 typedef ME2to2QCD NthBase;
132};
133
136template <>
137struct ClassTraits<MEQQ2qq>: public ClassTraitsBase<MEQQ2qq> {
139 static string className() { return "ThePEG::MEQQ2qq"; }
143 static string library() { return "MEQCD.so"; }
144};
145
148}
149
150#endif /* ThePEG_MEQQ2qq_H */
Energy2 tHat() const
Return the of the last set phase space point.
Definition: ME2to2Base.h:109
Energy2 uHat() const
Return the of the last set phase space point.
Definition: ME2to2Base.h:114
The ME2to2QCD class inherits from the ME2to2Base class and can be used as a sub class for all QCD 2 ...
Definition: ME2to2QCD.h:28
vector< DiagPtr > DiagramVector
A vector of pointers to DiagramBase objects.
Definition: MEBase.h:77
Energy2 sHat() const
Return the last set invariant mass squared.
Definition: MEBase.h:375
MEQQ2qq inherits from ME2to2QCD and implements the standard matrix element.
Definition: MEQQ2qq2.h:25
static void Init()
Standard Init function used to initialize the interfaces.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: MEQQ2qq2.h:102
virtual Selector< DiagramIndex > diagrams(const DiagramVector &dv) const
Get diagram selector.
virtual double me2() const
The matrix element for the kinematical configuration previously provided by the last call to setKinem...
virtual Selector< const ColourLines * > colourGeometries(tcDiagPtr diag) const
Return a Selector with possible colour geometries for the selected diagram weighted by their relative...
double colA() const
Return the matrix element squared (without common pre-factors) for the specific colour configuration.
Definition: MEQQ2qq2.h:75
MEQQ2qq & operator=(const MEQQ2qq &)=delete
Private and non-existent assignment operator.
virtual void getDiagrams() const
Add all possible diagrams with the add() function.
static NoPIOClassDescription< MEQQ2qq > initMEQQ2qq
Describe a concrete class without persistent data.
Definition: MEQQ2qq2.h:110
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: MEQQ2qq2.h:96
A concreate implementation of ClassDescriptionBase describing a concrete class without persistent dat...
RCPtr is a reference counted (smart) pointer.
Definition: RCPtr.h:60
Selector is a templated class for storing objects associated with probabilities in a way such that,...
Definition: Selector.h:46
Ptr< T >::pointer new_ptr()
Simple interface to the PtrTraits<Ptr>::create()
Definition: PtrTraits.h:195
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
constexpr auto sqr(const T &x) -> decltype(x *x)
The square function should really have been included in the standard C++ library.
Definition: ThePEG.h:117
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
Definition: ClassTraits.h:161
static string className()
Return the name of class T.
Definition: ClassTraits.h:66
static string library()
The name of a file containing the dynamic library where the class T is implemented.
Definition: ClassTraits.h:85