fast pQCD calculations for hadron-induced processes
Alphas.h
1 #ifndef __ALPHAS_H
2 #define __ALPHAS_H
3 
4 class Alphas {
5 
6 public:
7  ~Alphas();
8 
9  // initializations
10  static void SetMz(double Mz) {
11  fMz = Mz;
12  };
13  static double GetMz() {
14  return fMz;
15  };
16  static void SetAlphasMz(double alphas) {
17  fAlphasMz = alphas;
18  };
19  static double GetAlphasMz() {
20  return fAlphasMz;
21  };
22  static void SetNf(int nf) {
23  fNf = nf;
24  };
25  static int GetNf() {
26  return fNf;
27  };
28  static void SetNLoop(int nLoop) {
29  fnLoop = nLoop;
30  };
31  static int GetNLoop() {
32  return fnLoop;
33  };
34  static void SetFlavorMatchingOn(bool FlavorMatching) {
35  bFlavorMatching = FlavorMatching;
36  };
37  static bool GetFlavorMatchingOn() {
38  return bFlavorMatching;
39  };
40  static void SetFlavorMatchingThresholds(double th1, double th2, double th3, double th4, double th5, double th6);
41  static void GetFlavorMatchingThresholds(double& th1, double& th2, double& th3, double& th4, double& th5, double& th6);
42 
43  // Getters for Alphas at scale mu
44  static double CalcAlphasMu(double mu, double alphasMz = 0, int nLoop = 0, int nFlavors = 0);
45  static double CalcAlphasMuFixedNf(double mu, int nf) { // calculate alpha_s as scale mu for fixed number of flavors nf. Ignore flavor matching thresholds.
46  return CalcAlphasMu(mu, fAlphasMz, fnLoop, nf);
47  };
48 
49  static int CalcNf(double mu);
50  static void PrintInfo();
51 
52 private:
53  static Alphas* instance;
54  Alphas();
55 
56  static double FBeta(double alphasMz , int nLoop , int nf);
57 
58 public:
59  static double fMz; // mass of Z0, which is the nominal scale here
60  static double fAlphasMz; // alpha_s at starting scale of Mz
61  static int fNf; // MAXIMUM number of active flavours. e.g. at low scales mu, number of flavors is calculated with respecting flavor thresholds if FlavorMatching is ON.
62  static int fnLoop; // n-loop solution of the RGE
63  static bool bFlavorMatching; // switch flaovr matching on or off
64  static double fTh[6]; // flavor thresholds (quark masses)
65 
66 };
67 
68 #endif // __ALPHAS_H
Definition: Alphas.h:4