Belle II Software  release-08-01-10
EvtBSemiTauonicDecayRateCalculator.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <cstddef>
12 
13 namespace Belle2 {
19  class EvtBSemiTauonicHelicityAmplitudeCalculator;
20 
23 
24  public:
27 
30 
40  double dGammadwdcostau(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau, int tauhel, int Dhel, double w,
41  double costau);
42 
51  double dGammadw(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau, int tauhel, int Dhel, double w);
52 
61  double dGammadcostau(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau, int tauhel, int Dhel, double costau);
62 
70  double Gamma(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau, int tauhel, int Dhel);
71 
77  double GammaD(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau);
78 
84  double GammaDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau);
85 
91  double GammaSMD(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mlep = 0.0005110);
92 
98  double GammaSMDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mlep = 0.0005110);
99 
106  double RGammaD(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mtau, const double mlep = 0.0005110);
107 
113  double RGammaDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mtau, const double mlep = 0.0005110);
114 
119  double PtauD(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mtau);
120 
125  double PtauDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mtau);
126 
131  double PDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, const double mtau);
132 
139  double pf(const EvtBSemiTauonicHelicityAmplitudeCalculator& BSTD, double mtau, int Dhel, double w);
140 
141  private:
143  double EvaluateByW(double* x, double* param); // x=w
144 
146  double EvaluateByCostau(double* x, double* param); // x=costau
147 
149  double EvaluateBy2D(double* x, double* param); // x={w,costau}
150 
153  };
154 
156 } // namespace Belle2
157 
Class to calculate the differential decay rate, R(D), R(D*), polarizations of tau and D* using BSTD m...
const EvtBSemiTauonicHelicityAmplitudeCalculator * m_BSTD
temporal pointer to the helicity amplitude calculator for EvaluateBy* functions
The class calculates the helicity amplitude of semi-tauonic B decays including new physics effects ba...
double EvaluateByCostau(double *x, double *param)
Function used internally for numerical integration.
double EvaluateByW(double *x, double *param)
Function used internally for numerical integration.
double dGammadwdcostau(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau, int tauhel, int Dhel, double w, double costau)
Function calculates the differential decay rate dGamma/dw/dcostau.
double RGammaD(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mtau, const double mlep=0.0005110)
Function calculates the ratio of Br(B->Dtaunu)/Br(B->Dlnu), R(D).
double PDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mtau)
Function calculates the polarization of D*, longitudinal/(longitudinal + transverse),...
double GammaDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau)
Function calculates the differential decay rate Gamma for D*taunu decay, integrated for w and costau ...
double dGammadw(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau, int tauhel, int Dhel, double w)
Function calculates the differential decay rate dGamma/dw, integrated for costau.
double GammaSMD(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mlep=0.0005110)
Function calculates the SM decay rate Gamma for Dlnu decay, integrated for w and costau and summed fo...
double RGammaDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mtau, const double mlep=0.0005110)
Function calculates the ratio of Br(B->Dtaunu)/Br(B->Dlnu), R(D*).
double Gamma(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau, int tauhel, int Dhel)
Function calculates the helicity dependent decay rate Gamma, integrated for w and costau.
double PtauDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mtau)
Function calculates the polarization of tau, (RH - LH)/(LH + RH), in B->D*taunu decay.
double PtauD(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mtau)
Function calculates the polarization of tau, (RH - LH)/(LH + RH), in B->Dtaunu decay.
double GammaSMDstar(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, const double mlep=0.0005110)
Function calculates the SM decay rate Gamma for D*lnu decay, integrated for w and costau and summed f...
double dGammadcostau(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau, int tauhel, int Dhel, double costau)
Function calculates the differential decay rate dGamma/dcostau, integrated for w.
double pf(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau, int Dhel, double w)
Phase space factor, which is multiplied to the helicity amplitude to calculate the decay rate.
double EvaluateBy2D(double *x, double *param)
Function used internally for numerical integration.
double GammaD(const EvtBSemiTauonicHelicityAmplitudeCalculator &BSTD, double mtau)
Function calculates the decay rate Gamma for Dtaunu decay, integrated for w and costau and summed for...
Abstract base class for different kinds of events.