Page MenuHomeHEPForge

EvtVubBLNP.hh
No OneTemporary

Size
4 KB
Referenced Files
None
Subscribers
None

EvtVubBLNP.hh

/***********************************************************************
* Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
* *
* This file is part of EvtGen. *
* *
* EvtGen is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. *
* *
* EvtGen is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
***********************************************************************/
#ifndef EVTVUBBLNP_HH
#define EVTVUBBLNP_HH
#include "EvtGenBase/EvtDecayIncoherent.hh"
#include <vector>
class EvtParticle;
// Description: Modeled on Riccardo Faccini's EvtVubNLO module
// tripleDiff from BLNP's notebook (based on BLNP4, hep-ph/0504071)
class EvtVubBLNP : public EvtDecayIncoherent {
public:
std::string getName() override;
EvtDecayBase* clone() override;
void initProbMax() override;
void init() override;
void decay( EvtParticle* Bmeson ) override;
private:
// Input parameters
double mBB;
double lambda2;
// Shape function parameters
double b;
double Lambda;
double Ecut;
double wzero;
// SF and SSF modes
int itype;
double dtype;
int isubl;
// flags
int flag1;
int flag2;
int flag3;
// Quark mass
double mb;
// Matching scales
double muh;
double mui;
double mubar;
// Perturbative quantities
double CF;
double CA;
double beta0;
double beta1;
double beta2;
double zeta3;
double Gamma0;
double Gamma1;
double Gamma2;
double gp0;
double gp1;
double Lbar;
double mupisq;
double moment2;
int flagpower;
int flag2loop;
int maxLoop;
double precision;
std::vector<double> gvars;
double rate3( double Pp, double Pl, double Pm );
double F1( double Pp, double Pm, double muh, double mui, double mubar,
double doneJS, double done1 );
double F2( double Pp, double Pm, double muh, double mui, double mubar,
double done3 );
double F3( double Pp, double Pm, double muh, double mui, double mubar,
double done2 );
double DoneJS( double Pp, double Pm, double mui );
double Done1( double Pp, double Pm, double mui );
double Done2( double Pp, double Pm, double mui );
double Done3( double Pp, double Pm, double mui );
static double IntJS( double what, const std::vector<double>& vars );
static double Int1( double what, const std::vector<double>& vars );
static double Int2( double what, const std::vector<double>& vars );
static double Int3( double what, const std::vector<double>& vars );
static double g1( double w, const std::vector<double>& vars );
static double g2( double w, const std::vector<double>& vars );
static double g3( double w, const std::vector<double>& vars );
static double Shat( double w, const std::vector<double>& vars );
static double Mzero( double muf, double mu, double mupisq,
const std::vector<double>& vars );
double wS( double w );
double t( double w );
double u( double w );
double v( double w );
double myfunction( double w, double Lbar, double mom2 );
double myfunctionBIK( double w, double Lbar, double mom2 );
double dU1nlo( double muh, double mui );
double U1lo( double muh, double mui );
double Sfun( double mu1, double mu2, double epsilon );
double S0( double a1, double r );
double S1( double a1, double r );
double S2( double a1, double r );
double aGamma( double mu1, double mu2, double epsilon );
double agp( double mu1, double mu2, double epsilon );
double alo( double muh, double mui );
double anlo( double muh, double mui ); // d/depsilon of aGamma
static double alphas( double mu, const std::vector<double>& vars );
double PolyLog( double v, double z );
static double Gamma( double z );
static double Gamma( double a, double x );
static double gamser( double a, double x, double LogGamma );
static double gammcf( double a, double x, double LogGamma );
double findBLNPWhat();
std::vector<double> _pf;
};
#endif

File Metadata

Mime Type
text/x-c
Expires
Tue, Sep 30, 6:12 AM (22 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
6563589
Default Alt Text
EvtVubBLNP.hh (4 KB)

Event Timeline