BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtBtoXsgammaKagan.hh
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information:
9// Copyright (C) 2001 Brunel University, University of Wisconsin
10//
11// Module: EvtGen/EvtBtoXsgammaKagan.hh
12//
13// Description:
14// Implimentation of the Kagan-Neubert model for non-resonant
15// B->Xs,gamma decays.
16//
17// Modification history:
18//
19// Jane Tinslay, Francesca Di Lodovico March 27, 2001 Module created
20//
21//------------------------------------------------------------------------
22
23#ifndef EVTBTOXSGAMMAKAGAN_HH
24#define EVTBTOXSGAMMAKAGAN_HH
25
27#include <vector>
28
30
31public:
33
34 virtual ~EvtBtoXsgammaKagan();
35
36 void init( int, double* );
37
38 void computeHadronicMass( int, double* );
39
41
42 double GetMass( int code );
43
44 double CalcAlphaS( double );
45
46 void CalcWilsonCoeffs();
47 void CalcDelta();
48 double Fz( double );
49
50private:
51 // Input parameters
52 double _mb;
53 double _mB;
54 double _delta;
55 double _nIntervalS;
56 double _nIntervalmH;
57 double _lambdabar;
58 double _lam1;
59 double _mHmin;
60 double _mHmax;
61 // Other parameters
62 double _r7;
63 double _gam77;
64 double _gam27;
65 double _gam87;
66 double _beta0;
67 double _beta1;
68 double _alphasmZ;
69 double _mZ;
70 double _z;
71 double _fz;
72 double _lam2;
73 double _kappabar;
74 double _rer2;
75 double _rer8;
76 double _kSLemmu;
77 double _mW;
78 double _mt;
79 double _ms;
80 double _mu;
81
82 double _c2mu;
83 double _c70mu;
84 double _c80mu;
85 double _c71mu;
86 double _c7emmu;
87
88 double _cDeltatot;
89
90 double _alpha;
91 double _alphasmW;
92 double _alphasmt;
93 double _alphasmu;
94 double _alphasmubar;
95 double _etamu;
96
97 std::vector<double> _mHVect;
98
99 static double ReG( double );
100 static double ImG( double );
101 static double s77( double );
102 static double s88( double, double, double );
103 static double s78( double );
104 static double s22Func( double var, const std::vector<double>& coeffs );
105 static double s27Func( double var, const std::vector<double>& coeffs );
106
107 static double Delta( double, double );
108 static double DeltaFermiFunc( double, const std::vector<double>& coeffs1,
109 const std::vector<double>& coeffs2,
110 const std::vector<double>& coeffs3 );
111 static double s77FermiFunc( double, const std::vector<double>& coeffs1,
112 const std::vector<double>& coeffs2 );
113 static double s88FermiFunc( double, const std::vector<double>& coeffs1,
114 const std::vector<double>& coeffs2,
115 const std::vector<double>& coeffs3 );
116 static double s78FermiFunc( double, const std::vector<double>& coeffs1,
117 const std::vector<double>& coeffs2 );
118 static double s22FermiFunc( double, std::vector<double>& coeffs );
119 static double s27FermiFunc( double, std::vector<double>& coeffs );
120 static double s28FermiFunc( double, std::vector<double>& coeffs );
121 static double GetArrayVal( double, double, double, double, std::vector<double> );
122 static double sFermiFunc( double, const std::vector<double>& coeffs1,
123 const std::vector<double>& coeffs2,
124 const std::vector<double>& coeffs3,
125 const std::vector<double>& coeffs4 );
126 static double FermiFunc( double, const std::vector<double>& coeffs );
127 static double diLogFunc( double );
128 static double diLogMathematica( double );
129 double* massHad;
130 double* brHad;
131 static double intervalMH;
132 static bool bbprod;
133};
134
135#endif
void init(int, double *)
void computeHadronicMass(int, double *)
double GetMass(int code)