herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
ShowerAlpha.h
1 // -*- C++ -*-
2 //
3 // ShowerAlpha.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_ShowerAlpha_H
10 #define HERWIG_ShowerAlpha_H
11 //
12 // This is the declaration of the ShowerAlpha class.
13 //
14 
15 #include "ThePEG/Interface/Interfaced.h"
16 #include "ShowerAlpha.fh"
17 
18 namespace Herwig {
19 
20 using namespace ThePEG;
21 
49 class ShowerAlpha: public Interfaced {
50 
51 public:
52 
58  ShowerAlpha() : _scaleFactor( 1.0 ) {}
60 
61 public:
62 
73  virtual double value(const Energy2 scale) const = 0;
74 
80  virtual double overestimateValue() const = 0;
81 
88  virtual double ratio(const Energy2 scale,double factor=1.) const = 0;
89 
97  double scaleFactor() const {return _scaleFactor;}
98 
102  virtual void initialize () {}
104 
105 public:
106 
113  void persistentOutput(PersistentOStream & os) const;
114 
120  void persistentInput(PersistentIStream & is, int version);
122 
129  static void Init();
130 
131 private:
132 
137  ShowerAlpha & operator=(const ShowerAlpha &) = delete;
138 
139 private:
140 
144  double _scaleFactor;
145 
146 };
147 
148 }
149 
150 #endif /* HERWIG_ShowerAlpha_H */
double scaleFactor() const
It returns the factor that multiplies the scale argument, , of the running coupling.
Definition: ShowerAlpha.h:97
virtual void initialize()
Initialize this coupling.
Definition: ShowerAlpha.h:102
This class is the abstract class from which all types of running couplings used in the Showering deri...
Definition: ShowerAlpha.h:49
-*- C++ -*-
ShowerAlpha()
The default constructor.
Definition: ShowerAlpha.h:58
double _scaleFactor
The scale factor.
Definition: ShowerAlpha.h:144