Belle II Software development
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
13namespace 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.