EvtGen 2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
EvtBBScalar Class Reference

#include <EvtGenModels/EvtBBScalar.hh>

Inheritance diagram for EvtBBScalar:
EvtDecayAmp EvtDecayBase

Classes

struct  FormFactor

Public Member Functions

 EvtBBScalar ()
std::string getName () const override
EvtBBScalar * clone () const override
void decay (EvtParticle *p) override
void init () override
void initProbMax () override
Public Member Functions inherited from EvtDecayAmp
void makeDecay (EvtParticle *p, bool recursive=true) override
void setWeight (double weight)
void vertex (const EvtComplex &amp)
void vertex (int i1, const EvtComplex &amp)
void vertex (int i1, int i2, const EvtComplex &amp)
void vertex (int i1, int i2, int i3, const EvtComplex &amp)
void vertex (int *i1, const EvtComplex &amp)
const EvtAmp & amplitude () const
virtual ~EvtDecayAmp ()
Public Member Functions inherited from EvtDecayBase
virtual std::string commandName ()
virtual void command (std::string cmd)
virtual std::string getParamName (int i)
virtual std::string getParamDefault (int i)
double getProbMax (double prob)
double resetProbMax (double prob)
 EvtDecayBase ()=default
virtual ~EvtDecayBase ()=default
virtual bool matchingDecay (const EvtDecayBase &other) const
EvtId getParentId () const
double getBranchingFraction () const
void disableCheckQ ()
void checkQ ()
int getNDaug () const
const EvtId * getDaugs () const
EvtId getDaug (int i) const
int getNArg () const
bool getFSR () const
void setFSR ()
void setVerbose ()
void setSummary ()
double * getArgs ()
std::string * getArgsStr ()
double getArg (unsigned int j)
double getStoredArg (int j) const
double getNStoredArg () const
std::string getArgStr (int j) const
std::string getModelName () const
int getDSum () const
bool summary () const
bool verbose () const
void saveDecayInfo (EvtId ipar, int ndaug, const EvtId *daug, int narg, std::vector< std::string > &args, std::string name, double brfr)
void printSummary () const
void printInfo () const
void setProbMax (double prbmx)
void noProbMax ()
void checkNArg (int a1, int a2=-1, int a3=-1, int a4=-1)
void checkNDaug (int d1, int d2=-1)
void checkSpinParent (EvtSpinType::spintype sp)
void checkSpinDaughter (int d1, EvtSpinType::spintype sp)
virtual int nRealDaughters () const

Private Types

enum  Baryons {
  Lambda , Proton , Neutron , Sigma0 ,
  Sigma_minus , Xi0 , Xi_minus , nBaryons
}

Private Member Functions

void setKnownBaryonTypes (const EvtId &baryon)
double B_pi_f1 (double t) const
double B_pi_f0 (double t) const
double baryonF1F2 (double t) const
double G_p (double t) const
double G_n (double t) const
double baryon_gA (double t) const
double baryon_hA (double t) const
double baryon_gP (double t) const
double baryon_fS (double t) const
double D_A (double t) const
double F_A (double t) const
double D_P (double t) const
double F_P (double t) const
double D_S (double t) const
double F_S (double t) const
double formFactorFit (double t, const std::vector< double > &params) const
const EvtVector4C amp_A (const EvtVector4R &p4B, const EvtVector4R &p4Scalar)
const EvtComplex amp_B (const EvtDiracParticle *baryon1, const EvtDiracSpinor &b1Pol, const EvtDiracParticle *baryon2, const EvtDiracSpinor &b2Pol, int index)
const EvtComplex amp_B_vectorPart (const EvtDiracParticle *baryon1, const EvtDiracSpinor &b1Pol, const EvtDiracParticle *baryon2, const EvtDiracSpinor &b2Pol, int index)
const EvtComplex amp_B_axialPart (const EvtDiracParticle *baryon1, const EvtDiracSpinor &b1Pol, const EvtDiracParticle *baryon2, const EvtDiracSpinor &b2Pol, int index)
const EvtComplex amp_C (const EvtDiracParticle *baryon1, const EvtDiracSpinor &b1Pol, const EvtDiracParticle *baryon2, const EvtDiracSpinor &b2Pol, int index)
const EvtComplex amp_C_scalarPart (const EvtDiracSpinor &b1Pol, const EvtDiracSpinor &b2Pol, double t)
const EvtComplex amp_C_pseudoscalarPart (const EvtDiracSpinor &b1Pol, const EvtDiracSpinor &b2Pol, double t)
EvtComplex calcAmpliude (const EvtParticle *p, const unsigned int polState)

Private Attributes

std::string m_scalarType
std::map< std::string, FormFactor > m_f0Map
std::map< std::string, FormFactor > m_f1Map
std::bitset< nBaryons > m_baryonCombination
double m_massRatio
double m_baryonMassSum

Static Private Attributes

static const EvtComplex m_I = EvtComplex( 0, 1 )
static const EvtComplex m_V_ub
static const EvtComplex m_V_us_star = EvtComplex( 0.22, 0 )
static const EvtComplex m_a1 = EvtComplex( 1.05, 0 )
static const EvtComplex m_V_tb = EvtComplex( 0.99915, 0 )
static const EvtComplex m_V_ts_star
static const EvtComplex m_a4 = EvtComplex( -387.3e-4, -121e-4 )
static const EvtComplex m_a6 = EvtComplex( -555.3e-4, -121e-4 )
static const double m_x []
static const double m_y [] = { 292.62, -735.73 }
static const double m_ms = 0.120
static const double m_mu = 0.029 * 0.120
static const double m_mb = 4.88
static const EvtComplex m_const_B
static const EvtComplex m_const_C = 2 * m_a6 * m_V_tb * m_V_ts_star

Additional Inherited Members

Static Public Member Functions inherited from EvtDecayBase
static void findMasses (EvtParticle *p, int ndaugs, const EvtId daugs[10], double masses[10])
static void findMass (EvtParticle *p)
static double findMaxMass (EvtParticle *p)
Protected Member Functions inherited from EvtDecayBase
bool daugsDecayedByParentModel () const
Protected Attributes inherited from EvtDecayAmp
EvtAmp m_amp2
Protected Attributes inherited from EvtDecayBase
bool m_daugsDecayedByParentModel

Detailed Description

Definition at line 43 of file EvtBBScalar.hh.

Member Enumeration Documentation

◆ Baryons

enum EvtBBScalar::Baryons
private
Enumerator
Lambda 
Proton 
Neutron 
Sigma0 
Sigma_minus 
Xi0 
Xi_minus 
nBaryons 

Definition at line 60 of file EvtBBScalar.hh.

Constructor & Destructor Documentation

◆ EvtBBScalar()

EvtBBScalar::EvtBBScalar ( )

Definition at line 51 of file EvtBBScalar.cpp.

Member Function Documentation

◆ amp_A()

const EvtVector4C EvtBBScalar::amp_A ( const EvtVector4R & p4B,
const EvtVector4R & p4Scalar )
private

Definition at line 401 of file EvtBBScalar.cpp.

◆ amp_B()

const EvtComplex EvtBBScalar::amp_B ( const EvtDiracParticle * baryon1,
const EvtDiracSpinor & b1Pol,
const EvtDiracParticle * baryon2,
const EvtDiracSpinor & b2Pol,
int index )
private

Definition at line 413 of file EvtBBScalar.cpp.

◆ amp_B_axialPart()

const EvtComplex EvtBBScalar::amp_B_axialPart ( const EvtDiracParticle * baryon1,
const EvtDiracSpinor & b1Pol,
const EvtDiracParticle * baryon2,
const EvtDiracSpinor & b2Pol,
int index )
private

Definition at line 442 of file EvtBBScalar.cpp.

◆ amp_B_vectorPart()

const EvtComplex EvtBBScalar::amp_B_vectorPart ( const EvtDiracParticle * baryon1,
const EvtDiracSpinor & b1Pol,
const EvtDiracParticle * baryon2,
const EvtDiracSpinor & b2Pol,
int index )
private

Definition at line 422 of file EvtBBScalar.cpp.

◆ amp_C()

const EvtComplex EvtBBScalar::amp_C ( const EvtDiracParticle * baryon1,
const EvtDiracSpinor & b1Pol,
const EvtDiracParticle * baryon2,
const EvtDiracSpinor & b2Pol,
int index )
private

Definition at line 471 of file EvtBBScalar.cpp.

◆ amp_C_pseudoscalarPart()

const EvtComplex EvtBBScalar::amp_C_pseudoscalarPart ( const EvtDiracSpinor & b1Pol,
const EvtDiracSpinor & b2Pol,
double t )
private

Definition at line 498 of file EvtBBScalar.cpp.

◆ amp_C_scalarPart()

const EvtComplex EvtBBScalar::amp_C_scalarPart ( const EvtDiracSpinor & b1Pol,
const EvtDiracSpinor & b2Pol,
double t )
private

Definition at line 491 of file EvtBBScalar.cpp.

◆ B_pi_f0()

double EvtBBScalar::B_pi_f0 ( double t) const
private

Definition at line 387 of file EvtBBScalar.cpp.

◆ B_pi_f1()

double EvtBBScalar::B_pi_f1 ( double t) const
private

Definition at line 378 of file EvtBBScalar.cpp.

◆ baryon_fS()

double EvtBBScalar::baryon_fS ( double t) const
private

Definition at line 221 of file EvtBBScalar.cpp.

◆ baryon_gA()

double EvtBBScalar::baryon_gA ( double t) const
private

Definition at line 165 of file EvtBBScalar.cpp.

◆ baryon_gP()

double EvtBBScalar::baryon_gP ( double t) const
private

Definition at line 193 of file EvtBBScalar.cpp.

◆ baryon_hA()

double EvtBBScalar::baryon_hA ( double t) const
private

Definition at line 287 of file EvtBBScalar.cpp.

◆ baryonF1F2()

double EvtBBScalar::baryonF1F2 ( double t) const
private

Definition at line 114 of file EvtBBScalar.cpp.

◆ calcAmpliude()

EvtComplex EvtBBScalar::calcAmpliude ( const EvtParticle * p,
const unsigned int polState )
private

◆ clone()

EvtBBScalar * EvtBBScalar::clone ( ) const
overridevirtual

Implements EvtDecayBase.

Definition at line 78 of file EvtBBScalar.cpp.

◆ D_A()

double EvtBBScalar::D_A ( double t) const
private

Definition at line 249 of file EvtBBScalar.cpp.

◆ D_P()

double EvtBBScalar::D_P ( double t) const
private

Definition at line 263 of file EvtBBScalar.cpp.

◆ D_S()

double EvtBBScalar::D_S ( double t) const
private

Definition at line 277 of file EvtBBScalar.cpp.

◆ decay()

void EvtBBScalar::decay ( EvtParticle * p)
overridevirtual

Implements EvtDecayBase.

Definition at line 338 of file EvtBBScalar.cpp.

◆ F_A()

double EvtBBScalar::F_A ( double t) const
private

Definition at line 256 of file EvtBBScalar.cpp.

◆ F_P()

double EvtBBScalar::F_P ( double t) const
private

Definition at line 270 of file EvtBBScalar.cpp.

◆ F_S()

double EvtBBScalar::F_S ( double t) const
private

Definition at line 282 of file EvtBBScalar.cpp.

◆ formFactorFit()

double EvtBBScalar::formFactorFit ( double t,
const std::vector< double > & params ) const
private

Definition at line 142 of file EvtBBScalar.cpp.

◆ G_n()

double EvtBBScalar::G_n ( double t) const
private

Definition at line 159 of file EvtBBScalar.cpp.

◆ G_p()

double EvtBBScalar::G_p ( double t) const
private

Definition at line 153 of file EvtBBScalar.cpp.

◆ getName()

std::string EvtBBScalar::getName ( ) const
overridevirtual

Implements EvtDecayBase.

Definition at line 73 of file EvtBBScalar.cpp.

◆ init()

void EvtBBScalar::init ( )
overridevirtual

Reimplemented from EvtDecayBase.

Definition at line 293 of file EvtBBScalar.cpp.

◆ initProbMax()

void EvtBBScalar::initProbMax ( )
overridevirtual

Reimplemented from EvtDecayBase.

Definition at line 371 of file EvtBBScalar.cpp.

◆ setKnownBaryonTypes()

void EvtBBScalar::setKnownBaryonTypes ( const EvtId & baryon)
private

Definition at line 83 of file EvtBBScalar.cpp.

Member Data Documentation

◆ m_a1

const EvtComplex EvtBBScalar::m_a1 = EvtComplex( 1.05, 0 )
staticprivate

Definition at line 76 of file EvtBBScalar.hh.

◆ m_a4

const EvtComplex EvtBBScalar::m_a4 = EvtComplex( -387.3e-4, -121e-4 )
staticprivate

Definition at line 79 of file EvtBBScalar.hh.

◆ m_a6

const EvtComplex EvtBBScalar::m_a6 = EvtComplex( -555.3e-4, -121e-4 )
staticprivate

Definition at line 80 of file EvtBBScalar.hh.

◆ m_baryonCombination

std::bitset<nBaryons> EvtBBScalar::m_baryonCombination
private

Definition at line 96 of file EvtBBScalar.hh.

◆ m_baryonMassSum

double EvtBBScalar::m_baryonMassSum
private

Definition at line 119 of file EvtBBScalar.hh.

◆ m_const_B

const EvtComplex EvtBBScalar::m_const_B
staticprivate
Initial value:
static const EvtComplex m_V_tb
static const EvtComplex m_a4
static const EvtComplex m_V_us_star
static const EvtComplex m_a1
static const EvtComplex m_V_ub
static const EvtComplex m_V_ts_star

Definition at line 122 of file EvtBBScalar.hh.

◆ m_const_C

const EvtComplex EvtBBScalar::m_const_C = 2 * m_a6 * m_V_tb * m_V_ts_star
staticprivate

Definition at line 123 of file EvtBBScalar.hh.

◆ m_f0Map

std::map<std::string, FormFactor> EvtBBScalar::m_f0Map
mutableprivate

Definition at line 92 of file EvtBBScalar.hh.

◆ m_f1Map

std::map<std::string, FormFactor> EvtBBScalar::m_f1Map
mutableprivate

Definition at line 93 of file EvtBBScalar.hh.

◆ m_I

const EvtComplex EvtBBScalar::m_I = EvtComplex( 0, 1 )
staticprivate

Definition at line 73 of file EvtBBScalar.hh.

◆ m_massRatio

double EvtBBScalar::m_massRatio
private

Definition at line 118 of file EvtBBScalar.hh.

◆ m_mb

const double EvtBBScalar::m_mb = 4.88
staticprivate

Definition at line 88 of file EvtBBScalar.hh.

◆ m_ms

const double EvtBBScalar::m_ms = 0.120
staticprivate

Definition at line 86 of file EvtBBScalar.hh.

◆ m_mu

const double EvtBBScalar::m_mu = 0.029 * 0.120
staticprivate

Definition at line 87 of file EvtBBScalar.hh.

◆ m_scalarType

std::string EvtBBScalar::m_scalarType
private

Definition at line 91 of file EvtBBScalar.hh.

◆ m_V_tb

const EvtComplex EvtBBScalar::m_V_tb = EvtComplex( 0.99915, 0 )
staticprivate

Definition at line 77 of file EvtBBScalar.hh.

◆ m_V_ts_star

const EvtComplex EvtBBScalar::m_V_ts_star
staticprivate
Initial value:
=
EvtComplex( -0.04029 - 0.000813 * cos( 60 / 180 * pi ),
-0.000813 * cos( 60 / 180 * pi ) )
const float pi

Definition at line 78 of file EvtBBScalar.hh.

◆ m_V_ub

const EvtComplex EvtBBScalar::m_V_ub
staticprivate
Initial value:
=
EvtComplex( 3.67e-3 * cos( 60 / 180 * pi ), 3.67e-3 * cos( 60 / 180 * pi ) )

Definition at line 74 of file EvtBBScalar.hh.

◆ m_V_us_star

const EvtComplex EvtBBScalar::m_V_us_star = EvtComplex( 0.22, 0 )
staticprivate

Definition at line 75 of file EvtBBScalar.hh.

◆ m_x

const double EvtBBScalar::m_x
staticprivate
Initial value:
= { 420.96, -10485.50, 100639.97, -433916.61,
613780.15 }

Definition at line 44 of file EvtBBScalar.hh.

◆ m_y

const double EvtBBScalar::m_y = { 292.62, -735.73 }
staticprivate

Definition at line 46 of file EvtBBScalar.hh.


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