a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
BParameter.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #ifndef BPARAMETER_H
9 #define BPARAMETER_H
10 
11 #include <gslpp_vector_double.h>
12 #include <vector>
13 #include <map>
14 #include <functional>
15 #include "OrderScheme.h"
16 
151 class BParameter {
152 public:
153 
158  BParameter(int n);
159 
165  BParameter(int n, std::string name_i);
166 
170  virtual ~BParameter();
171 
177  {
178  return bpars;
179  }
180 
186  {
187  this->bpars = bpars;
188  }
189 
195  void setBpars(int i, double value)
196  {
197  this->bpars(i) = value;
198  }
199 
204  const double& getMu() const
205  {
206  return mu;
207  }
208 
213  void setMu(double mu)
214  {
215  this->mu = mu;
216  }
217 
223  {
224  return scheme;
225  }
226 
232  {
233  this->scheme = scheme;
234  }
235 
240  std::vector<std::string> parameterList(std::string name_i);
241 
247  bool setParameter(std::string name_i, double value);
248 
253  void ModelParameterMapInsert(std::map< std::string, std::reference_wrapper<const double> >& ModelParamMap);
254 
259  void setFlagCsi(bool flag) {
260  FlagCsi = flag;
261  }
262 
267  void setBBsoBBd(double BBsoBBd)
268  {
269  this->BBsoBBd = BBsoBBd;
270  }
271 
276  const double& getBBsoBBd() const
277  {
278  if (name.compare("BBd") == 0) return BBsoBBd;
279  else throw std::runtime_error("BBsoBBd belongs to " + name);
280  }
281 
286  const double& getcsi() const
287  {
288  if (name.compare("BBd") == 0) return csi;
289  else throw std::runtime_error("csi belongs to " + name);
290  }
291 
296  const double& getFBsSqrtBBs1() const
297  {
298  if (name.compare("BBs") == 0) return FBsSqrtBBs1;
299  else throw std::runtime_error("FBsSqrtBBs1 belongs to " + name);
300  }
301 
306  const double& getFBsSqrtBBs2() const
307  {
308  if (name.compare("BBs") == 0) return FBsSqrtBBs2;
309  else throw std::runtime_error("FBsSqrtBBs2 belongs to " + name);
310  }
311 
316  const double& getFBsSqrtBBs3() const
317  {
318  if (name.compare("BBs") == 0) return FBsSqrtBBs3;
319  else throw std::runtime_error("FBsSqrtBBs3 belongs to " + name);
320  }
321 
326  const double& getFBsSqrtBBs4() const
327  {
328  if (name.compare("BBs") == 0) return FBsSqrtBBs4;
329  else throw std::runtime_error("FBsSqrtBBs4 belongs to " + name);
330  }
331 
336  const double& getFBsSqrtBBs5() const
337  {
338  if (name.compare("BBs") == 0) return FBsSqrtBBs5;
339  else throw std::runtime_error("FBsSqrtBBs5 belongs to " + name);
340  }
341 
346  const double& getFBdSqrtBBd2() const
347  {
348  if (name.compare("BBd") == 0) return FBdSqrtBBd2;
349  else throw std::runtime_error("FBdSqrtBBd2 belongs to " + name);
350  }
351 
356  const double& getFBdSqrtBBd3() const
357  {
358  if (name.compare("BBd") == 0) return FBdSqrtBBd3;
359  else throw std::runtime_error("FBdSqrtBBd3 belongs to " + name);
360  }
361 
366  const double& getFBdSqrtBBd4() const
367  {
368  if (name.compare("BBd") == 0) return FBdSqrtBBd4;
369  else throw std::runtime_error("FBdSqrtBBd4 belongs to " + name);
370  }
371 
376  const double& getFBdSqrtBBd5() const
377  {
378  if (name.compare("BBd") == 0) return FBdSqrtBBd5;
379  else throw std::runtime_error("FBdSqrtBBd5 belongs to " + name);
380  }
381 
382 
383 private:
385  double mu;
387  std::string name;
388  bool FlagCsi;
389  double BBsoBBd;
390  double csi;
391  double FBsSqrtBBs1;
392  double FBsSqrtBBs2;
393  double FBsSqrtBBs3;
394  double FBsSqrtBBs4;
395  double FBsSqrtBBs5;
396  double FBdSqrtBBd2;
397  double FBdSqrtBBd3;
398  double FBdSqrtBBd4;
399  double FBdSqrtBBd5;
400 };
401 
406 #endif /* BPARAMETER_H */
BParameter
A class for the bag parameters.
Definition: BParameter.h:151
BParameter::FBsSqrtBBs2
double FBsSqrtBBs2
The product of decay constant times square root of the second bag parameter for .
Definition: BParameter.h:392
BParameter::getcsi
const double & getcsi() const
A get method for csi.
Definition: BParameter.h:286
BParameter::FBsSqrtBBs4
double FBsSqrtBBs4
The product of decay constant times square root of the fourth bag parameter for .
Definition: BParameter.h:394
BParameter::getBpars
const gslpp::vector< double > & getBpars() const
A get method for the vector of the bag parameters.
Definition: BParameter.h:176
BParameter::~BParameter
virtual ~BParameter()
The default destructor.
Definition: BParameter.cpp:23
BParameter::getFBdSqrtBBd3
const double & getFBdSqrtBBd3() const
A get method for FBdSqrtBBd3.
Definition: BParameter.h:356
BParameter::parameterList
std::vector< std::string > parameterList(std::string name_i)
A method to get the parameters list.
Definition: BParameter.cpp:108
OrderScheme.h
BParameter::getFBsSqrtBBs4
const double & getFBsSqrtBBs4() const
A get method for FBsSqrtBBs4.
Definition: BParameter.h:326
BParameter::getFBsSqrtBBs2
const double & getFBsSqrtBBs2() const
A get method for FBsSqrtBBs2.
Definition: BParameter.h:306
BParameter::FBdSqrtBBd2
double FBdSqrtBBd2
The product of decay constant times square root of the second bag parameter for .
Definition: BParameter.h:396
BParameter::FBsSqrtBBs1
double FBsSqrtBBs1
The product of decay constant times square root of the first bag parameter for .
Definition: BParameter.h:391
BParameter::mu
double mu
The scale at which the bag parameters are defined.
Definition: BParameter.h:385
BParameter::FBsSqrtBBs3
double FBsSqrtBBs3
The product of decay constant times square root of the third bag parameter for .
Definition: BParameter.h:393
BParameter::FBdSqrtBBd3
double FBdSqrtBBd3
The product of decay constant times square root of the third bag parameter for .
Definition: BParameter.h:397
schemes
schemes
An enum type for regularization schemes.
Definition: OrderScheme.h:19
BParameter::FBdSqrtBBd4
double FBdSqrtBBd4
The product of decay constant times square root of the fourth bag parameter for .
Definition: BParameter.h:398
BParameter::getFBdSqrtBBd4
const double & getFBdSqrtBBd4() const
A get method for FBdSqrtBBd4.
Definition: BParameter.h:366
BParameter::setScheme
void setScheme(schemes scheme)
A set method for the scheme of the bag parameters.
Definition: BParameter.h:231
BParameter::csi
double csi
The ratio of decay constant times square root of the first bag parameters for and .
Definition: BParameter.h:390
BParameter::BBsoBBd
double BBsoBBd
The ratio of the first bag parameters for and .
Definition: BParameter.h:389
BParameter::FBsSqrtBBs5
double FBsSqrtBBs5
The product of decay constant times square root of the fifth bag parameter for .
Definition: BParameter.h:395
gslpp::vector< double >
A class for constructing and defining operations on real vectors.
Definition: gslpp_vector_double.h:33
BParameter::getFBsSqrtBBs5
const double & getFBsSqrtBBs5() const
A get method for FBsSqrtBBs5.
Definition: BParameter.h:336
BParameter::scheme
schemes scheme
The scheme in which the bag parameters are defined.
Definition: BParameter.h:386
BParameter::setBpars
void setBpars(int i, double value)
A set method for a component of the vector of bag parameters.
Definition: BParameter.h:195
BParameter::setBBsoBBd
void setBBsoBBd(double BBsoBBd)
A set method for BBs/BBd.
Definition: BParameter.h:267
BParameter::getScheme
schemes getScheme() const
A get method for the scheme of the bag parameters.
Definition: BParameter.h:222
BParameter::getFBdSqrtBBd5
const double & getFBdSqrtBBd5() const
A get method for FBdSqrtBBd5.
Definition: BParameter.h:376
BParameter::setMu
void setMu(double mu)
A set method for the scale of the bag parameters.
Definition: BParameter.h:213
BParameter::getFBsSqrtBBs1
const double & getFBsSqrtBBs1() const
A get method for FBsSqrtBBs1.
Definition: BParameter.h:296
BParameter::getBBsoBBd
const double & getBBsoBBd() const
A get method for BBs/BBd.
Definition: BParameter.h:276
BParameter::setParameter
bool setParameter(std::string name_i, double value)
A set method for setting the parameters.
Definition: BParameter.cpp:123
BParameter::getFBdSqrtBBd2
const double & getFBdSqrtBBd2() const
A get method for FBdSqrtBBd2.
Definition: BParameter.h:346
BParameter::getFBsSqrtBBs3
const double & getFBsSqrtBBs3() const
A get method for FBsSqrtBBs3.
Definition: BParameter.h:316
BParameter::name
std::string name
The meson for which the bag parameters are defined.
Definition: BParameter.h:387
BParameter::BParameter
BParameter(int n)
Constructor.
Definition: BParameter.cpp:12
BParameter::FlagCsi
bool FlagCsi
A flag to define, if true, a set of model parameters for the product of decay constant times square r...
Definition: BParameter.h:388
BParameter::setBpars
void setBpars(gslpp::vector< double > bpars)
A set method for a vector of the bag parameters.
Definition: BParameter.h:185
BParameter::setFlagCsi
void setFlagCsi(bool flag)
A set method to set the flag for the parameter set to be used for BBs and BBd.
Definition: BParameter.h:259
gslpp_vector_double.h
BParameter::bpars
gslpp::vector< double > bpars
A vector of bag parameters.
Definition: BParameter.h:384
BParameter::getMu
const double & getMu() const
A get method for the scale of the bag parameters.
Definition: BParameter.h:204
BParameter::FBdSqrtBBd5
double FBdSqrtBBd5
The product of decay constant times square root of the fifth bag parameter for .
Definition: BParameter.h:399
BParameter::ModelParameterMapInsert
void ModelParameterMapInsert(std::map< std::string, std::reference_wrapper< const double > > &ModelParamMap)
A method to pass the list of parameters as observables.
Definition: BParameter.cpp:26