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
EvtBBScalarclone () 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 EvtAmpamplitude () 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 EvtIdgetDaugs () 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, FormFactorm_f0Map
std::map< std::string, FormFactorm_f1Map
std::bitset< nBaryonsm_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: