29#include "TApplication.h"
39 model_name=
"D0toKSpi0omegaPlot";
53 if(!(idN && idKs && idPi ) ){std::cout<<
"EvtD0toKSpi0omegaPlot: the daughter sequence should be K_S0/K_L0 pi0 omega"<<std::endl;abort();}
64double HisPDFtmp[10][10] =
66{0, 0, 0, -0.045, 0, 0, 0, 0, 0, 0},
67{0, 0, 0.00833333, 0.00315657, 0.0461656, 0.0871429, 0, 0, 0, 0},
68{-0.225, 0, 0.032197, 0.0104286, 0.0537143, 0.105189, 0.0856757, 0.0108333, 0.00384615, 0},
69{-0.075, 0.0677734, 0.0462291, 0.0108333, 0.10436, 0.15014, 0.125556, 0.0151667, 0.047, 0},
70{0, 0.0615854, 0.0972857, 0.0986446, 0.135901, 0.10452, 0.147305, 0.161376, 0.117778, 0.065},
71{0, 0.245879, 0.13997, 0.173571, 0.101585, 0.061244, 0.158564, 0.182229, 0.170783, 0.55},
72{0, 0.0411458, 0.0598214, 0.043099, 0.0399235, 0.131534, 0.107424, 0.107069, 0.087931, 0},
73{0, 0, 0.00392157, 0.09375, 0.123066, 0.145382, 0.0534591, 0.0191176, 0, 0},
74{0, 0, 0.0458333, 0.0330556, 0.101357, 0.0558559, 0.0989362, 0.5, 0, 0},
75{0, 0, 0, -0.3375, 0.025, -0.045, 0, 0, 0, 0}
79 for (
int j=0; j<10; j++) {
80 HisPDF[i][j] = HisPDFtmp[i][j];
97 double xmass13,xmass12, xmass23;
107 xmass12=(pd1+pd2).
mass()*(pd1+pd2).
mass();
109 xmass23=(pd2+pd3).
mass()*(pd2+pd3).
mass();
113 double xratio12=HisPDF[xbin][ybin]/avm1;
115 if(xratio12 <=0)
goto loop;
118 if(rd12>xratio12)
goto loop;
124 if (mass2 < Xmin) {
return 0; }
125 else if (mass2>=Xmax) {
return 9; }
126 else {
return int((mass2-Xmin)/Xwid)+1; }
130 if (mass2 < Ymin) {
return 0; }
131 else if (mass2>=Ymax) {
return 9; }
132 else {
return int((mass2-Ymin)/Ywid)+1; }
int FindXBin(double mass2)
void getName(std::string &name)
int FindYBin(double mass2)
virtual ~EvtD0toKSpi0omegaPlot()
void decay(EvtParticle *p)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
static EvtSpinType::spintype getSpinType(EvtId i)
static EvtId getId(const std::string &name)
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)