SoftSUSY is hosted by Hepforge, IPPP Durham
SOFTSUSY  4.0
rge.h
Go to the documentation of this file.
1 
13 #ifndef RGE_H
14 #define RGE_H
15 
16 #include "def.h"
17 #include "utils.h"
18 class DoubleVector;
19 #include "linalg.h"
20 #include "numerics.h"
21 
23 namespace softsusy {
24  class Approx {
25  private:
26  int loops;
27  int thresholds;
28  public:
29  Approx(): loops(2), thresholds(0) {};
30  virtual ~Approx() {};
31 
32  inline const Approx & displayApprox() const { return *this; }
33  const Approx & operator=(const Approx &);
34  Approx(const Approx & a);
35  Approx(int l, int t);
36 
38  void setLoops(int l) { loops = l; };
41  void setThresholds(int t) { thresholds = t; };
42 
44  int displayLoops() const { return loops; };
46  int displayThresholds() const { return thresholds; };
47  };
48 
50 class RGE {
51 private:
52  double mu;
53  int numPars;
54 public:
56  RGE(): mu(0.0), numPars(0) {};
57  virtual ~RGE() {};
58 
60  void setMu(double e) { mu = e; };
63  virtual void setmu(double f) { setMu(f); };
65  void setPars(int i) { numPars = i; };
66 
68  double displayMu() const { return mu; };
70  int howMany() const { return numPars; };
71  inline const RGE & displayRGE() const { return *this; }
74  virtual const DoubleVector display() const = 0;
77 
78  virtual void set(const DoubleVector & s) = 0;
80  virtual DoubleVector beta() const = 0;
81 
83  virtual int run(double from, double to, double eps= -1.0);
85  virtual int runto(double to, double eps = -1.0);
86 
94  int callRK(double x1, double x2, DoubleVector & v,
95  DoubleVector (*derivs)(double, const DoubleVector &),
96  double eps = -1.0);
97 
98 };
99 
102 DoubleVector allDerivs(double, const DoubleVector &);
103 
104 } // namespace softsusy
105 
106 #endif
107 
108 
109 
110 
111 
112 
void setThresholds(int t)
Definition: rge.h:41
global variable declaration
Definition: def.cpp:13
void setLoops(int l)
Set number of loops used.
Definition: rge.h:38
DoubleVector is of variable length, and contains double precision.
Definition: linalg.h:35
switches (options) and parameters such as default fermion masses, required accuracy etc ...
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
int displayThresholds() const
Return level of threshold approximation.
Definition: rge.h:46
void setPars(int i)
Set number of parameters in RGE object.
Definition: rge.h:65
numerical routines - differential equation solver, differentiator and function minimiser for instance...
A few handy bits and pieces - little mathematical functions and the like.
DoubleVector allDerivs(double x, const DoubleVector &y)
Definition: rge.cpp:59
Describes a set of parameters and RGEs in general.
Definition: rge.h:50
RGE()
Default constructor fills data with zeroes.
Definition: rge.h:56
double displayMu() const
Return renomalisation scale.
Definition: rge.h:68
int displayLoops() const
Return number of loops.
Definition: rge.h:44
int howMany() const
Return number of parameters.
Definition: rge.h:70
Definition: rge.h:24
void setMu(double e)
Sets renormalisation scale to e.
Definition: rge.h:60
virtual void setmu(double f)
Definition: rge.h:63