]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGenModels/EvtVubAC.hh
Updates EvtGen Code
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtVubAC.hh
1 //////////////////////////////////////////////////////////////////////
2 //
3 // Module: EvtVubAC.hh
4 //
5 //////////////////////////////////////////////////////////////////
6
7 #ifndef EVTVUBAC_HH
8 #define EVTVUBAC_HH
9
10 #include "EvtGenBase/EvtDecayIncoherent.hh"
11 #include <vector>
12
13 class EvtParticle;
14
15 class EvtVubAC:public  EvtDecayIncoherent  {
16
17 public:
18   
19   EvtVubAC() {}
20   virtual ~EvtVubAC();
21
22   std::string getName();
23
24   EvtDecayBase* clone();
25
26   void initProbMax();
27
28   void init();
29
30   void decay(EvtParticle *Bmeson); 
31
32 private:
33   // Input parameters
34   double mB;
35   double lambda2; 
36   
37   double alphaSmZ;
38   double alphaSmB;
39   double c;
40   double q;
41   double k;
42   
43   double CF;
44   double CA;
45
46   double beta0;
47   
48   std::vector<double> gvars;
49
50   double rate(double u, double w, double xb);
51   double wreg(double w);
52   double alphaS(double Q);
53   double PolyLog(double v, double z);
54   double ureg(double u);
55   double ularge(double u);
56   double Coeff(double u, double w, double xb);
57   double Coeff1(double w, double xb);
58   double Coeff0(double w, double xb);
59   double Sigma(double x1, double x2);
60   double max(double ub, double lb);
61   double d1(double u, double w, double xb);
62   double d(double u, double w, double xb);
63   double f(double w);
64   double Lambda2(double x, double alphaSmZ);
65   int Bisect(double x1, double x2,double precision,double& root,const double alphaSmZ);
66   double FindRoot(const double alphaSmZ);
67
68 };
69
70 #endif
71
72