ThePEG  1.8.0
GRV94L.h
1 // -*- C++ -*-
2 //
3 // GRV94L.h is a part of ThePEG - Toolkit for HEP Event Generation
4 // Copyright (C) 1999-2011 Leif Lonnblad
5 //
6 // ThePEG is licenced under version 2 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef ThePEG_GRV94L_H
10 #define ThePEG_GRV94L_H
11 // This is the declaration of the GRV94L class.
12 
13 #include "ThePEG/PDF/GRVBase.h"
14 
15 namespace ThePEG {
16 
24 class GRV94L: public GRVBase {
25 
29  Energy2 mu2() const { return 0.23*GeV2; }
30 
34  Energy2 lam2() const { return sqr(0.2322*GeV); }
35 
36 protected:
37 
42  virtual void setup(double l, Energy2 scale) const;
43 
48  virtual double uv() const;
49 
54  virtual double dv() const;
55 
60  virtual double del() const;
61 
66  virtual double udb() const;
67 
72  virtual double sb() const;
73 
78  virtual double cb() const;
79 
84  virtual double bb() const;
85 
90  virtual double gl() const;
91 
92 public:
93 
97  static void Init();
98 
99 protected:
100 
107  virtual IBPtr clone() const;
108 
113  virtual IBPtr fullclone() const;
115 
116 private:
117 
122 
126  GRV94L & operator=(const GRV94L &);
127 
128 };
129 
134 template <>
135 struct BaseClassTrait<GRV94L,1>: public ClassTraitsType {
137  typedef GRVBase NthBase;
138 };
139 
142 template <>
143 struct ClassTraits<GRV94L>: public ClassTraitsBase<GRV94L> {
145  static string className() { return "ThePEG::GRV94L"; }
149  static string library() { return "GRV94L.so"; }
150 };
151 
154 }
155 
156 #endif /* ThePEG_GRV94L_H */