BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtEtaDalitz.cc
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 1998 Caltech, UCSB
10//
11// Module: EvtEtaDalitz.cc
12//
13// Description: Routine to decay eta -> pi+ pi- pi0
14//
15// Modification history:
16//
17// DJL/RYD July 23, 1997 Module created
18//
19//------------------------------------------------------------------------
20//
21#include "EvtEtaDalitz.hh"
27#include <stdlib.h>
28#include <string>
29
31
32void EvtEtaDalitz::getName( std::string& model_name ) { model_name = "ETA_DALITZ"; }
33
35
37
38 // check that there are 0 arguments
39 checkNArg( 0 );
40 checkNDaug( 3 );
41
43
47}
48
50
52
54
55 EvtVector4R mompi0 = p->getDaug( 2 )->getP4();
56 double masspip = p->getDaug( 0 )->mass();
57 double masspim = p->getDaug( 1 )->mass();
58 double masspi0 = p->getDaug( 2 )->mass();
59 double m_eta = p->mass();
60
61 double y;
62
63 // The decay amplitude coems from Layter et al PRD 7 pA2M5.
64 // this reference doesn't make sence!!!
65
66 y = ( mompi0.get( 0 ) - masspi0 ) * ( 3.0 / ( m_eta - masspip - masspim - masspi0 ) ) - 1.0;
67
68 EvtComplex amp( sqrt( 1.0 - 1.07 * y ), 0.0 );
69
70 vertex( amp );
71
72 return;
73}
*********DOUBLE PRECISION m_pi INTEGER m_lenwt !max no of aux weights INTEGER m_phmax !maximum photon multiplicity ISR FSR *DOUBLE COMPLEX m_Pauli4 DOUBLE COMPLEX m_AmpBorn DOUBLE COMPLEX m_AmpBoxy DOUBLE COMPLEX m_AmpBorn1 DOUBLE COMPLEX m_AmpBorn2 DOUBLE COMPLEX m_AmpExpo2p DOUBLE COMPLEX m_Rmat DOUBLE COMPLEX m_BoxGZut !DOUBLE COMPLEX m_F1finPair2 !DOUBLE PRECISION m_Vcut DOUBLE PRECISION m_Alfinv DOUBLE PRECISION m_Lorin1 DOUBLE PRECISION m_Lorin2 DOUBLE PRECISION m_eta
Definition GPS.h:30
void vertex(const EvtComplex &amp)
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
void setProbMax(double prbmx)
void checkNDaug(int d1, int d2=-1)
EvtId * getDaugs()
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
virtual ~EvtEtaDalitz()
void getName(std::string &name)
void decay(EvtParticle *p)
void initProbMax()
EvtDecayBase * clone()
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
double mass() const
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
double get(int i) const