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

A class for \( \pi \to \lepton \nu \). More...

#include <Pmunu.h>

+ Inheritance diagram for Pmunu:

Detailed Description

A class for \( \pi \to \lepton \nu \).

Author
HEPfit Collaboration

This class is used to compute the theoretical value of the width of \( \pi \to \lepton \nu \).

Definition at line 30 of file Pmunu.h.

Public Member Functions

double computeThValue ()
 arXiv:1605.07114 More...
 
 Pmunu (const StandardModel &SM_i)
 Constructor. More...
 
- Public Member Functions inherited from ThObservable
double getBinMax ()
 A get method to get the maximum value of the bin. More...
 
double getBinMin ()
 A get method to get the minimum value of the bin. More...
 
const StandardModelgetModel ()
 A get method to get the model. More...
 
const std::vector< std::string > getParametersForObservable ()
 A get method to get the parameters for the specific observable. More...
 
void setBinMax (double max)
 A set method to set the maximum value of the bin. More...
 
void setBinMin (double min)
 A set method to set the minimum value of the bin. More...
 
void setParametersForObservable (std::vector< std::string > parametersForObservable_i)
 A set method to get the parameters for the specific observable. More...
 
 ThObservable (const StandardModel &SM_i)
 Constructor. More...
 
 ThObservable (const ThObservable &orig)
 The copy constructor. More...
 
virtual ~ThObservable ()
 The default destructor. More...
 

Additional Inherited Members

- Protected Attributes inherited from ThObservable
double max
 the bin maximum. More...
 
double min
 The bin minimum. More...
 
std::vector< std::string > parametersForObservable
 a vector of parameter namesfor the specific observable More...
 
const StandardModelSM
 A reference to an object of StandardMode class. More...
 

Constructor & Destructor Documentation

◆ Pmunu()

Pmunu::Pmunu ( const StandardModel SM_i)

Constructor.

Parameters
[in]SM_ia reference to an object of type StandardModel

Definition at line 16 of file Pmunu.cpp.

17: ThObservable(SM_i)
18{
19
20
21 setParametersForObservable(make_vector<std::string>() << "fK" << "delPl2em" << "fKofP");
23
24};
@ P_P
Definition: QCD.h:338
void initializeMeson(QCD::meson meson_i) const
A method to initialize a meson.
Definition: QCD.cpp:280
void setParametersForObservable(std::vector< std::string > parametersForObservable_i)
A set method to get the parameters for the specific observable.
Definition: ThObservable.h:109
ThObservable(const StandardModel &SM_i)
Constructor.
Definition: ThObservable.h:32
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121

Member Function Documentation

◆ computeThValue()

double Pmunu::computeThValue ( )
virtual

arXiv:1605.07114

Returns
theoretical value of | \( \Gamma(\pi \rightarrow \lepton \nu) \)|

Implements ThObservable.

Definition at line 27 of file Pmunu.cpp.

28{
29 //The WC are written in the LEFT basis of arxiv:1709.04486 the expressions can be found in arxiv:1706.00410 and arxiv:1605.07114
30 gslpp::vector<gslpp::complex> ** allcoeff_P_mu_nu = SM.getFlavour().ComputeCoeffdiujlknu(0,0,1,SM.getQuarks(QCD::UP).getMass_scale());
31
32 double mP = SM.getMesons(QCD::P_P).getMass();
33
34 double mu = SM.getQuarks(QCD::UP).getMass();
35 double md = SM.getQuarks(QCD::DOWN).getMass();
36 double mmu = SM.getLeptons(StandardModel::MU).getMass();
37
38 double fP = SM.getOptionalParameter("fK") / SM.getOptionalParameter("fKofP"); // this is the pion decay constant in the SU(2)-symmetric limit
39 double delPl2em = SM.getOptionalParameter("delPl2em"); //this is the non-perturbative EM + strong isospin violation correction to the decay rate
40
41 double amp2 = ((*(allcoeff_P_mu_nu[LO]))(0) -(*(allcoeff_P_mu_nu[LO]))(1) + mP * mP / (md+mu) / mmu * ((*(allcoeff_P_mu_nu[LO]))(2) - (*(allcoeff_P_mu_nu[LO]))(3))).abs2();
42
43 //double WCnum = 1.0;
44 //double WCden = 1.0;
45
46 //return 1.;
47 return 1. / (64. * M_PI) * mmu * mmu * mP * (1-mmu*mmu/mP/mP) * (1-mmu*mmu/mP/mP) * fP * fP * (1+delPl2em) * amp2 / HCUT;
48
49}
@ LO
Definition: OrderScheme.h:34
gslpp::vector< gslpp::complex > ** ComputeCoeffdiujlknu(int i, int j, int k, double mu) const
Computes the Wilson coefficient for the Hamiltonian transitions in the JMS basis ordered as CnueduVL...
Definition: Flavour.cpp:152
double getMass_scale() const
A get method to access the scale at which the particle mass is defined.
Definition: Particle.h:133
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
const double getOptionalParameter(std::string name) const
A method to get parameters that are specific to only one set of observables.
Definition: QCD.h:450
const Meson & getMesons(const QCD::meson m) const
A get method to access a meson as an object of the type Meson.
Definition: QCD.h:526
@ UP
Definition: QCD.h:324
@ DOWN
Definition: QCD.h:325
@ MU
Definition: QCD.h:314
const Particle & getQuarks(const QCD::quark q) const
A get method to access a quark as an object of the type Particle.
Definition: QCD.h:536
const Particle & getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
const Flavour & getFlavour() const

The documentation for this class was generated from the following files: