|
EvtGen
2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
|
Go to the documentation of this file. 60 for ( int i = 1; i <= ( getNDaug() - 1 ); i++ ) { 101 << "Have not yet implemented this final state in BCPSINPI model" 104 for ( int id = 0; id < ( getNDaug() - 1 ); id++ ) 113 << "Have not yet implemented this final state in BCPSINPI model" 116 for ( int id = 0; id < ( getNDaug() - 1 ); id++ ) 126 return ( M * M + m1 * m1 - m2 * m2 ) / ( 2 * M ); 131 double __ee = _ee( M, m1, m2 ); 132 return sqrt( __ee * __ee - m1 * m1 ); 152 double __pp = _pp( M, m1, m2 ); 216 EvtIdSet thePis( "pi+", "pi-", "pi0" ); 225 double Q2 = Q. mass2(); 229 bool foundHadCurr = false; 240 hardCur = Fpi( p1, p2 ) * ( p1 - p2 ); 244 int diffPi( 0 ), samePi1( 0 ), samePi2( 0 ); 271 hardCur = BA1 * ( ( p1 - p3 ) - 272 ( Q * ( Q * ( p1 - p3 ) ) / Q2 ) * Fpi( p2, p3 ) + 274 ( Q * ( Q * ( p2 - p3 ) ) / Q2 ) * Fpi( p1, p3 ) ); 278 if ( !foundHadCurr ) { 280 << "Have not yet implemented this final state in BCNPI model" 284 for ( id = 0; id < ( getNDaug() - 1 ); id++ ) 304 for ( int i = 0; i < 4; i++ ) { 310 amp2 += pow( abs( amp ), 2 ); 319 amp2 += pow( abs( amp ), 2 ); 329 double m1 = q1. mass(); 330 double m2 = q2. mass(); 336 double dRho = _mRho * _mRho - m1 * m1 - m2 * m2; 337 double pPiRho = ( 1.0 / _mRho ) * 338 sqrt( ( dRho * dRho ) / 4.0 - m1 * m1 * m2 * m2 ); 341 double pPiRhopr = ( 1.0 / _mRhopr ) * 342 sqrt( ( dRhopr * dRhopr ) / 4.0 - m1 * m1 * m2 * m2 ); 344 double dQ = mQ2 - m1 * m1 - m2 * m2; 345 double pPiQ = ( 1.0 / sqrt( mQ2 ) ) * 346 sqrt( ( dQ * dQ ) / 4.0 - m1 * m1 * m2 * m2 ); 349 pow( ( pPiQ / pPiRho ), 3 ); 354 pow( ( pPiQ / pPiRhopr ), 3 ); 358 return ( BRho + _beta * BRhopr ) / ( 1 + _beta ); 364 if ( m2 > ( _mRho + mPi ) ) { 365 return m2 * ( 1.623 + 10.38 / m2 - 9.32 / ( m2 * m2 ) + 366 0.65 / ( m2 * m2 * m2 ) ); 368 double t1 = m2 - 9.0 * mPi * mPi; 369 return 4.1 * pow( t1, 3.0 ) * ( 1.0 - 3.3 * t1 + 5.8 * t1 * t1 ); 376 << "Defining EvtBcToNPi model: Bc -> V + npi and Bc -> P + npi decays\n" 377 << "from A.V. Berezhnoy, A.K. Likhoded, A.V. Luchinsky: " 378 << "Phys.Rev.D 82, 014012 (2010) and arXiV:1104.0808." << endl; EvtTensor3C directProd(const EvtVector3C &c1, const EvtVector3C &c2)
EvtSpinDensity getSpinDensityForward()
static std::string name(EvtId i)
static const EvtTensor4C & g()
EvtSpinType::spintype getSpinType() const
double getArg(unsigned int j)
static EvtSpinType::spintype getSpinType(EvtId i)
void initProbMax() override
EvtTensor4C dual(const EvtTensor4C &t2)
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=0)
void decay(EvtParticle *p) override
EvtVector4C cont2(const EvtVector4C &v4) const
static double getMeanMass(EvtId i)
void makeDaughters(unsigned int ndaug, EvtId *id)
EvtBcToNPi(bool printAuthorInfo=false)
EvtSpinDensity getSpinDensity()
EvtComplex Fpi(EvtVector4R q1, EvtVector4R q2)
std::string getName() override
void setProbMax(double prbmx)
EvtId getParentId() const
double pi3G(double m2, int dupD)
EvtDecayBase * clone() override
void vertex(const EvtComplex &)
double initializePhaseSpace(unsigned int numdaughter, EvtId *daughters, bool forceResetMasses=false, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
virtual EvtVector4C epsParent(int i) const
void checkSpinParent(EvtSpinType::spintype sp)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
double abs(const EvtComplex &c)
void setP4(const EvtVector4R &p4)
const EvtVector4R & getP4() const
double _ee(double M, double m1, double m2)
void init(EvtId part_n, double e, double px, double py, double pz)
EvtTensor3C eps(const EvtVector3R &v)
void applyBoostTo(const EvtVector4R &p4, bool inverse=false)
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
EvtComplex exp(const EvtComplex &c)
void setDiagonalSpinDensity()
EvtParticle * getDaug(int i)
double _pp(double M, double m1, double m2)
static double getMass(EvtId i)
void init(EvtId p, int ndaug, EvtId *daug)
double normalizedProb(const EvtSpinDensity &d)
EvtId getDaug(int i) const
|