29#include "TApplication.h"
39 model_name=
"D0toKSpi0etaPlot";
53 if(!(idN && idKs && idPi ) ){std::cout<<
"EvtD0toKSpi0etaPlot: the daughter sequence should be Ks/Kl pi0 eta"<<std::endl;abort();}
64double HisPDFtmp[12][12] =
66{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
67{0, 0.00527169, 0.0113872, 0.0301807, 0.0804598, 0.0617421, 0.0427827, 0.0540283, 0.0165289, 0, 0, 0},
68{0, 0.020155, 0.0159653, 0.0296171, 0.0808365, 0.0416933, 0.0265935, 0.0193752, 0.0441176, 0.0259259, 0.0287037, 0},
69{0, 0.0417141, 0.0513983, 0.0479749, 0.0659032, 0.0323741, 0.0175809, 0.0304969, 0.0254219, 0.054984, 0.0801812, 0.0493827},
70{0, 0.0388568, 0.00614035, 0.0154096, 0.028749, 0.0281987, 0.0182064, 0.00844951, 0.00682977, 0.0027885, 0.00239316, -0.0173611},
71{0, 0.0100519, 0.0169912, 0.0200723, 0.0272782, 0.0163995, 0.0231309, 0.0170477, 0.013863, 0.000892459, 0.00420168, 0},
72{0, 0.0361953, 0.0251366, 0.0173922, 0.0399432, 0.00877736, 0.0105188, 0.0110497, 0.0107359, 0.00134903, 0.00448934, 0},
73{0, 0.0078219, 0.0234282, 0.0324155, 0.0451149, 0.011002, 0.0149195, 0.00172265, 0.00821524, 0, 0, 0},
74{0, 0.021721, 0.0280722, 0.0341469, 0.0507545, 0.0136752, 0.011148, 0.0100806, 0.00383142, 0, 0, 0},
75{0, 0, 0.0237679, 0.0316915, 0.0674883, 0.018785, 0.0192308, 0.0037594, 0.047619, 0, 0, 0},
76{0, 0, 0.0307692, 0.0461138, 0.0755956, 0.0250696, 0, 0, 0, 0, 0, 0},
77{0, 0, 0, 0, 0.0938697, 0.125, 0, 0, 0, 0, 0, 0},
81 for (
int j=0; j<12; j++) {
82 HisPDF[i][j] = HisPDFtmp[i][j];
99 double xmass13,xmass12, xmass23;
109 xmass12=(pd1+pd2).
mass()*(pd1+pd2).
mass();
111 xmass23=(pd2+pd3).
mass()*(pd2+pd3).
mass();
115 double xratio12=HisPDF[xbin][ybin]/avm1;
117 if(xratio12 <=0)
goto loop;
120 if(rd12>xratio12)
goto loop;
126 if (mass2 < Xmin) {
return 0; }
127 else if (mass2>=Xmax) {
return 11; }
128 else {
return int((mass2-Xmin)/Xwid)+1; }
132 if (mass2 < Ymin) {
return 0; }
133 else if (mass2>=Ymax) {
return 11; }
134 else {
return int((mass2-Ymin)/Ywid)+1; }
void getName(std::string &name)
int FindYBin(double mass2)
virtual ~EvtD0toKSpi0etaPlot()
int FindXBin(double mass2)
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)