#include "QNCooking.h" #include "TMath.h" //ClassImp(QNCooking); using namespace std; QNCooking::QNCooking(){ } QNCooking::QNCooking(Resonance mother, Particle daughter1, Particle daughter2){ _mother = mother; _daughter1 = daughter1; _daughter2 = daughter2; } QNCooking::~QNCooking(){ // delete _mother; // delete _daughter1; // delete _daughter2; } ///Total spin for daughters particles calculation double QNCooking::SpinDaughters(){ double s1 = _daughter1.S(); double s2 = _daughter2.S(); return s1+s2; } ///possible angular momenta calculation ///(taking into account total spin and parity conservation) void QNCooking::AngularMomenta(std::vector &l_res){ double J = _mother.J(); double s1 = _daughter1.S(); double s2 = _daughter2.S(); int Pm = _mother.P(); int Pd1 = _daughter1.P(); int Pd2 = _daughter2.P(); for(int il=0;il<=int(2*J);il++){ double l = il; int Pres = Pd1*Pd2*TMath::Power(-1,il); if(Pres!=Pm) continue; if(fabs(s1+s2-l)<=J && fabs(s1+s2+l)>=J) l_res.push_back(l); } // cout<<"J="<