a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
MPlnu Class Reference

#include <MPlnu.h>

Detailed Description

Definition at line 21 of file MPlnu.h.

Public Member Functions

double get_f0 (double q2)
 return f0 form factor at \( q^2 \) More...
 
double get_fplus (double q2)
 return fplus form factor at \( q^2 \) More...
 
double get_fT (double q2)
 return fT form factor at \( q^2 \) More...
 
double get_strong_unitarity_BGL ()
 Strong Unitarity constraint for BGL parameters using HQET. More...
 
double get_unitarity_0plus_BGL ()
 Weak Unitarity constraint for BGL parameters related to 0+ resonances. More...
 
double get_unitarity_1min_BGL ()
 Weak Unitarity constraint for BGL parameters related to 1- resonances. More...
 
double getaf0_0 ()
 The BGL parameter \( a_0^{f_0}\). More...
 
double getDeltaGammaDeltaw (double w_min, double w_max)
 The integral of \( d\Gamma/dw \) from \(w_{min}\) to \(w_{max}\). More...
 
double getMwidth ()
 The width of the meson M. More...
 
std::vector< std::string > initializeMPlnuParameters ()
 
 MPlnu (const StandardModel &SM_i, QCD::meson meson_i, QCD::meson pseudoscalar_i, QCD::lepton lep_i)
 Constructor. More...
 
virtual ~MPlnu ()
 Destructor. More...
 

Private Attributes

bool btocNPpmflag
 
bool CLNflag
 
double GF
 
QCD::lepton lep
 
double Mb
 
double Mc
 
QCD::meson meson
 
double Mlep
 
double MM
 
double Mnu
 
double MP
 
std::vector< std::string > mplnuParameters
 
double mu_b
 
const StandardModelmySM
 
bool NPanalysis
 
QCD::meson pseudoscalarM
 
double RV
 
double w0
 
double width
 
double z0
 

Constructor & Destructor Documentation

◆ MPlnu()

MPlnu::MPlnu ( const StandardModel SM_i,
QCD::meson  meson_i,
QCD::meson  pseudoscalar_i,
QCD::lepton  lep_i 
)

Constructor.

Parameters
[in]SM_ia reference to an object of type StandardModel
[in]meson_iinitial meson of the decay
[in]vector_ifinal vector meson of the decay
[in]lep_ifinal leptons of the decay

Definition at line 20 of file MPlnu.cpp.

21 : mySM(SM_i)
22 {
23  lep = lep_i;
24  meson = meson_i;
25  pseudoscalarM = pseudoscalar_i;
26  CLNflag = false;
27  btocNPpmflag = false;
28 
29  w_J = gsl_integration_cquad_workspace_alloc(100);
30 
31  checkcache_int_tau = 0;
32  checkcache_int_mu = 0;
33  checkcache_int_el = 0;
34 
35  double max_double = std::numeric_limits<double>::max();
36 
37  fplusz0_cache = max_double;
38  rho1to2_cache = max_double;
39  N_0_cache = max_double;
40  alpha_0_cache = max_double;
41  alpha_p_cache = max_double;
42  beta_0_cache = max_double;
43  beta_p_cache = max_double;
44  gamma_0_cache = max_double;
45  gamma_p_cache = max_double;
46  af0_1_cache = max_double;
47  af0_2_cache = max_double;
48  afplus_0_cache = max_double;
49  afplus_1_cache = max_double;
50  afplus_2_cache = max_double;
51 
52 #if NBGL == 3
53  af0_3_cache = max_double;
54  afplus_3_cache = max_double;
55 #endif
56 
57  CS_cache = max_double;
58  CSp_cache = max_double;
59  CP_cache = max_double;
60  CPp_cache = max_double;
61  CV_cache = max_double;
62  CVp_cache = max_double;
63  CA_cache = max_double;
64  CAp_cache = max_double;
65  CT_cache = max_double;
66  CTp_cache = max_double;
67 }

◆ ~MPlnu()

MPlnu::~MPlnu ( )
virtual

Destructor.

Definition at line 69 of file MPlnu.cpp.

70 {}

Member Function Documentation

◆ get_f0()

double MPlnu::get_f0 ( double  q2)

return f0 form factor at \( q^2 \)

Returns
\( f_{0}(q^2) \)

Definition at line 629 of file MPlnu.cpp.

629 {
630  updateParameters();
631 
632  return fplus(q2);
633 }
634 

◆ get_fplus()

double MPlnu::get_fplus ( double  q2)

return fplus form factor at \( q^2 \)

Returns
\( f_{+}(q^2) \)

Definition at line 622 of file MPlnu.cpp.

◆ get_fT()

double MPlnu::get_fT ( double  q2)

return fT form factor at \( q^2 \)

Returns
\( q^2 \)

Definition at line 636 of file MPlnu.cpp.

636 {
637  updateParameters();
638 
639  return f0(q2);
640 }
641 

◆ get_strong_unitarity_BGL()

double MPlnu::get_strong_unitarity_BGL ( )

Strong Unitarity constraint for BGL parameters using HQET.

Returns
\( \Sum_i (af0_i^2) \)

Definition at line 609 of file MPlnu.cpp.

616 {
617  updateParameters();
618 
619 #if NBGL == 3
620  return 1707.54 * afplus_0 * afplus_0 + 1299.57 * afplus_0 * afplus_1 + 442.82 * afplus_1 * afplus_1 - 356.01 * afplus_0 * afplus_2

◆ get_unitarity_0plus_BGL()

double MPlnu::get_unitarity_0plus_BGL ( )

Weak Unitarity constraint for BGL parameters related to 0+ resonances.

Returns
\( \Sum_i (af0_i^2) \)

Definition at line 598 of file MPlnu.cpp.

605 {
606  updateParameters();
607 

◆ get_unitarity_1min_BGL()

double MPlnu::get_unitarity_1min_BGL ( )

Weak Unitarity constraint for BGL parameters related to 1- resonances.

Returns
\( \Sum_i (af+_i^2) \)

Definition at line 587 of file MPlnu.cpp.

594 {
595  updateParameters();
596 

◆ getaf0_0()

double MPlnu::getaf0_0 ( )
inline

The BGL parameter \( a_0^{f_0}\).

Returns
\( a_0^{f_0}\)

Definition at line 96 of file MPlnu.h.

97  {
98  updateParameters();
99  return af0_0;
100  }

◆ getDeltaGammaDeltaw()

double MPlnu::getDeltaGammaDeltaw ( double  w_min,
double  w_max 
)

The integral of \( d\Gamma/dw \) from \(w_{min}\) to \(w_{max}\).

Parameters
[in]w_minmaximum q^2 of the integral
[in]w_maxminimum q^2 of the integral
Returns
\( <d\Gamma/dw> \)

Definition at line 571 of file MPlnu.cpp.

578 {
579  updateParameters();
580 
581  double q2_min = (2. * MM * MP)*(w0 - w_max); // min is Mlep*Mlep;
582  double q2_max = (2. * MM * MP)*(w0 - w_min); // max is (MM-MP)*(MM-MP);
583 
584  double intJ1 = integrateJ(1, q2_min, q2_max);
585  double intJ3 = integrateJ(3, q2_min, q2_max);

◆ getMwidth()

double MPlnu::getMwidth ( )
inline

The width of the meson M.

Returns
\( \Gamma_M \)

Definition at line 86 of file MPlnu.h.

87  {
88  updateParameters();
89  return width;
90  }

◆ initializeMPlnuParameters()

std::vector< std::string > MPlnu::initializeMPlnuParameters ( )

Definition at line 72 of file MPlnu.cpp.

73 {
75  btocNPpmflag = (mySM.getModelName().compare("RealWeakEFTCCPM") == 0);
76  NPanalysis = (mySM.getModelName().compare("RealWeakEFTCCPM") == 0 || mySM.getModelName().compare("RealWeakEFTCC") == 0);
77 
79  << "af0_1" << "af0_2" << "afplus_0" << "afplus_1" << "afplus_2"
80 #if NBGL == 3
81  << "af0_3" << "afplus_3"
82 #endif
83  << "mBc1m_1" << "mBc1m_2" << "mBc1m_3" << "mBc1m_4"
84  << "mBc0p_1" << "mBc0p_2" << "chitildeT" << "chiL" << "nI";
85  else {
86  std::stringstream out;
87  out << pseudoscalarM;
88  throw std::runtime_error("MPlnu: vector " + out.str() + " not implemented");
89  }
90 
91  if (CLNflag) {
92  mplnuParameters.clear();
94  << "fplusz0" << "rho1to2"
95  << "N_0" << "alpha_0" << "alpha_p" << "beta_0" << "beta_p" << "gamma_0" << "gamma_p";
96  }
97 
100  return mplnuParameters;
101 }

Member Data Documentation

◆ btocNPpmflag

bool MPlnu::btocNPpmflag
private

A flag for switching to the +/- basis for NP Wilson coefficients

Definition at line 109 of file MPlnu.h.

◆ CLNflag

bool MPlnu::CLNflag
private

A flag for switching to CLN parameterization

Definition at line 108 of file MPlnu.h.

◆ GF

double MPlnu::GF
private

Fermi constant

Definition at line 112 of file MPlnu.h.

◆ lep

QCD::lepton MPlnu::lep
private

Final leptons type

Definition at line 104 of file MPlnu.h.

◆ Mb

double MPlnu::Mb
private

b quark mass

Definition at line 121 of file MPlnu.h.

◆ Mc

double MPlnu::Mc
private

charm quark mass

Definition at line 122 of file MPlnu.h.

◆ meson

QCD::meson MPlnu::meson
private

Initial meson type

Definition at line 105 of file MPlnu.h.

◆ Mlep

double MPlnu::Mlep
private

Lepton mass

Definition at line 113 of file MPlnu.h.

◆ MM

double MPlnu::MM
private

Initial meson mass

Definition at line 115 of file MPlnu.h.

◆ Mnu

double MPlnu::Mnu
private

Neutrino mass

Definition at line 114 of file MPlnu.h.

◆ MP

double MPlnu::MP
private

Final pseudoscalar meson mass

Definition at line 116 of file MPlnu.h.

◆ mplnuParameters

std::vector<std::string> MPlnu::mplnuParameters
private

The string of mandatory MPlnu parameters

Definition at line 107 of file MPlnu.h.

◆ mu_b

double MPlnu::mu_b
private

b mass scale

Definition at line 120 of file MPlnu.h.

◆ mySM

const StandardModel& MPlnu::mySM
private

Model type

Definition at line 103 of file MPlnu.h.

◆ NPanalysis

bool MPlnu::NPanalysis
private

A flag to switch to BSM analysis

Definition at line 110 of file MPlnu.h.

◆ pseudoscalarM

QCD::meson MPlnu::pseudoscalarM
private

Final vector meson type

Definition at line 106 of file MPlnu.h.

◆ RV

double MPlnu::RV
private

Dimensionless meson - vector mass ratio

Definition at line 119 of file MPlnu.h.

◆ w0

double MPlnu::w0
private

Kinematic variable w at q2=0

Definition at line 117 of file MPlnu.h.

◆ width

double MPlnu::width
private

Initial meson width

Definition at line 123 of file MPlnu.h.

◆ z0

double MPlnu::z0
private

Kinematic variable z at q2=0

Definition at line 118 of file MPlnu.h.


The documentation for this class was generated from the following files:
MPlnu::mySM
const StandardModel & mySM
Definition: MPlnu.h:103
MPlnu::width
double width
Definition: MPlnu.h:123
MPlnu::btocNPpmflag
bool btocNPpmflag
Definition: MPlnu.h:109
QCD::initializeMeson
void initializeMeson(QCD::meson meson_i) const
A method to initialize a meson.
Definition: QCD.cpp:236
make_vector
Definition: std_make_vector.h:15
QCD::D_P
Definition: QCD.h:342
MPlnu::meson
QCD::meson meson
Definition: MPlnu.h:105
Flavour::getFlagCLN
bool getFlagCLN() const
Definition: Flavour.h:255
MPlnu::MM
double MM
Definition: MPlnu.h:115
MPlnu::pseudoscalarM
QCD::meson pseudoscalarM
Definition: MPlnu.h:106
MPlnu::NPanalysis
bool NPanalysis
Definition: MPlnu.h:110
MPlnu::w0
double w0
Definition: MPlnu.h:117
StandardModel::getFlavour
const Flavour & getFlavour() const
Definition: StandardModel.h:1020
MPlnu::mplnuParameters
std::vector< std::string > mplnuParameters
Definition: MPlnu.h:107
af0_0
Definition: MPlnuObservables.h:195
MPlnu::CLNflag
bool CLNflag
Definition: MPlnu.h:108
Model::getModelName
std::string getModelName() const
A method to fetch the name of the model.
Definition: Model.h:59
MPlnu::MP
double MP
Definition: MPlnu.h:116
MPlnu::lep
QCD::lepton lep
Definition: MPlnu.h:104