144 if(m_daughter_end < 0)
return;
148 int first_mother_idx = buf->getFirstMotherIndex();
149 int second_mother_idx = buf->getSecondMotherIndex();
151 double px =0.0, py =0.0, pz =0.0, e =0.0;
152 double px2=0.0, py2=0.0, pz2=0.0, e2=0.0;
163 if(first_mother_idx>=0)
165 buf =
m_event->getParticle(first_mother_idx);
172 if(second_mother_idx>=0)
174 buf =
m_event->getParticle(second_mother_idx);
181 double dp = sqrt( (px-px2)*(px-px2) + (py-py2)*(py-py2) + (pz-pz2)*(pz-pz2) );
183 double m1 = sqrt( fabs( e*e - px*px - py*py - pz*pz ) );
184 double m2 = sqrt( fabs( e2*e2 - px2*px2 - py2*py2 - pz2*pz2 ) );
186 if( fabs(m1-m2) > 0.0001 || dp > 0.0001*(e+e2))
189 if(first_mother_idx >=0)
m_event->getParticle(first_mother_idx) ->print();
190 if(second_mother_idx>=0)
m_event->getParticle(second_mother_idx)->print();
std::vector< TauolaParticle * > getDaughters()
vector< TauolaHEPEVTParticle * > cache
TauolaHEPEVTEvent * m_event
void setEvent(TauolaHEPEVTEvent *event)
TauolaHEPEVTParticle(int pdgid, int status, double px, double py, double pz, double e, double m, int ms, int me, int ds, int de)
void setStatus(int statu)
int getDaughterRangeStart()
void setMothers(std::vector< TauolaParticle * > mothers)
int getFirstMotherIndex()
void setDaughters(std::vector< TauolaParticle * > daughters)
void checkMomentumConservation()
bool isDaughterOf(TauolaHEPEVTParticle *p)
void setBarcode(int barcode)
int getSecondMotherIndex()
std::vector< TauolaParticle * > getMothers()
int getDaughterRangeEnd()
bool isMotherOf(TauolaHEPEVTParticle *p)
void setMass(double mass)
TauolaHEPEVTParticle * createNewParticle(int pdg_id, int status, double mass, double px, double py, double pz, double e)
void setPdgID(int pdg_id)