v1.0
|
a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models
|
|
Go to the documentation of this file.
29 if (name.compare(
"UseDispersionRelation") == 0) {
32 }
else if (name.compare(
"CLNflag") == 0) {
35 }
else if (name.compare(
"FixedWCbtos") == 0) {
45 return *getPtr<HeffDF2>(
HDF2);
50 return *getPtr<HeffDB1>(
HDB1);
55 return getPtr<HeffDF2>(
HDF2)->ComputeCoeffBd(mu, scheme);
60 return getPtr<HeffDF2>(
HDF2)->ComputeCoeffBs(mu, scheme, SM);
65 return getPtr<HeffDF2>(
HDF2)->ComputeCoeffdd(mu, scheme);
70 return getPtr<HeffDF2>(
HDF2)->ComputeCoeffK(mu, scheme);
75 return getPtr<HeffDF2>(
HDF2)->ComputeCoeffmK(mu, scheme);
80 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffsmumu(mu, scheme);
85 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffdmumu(mu, scheme);
90 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffbtaunu(meson_i);
95 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffsnunu();
100 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffdnunu();
105 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffsgamma(mu, noSM, scheme);
110 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffprimesgamma(mu, scheme);
115 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffBMll(mu, lepton, noSM, scheme);
120 return getPtr<HeffDB1>(
HDB1)->ComputeCoeffprimeBMll(mu, lepton, scheme);
139 return getM<MVll>(
MVllMap, meson_i, vector_i, lep_i);
155 return getM<MVgamma>(
MVgammaMap, meson_i, vector_i);
171 return getM<MVlnu>(
MVlnuMap, meson_i, vector_i, lep_i);
188 return getM<MPlnu>(
MPlnuMap, meson_i, vector_i, lep_i);
205 return getM<MPll>(
MPllMap, meson_i, vector_i, lep_i);
208 template <
typename T,
typename... Args>
209 T&
Flavour::getM(std::map<std::vector<int>,std::shared_ptr<T> >& map, Args ... args)
const
211 std::vector<int> key({args...});
212 if(map.find(key)==map.end()) {
213 map.insert(std::make_pair(key,std::shared_ptr<T>(
new T(
mySM,args...))));
240 flagUpdateMap[std::vector<int>({meson_i, meson_j, lep_i})] = updated_i;
266 std::vector<int> key({meson_i, meson_j, lep_i});
274 template<
typename T,
typename... Args> std::shared_ptr<T>&
Flavour::getPtr(std::shared_ptr<T>& x, Args ... args)
const
276 if (x.get() ==
nullptr)
277 x.reset(
new T(
mySM, args...));
bool setFlagCLN(bool CLNflag)
T & getM(std::map< std::vector< int >, std::shared_ptr< T > > &map, Args ... args) const
std::map< std::vector< int >, std::shared_ptr< MPll > > MPllMap
std::map< std::vector< int >, std::shared_ptr< MVlnu > > MVlnuMap
gslpp::vector< gslpp::complex > ** ComputeCoeffsmumu(double mu, schemes scheme=NDR) const
Computes the Wilson coefficient for the process .
gslpp::vector< gslpp::complex > ** ComputeCoeffK(double mu, schemes scheme=NDR) const
A class for the effective Hamiltonian.
MPll & getMPll(QCD::meson meson_i, QCD::meson pseudoscalar_i, QCD::lepton lep_i) const
Returns the initial and final state dependent object for .
void setUpdateFlag(QCD::meson meson_i, QCD::meson meson_j, QCD::lepton lep_i, bool updated_i) const
sets the update flag for the initial and final state dependent object for .
bool getUpdateFlag(QCD::meson meson_i, QCD::meson meson_j, QCD::lepton lep_i) const
gets the update flag for the initial and final state dependent object for .
gslpp::vector< gslpp::complex > ** ComputeCoeffBs(double mu, schemes scheme=NDR, bool SM=false) const
Computes the Wilson coefficient for the process .
gslpp::vector< gslpp::complex > ** ComputeCoeffmK(double mu, schemes scheme=NDR) const
gslpp::vector< gslpp::complex > ** ComputeCoeffdmumu(double mu, schemes scheme=NDR) const
Computes the Wilson coefficient for the process .
A model class for the Standard Model.
std::map< std::vector< int >, std::shared_ptr< MPlnu > > MPlnuMap
gslpp::vector< gslpp::complex > ** ComputeCoeffdnunu() const
gslpp::vector< gslpp::complex > ** ComputeCoeffdd(double mu, schemes scheme=NDR) const
std::shared_ptr< HeffDF2 > HDF2
An Object for the Hamiltonian of the processes.
MPlnu & getMPlnu(QCD::meson meson_i, QCD::meson pseudoscalar_i, QCD::lepton lep_i) const
Returns the initial and final state dependent object for .
HeffDF2 & getHDF2() const
The member that returns an object of the class HeffDF2.
bool setFlagUseDispersionRelation(bool dispersion)
schemes
An enum type for regularization schemes.
meson
An enum type for mesons.
MVgamma & getMVgamma(QCD::meson meson_i, QCD::meson vector_i) const
Returns the initial and final state dependent object for .
std::map< std::vector< int >, bool > flagUpdateMap
MVlnu & getMVlnu(QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i) const
Returns the initial and final state dependent object for .
std::shared_ptr< T > & getPtr(std::shared_ptr< T > &x, Args... args) const
std::map< std::vector< int >, std::shared_ptr< MVll > > MVllMap
const StandardModel & mySM
gslpp::vector< gslpp::complex > ** ComputeCoeffsnunu() const
void setSMupdated() const
a member used for the caching for .
bool setFlag(const std::string name, const bool value)
gslpp::vector< gslpp::complex > ** ComputeCoeffBMll(double mu, QCD::lepton lepton, bool noSM=false, schemes scheme=NDR) const
Computes the Wilson coefficient for the process .
gslpp::vector< gslpp::complex > ** ComputeCoeffBd(double mu, schemes scheme=NDR) const
Computes the Wilson coefficient for the process .
Flavour(const StandardModel &SM_i)
The constructor.
gslpp::vector< gslpp::complex > ** ComputeCoeffsgamma(double mu, bool noSM=false, schemes scheme=NDR) const
Computes the Wilson coefficient for the process .
gslpp::vector< gslpp::complex > ** ComputeCoeffprimesgamma(double mu, schemes scheme=NDR) const
Computes the chirality flipped Wilson coefficient for the process .
gslpp::vector< gslpp::complex > ** ComputeCoeffprimeBMll(double mu, QCD::lepton lepton, schemes scheme=NDR) const
Computes the chirality flipped Wilson coefficient for the process .
bool setFlagFixedWCbtos(bool FixedWCbtosflag)
std::map< std::vector< int >, std::shared_ptr< MVgamma > > MVgammaMap
std::shared_ptr< HeffDB1 > HDB1
An Object for the Hamiltonian of the processes.
MVll & getMVll(QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i) const
Returns the initial and final state dependent object for .
gslpp::vector< gslpp::complex > ** ComputeCoeffbtaunu(QCD::meson meson_i) const
Computes the Wilson coefficient for the process .
HeffDB1 & getHDB1() const
The member that returns an object of the class HeffDB1.
lepton
An enum type for leptons.