22 fIniP4.SetXYZT(0,0,pbarmom,
sqrt(pbarmom*pbarmom+mp*mp)+mp);
73 n->
Column(pre+
"ptmax",(Float_t) evsh->
Ptmax() , 0.0f );
76 n->
Column(pre+
"ptmin",(Float_t) evsh->
Ptmin(), 0.0f );
230 TVector3 vtx, altvtx, primvtx;
241 else altvtx = primvtx;
244 if (altvtx.Mag()>0.) dist = (vtx-altvtx).Mag();
247 n->
Column(pre+
"pocvx", (Float_t) vtx.X(), 0.0f);
248 n->
Column(pre+
"pocvy", (Float_t) vtx.Y(), 0.0f);
249 n->
Column(pre+
"pocvz", (Float_t) vtx.Z(), 0.0f);
250 n->
Column(pre+
"altvx", (Float_t) altvtx.X(),0.0f);
251 n->
Column(pre+
"altvy", (Float_t) altvtx.Y(),0.0f);
252 n->
Column(pre+
"altvz", (Float_t) altvtx.Z(),0.0f);
253 n->
Column(pre+
"pocmag", (Float_t) vtx.Mag(), 0.0f);
254 n->
Column(pre+
"pocqa", (Float_t) qavtx, 0.0
f);
255 n->
Column(pre+
"pocdist",(Float_t) dist, 0.0
f);
256 n->
Column(pre+
"pocctau",(Float_t) (dist*c->
M()/c->
P()), 0.0
f);
274 n->
Column(pre+
"prgvx", (Float_t) vtx.X(), 0.0f);
275 n->
Column(pre+
"prgvy", (Float_t) vtx.Y(), 0.0f);
276 n->
Column(pre+
"prgvz", (Float_t) vtx.Z(), 0.0f);
277 n->
Column(pre+
"prgqa", (Float_t) qavtx, 0.0
f);
320 if (nd>0) mct =
true;
327 if(pulls)
qaPull(pre,c,n, (0==truth));
328 n->
Column(pre+
"mct", (Float_t) mct, 0.0
f);
331 if (nd>=2) n->
Column(pre+
"mdif", (Float_t) (c->
M() - c->
Daughter(0)->
M()), 0.0
f);
341 if (truth) trpdg = truth->
PdgCode();
342 n->
Column(pre+
"trpdg", (Float_t) trpdg, 0.0
f);
355 for (
int i=0;
i<nd; ++
i)
364 qaComp(name, dau, n, covs, pulls);
385 double ang = d0->
P3().Angle(d1->
P3());
391 n->
Column(pre+
"oang",(Float_t) ang, 0.0
f);
394 qaEmc(pre+
"d0", d0, n);
397 qaEmc(pre+
"d1", d1, n);
401 qaCand(
"t"+pre, truth, n);
406 qaCand(
"t"+pre, NULL , n,
true);
418 double ang = d0->
P3().Angle(d1->
P3());
427 n->
Column(pre+
"oang",(Float_t) ang, 0.0
f);
430 qaPid(pre+
"d0", d0, n);
433 qaPid(pre+
"d1", d1, n);
438 Float_t dist = vdist.Mag();
439 Float_t ctau = dist * truth->
M() / truth->
P();
441 qaCand(
"t"+pre, truth, n);
443 n->
Column(
"t"+pre+
"dist", (Float_t) dist , 0.0
f);
444 n->
Column(
"t"+pre+
"ctau", (Float_t) ctau , 0.0
f);
448 qaCand(
"t"+pre, NULL , n,
true);
450 n->
Column(
"t"+pre+
"dist", (Float_t) -999. , 0.0
f);
451 n->
Column(
"t"+pre+
"ctau", (Float_t) -999. , 0.0
f);
463 n->
Column(pre+
"px", (Float_t) c.Px(), 0.0f );
464 n->
Column(pre+
"py", (Float_t) c.Py(), 0.0f );
465 n->
Column(pre+
"pz", (Float_t) c.Pz(), 0.0f );
466 n->
Column(pre+
"e", (Float_t) c.E(), 0.0f );
467 n->
Column(pre+
"p", (Float_t) c.P(), 0.0f );
468 n->
Column(pre+
"tht", (Float_t) c.Theta(), 0.0f );
469 n->
Column(pre+
"phi", (Float_t) c.Phi(), 0.0f );
470 n->
Column(pre+
"pt", (Float_t) c.Pt(), 0.0f );
471 n->
Column(pre+
"m", (Float_t) c.M(), 0.0f );
475 n->
Column(pre+
"px", (Float_t) -999., 0.0
f );
476 n->
Column(pre+
"py", (Float_t) -999., 0.0
f );
477 n->
Column(pre+
"pz", (Float_t) -999., 0.0
f );
478 n->
Column(pre+
"e", (Float_t) -999., 0.0
f );
479 n->
Column(pre+
"p", (Float_t) -999., 0.0
f );
480 n->
Column(pre+
"tht", (Float_t) -999., 0.0
f );
481 n->
Column(pre+
"phi", (Float_t) -999., 0.0
f );
482 n->
Column(pre+
"pt", (Float_t) -999., 0.0
f );
483 n->
Column(pre+
"m", (Float_t) -999., 0.0
f );
494 c.Boost(-
fIniP4.BoostVector());
496 n->
Column(pre+
"pxcm", (Float_t) c.Px(), 0.0f );
497 n->
Column(pre+
"pycm", (Float_t) c.Py(), 0.0f );
498 n->
Column(pre+
"pzcm", (Float_t) c.Pz(), 0.0f );
499 n->
Column(pre+
"ecm", (Float_t) c.E(), 0.0f );
500 n->
Column(pre+
"pcm", (Float_t) c.P(), 0.0f );
501 n->
Column(pre+
"thtcm", (Float_t) c.Theta(), 0.0f );
502 n->
Column(pre+
"phicm", (Float_t) c.Phi(), 0.0f );
506 n->
Column(pre+
"pxcm", (Float_t) -999., 0.0
f );
507 n->
Column(pre+
"pycm", (Float_t) -999., 0.0
f );
508 n->
Column(pre+
"pzcm", (Float_t) -999., 0.0
f );
509 n->
Column(pre+
"ecm", (Float_t) -999., 0.0
f );
510 n->
Column(pre+
"pcm", (Float_t) -999., 0.0
f );
511 n->
Column(pre+
"thtcm", (Float_t) -999., 0.0
f );
512 n->
Column(pre+
"phicm", (Float_t) -999., 0.0
f );
526 n->
Column(pre+
"covpxpx", (Float_t) cov(0,0), 0.0
f);
527 n->
Column(pre+
"covpxpy", (Float_t) cov(0,1), 0.0
f);
528 n->
Column(pre+
"covpxpz", (Float_t) cov(0,2), 0.0
f);
529 n->
Column(pre+
"covpxe", (Float_t) cov(0,3), 0.0
f);
530 n->
Column(pre+
"covpypy", (Float_t) cov(1,1), 0.0
f);
531 n->
Column(pre+
"covpypz", (Float_t) cov(1,2), 0.0
f);
532 n->
Column(pre+
"covpye", (Float_t) cov(1,3), 0.0
f);
533 n->
Column(pre+
"covpzpz", (Float_t) cov(2,2), 0.0
f);
534 n->
Column(pre+
"covpze", (Float_t) cov(2,3), 0.0
f);
535 n->
Column(pre+
"covee", (Float_t) cov(3,3), 0.0
f);
539 n->
Column(pre+
"covpxpx", (Float_t) -999., 0.0
f);
540 n->
Column(pre+
"covpxpy", (Float_t) -999., 0.0
f);
541 n->
Column(pre+
"covpxpz", (Float_t) -999., 0.0
f);
542 n->
Column(pre+
"covpxe", (Float_t) -999., 0.0
f);
543 n->
Column(pre+
"covpypy", (Float_t) -999., 0.0
f);
544 n->
Column(pre+
"covpypz", (Float_t) -999., 0.0
f);
545 n->
Column(pre+
"covpyee", (Float_t) -999., 0.0
f);
546 n->
Column(pre+
"covpzpz", (Float_t) -999., 0.0
f);
547 n->
Column(pre+
"covpze", (Float_t) -999., 0.0
f);
548 n->
Column(pre+
"covee", (Float_t) -999., 0.0
f);
560 TLorentzVector
c=cc->
P4();
561 TVector3
p=cc->
Pos();
570 TLorentzVector dummy;
572 qaP4(pre, dummy, n,
true);
573 qaPos(pre, dummypos, n,
true);
574 n->
Column(pre+
"chg", (Float_t) -999., 0.0
f );
575 n->
Column(pre+
"pdg", (Float_t) -999., 0.0
f );
586 n->
Column(pre+
"x", (Float_t) p.X(), 0.0f );
587 n->
Column(pre+
"y", (Float_t) p.Y(), 0.0f );
588 n->
Column(pre+
"z", (Float_t) p.Z(), 0.0f );
589 n->
Column(pre+
"l", (Float_t) p.Mag(), 0.0f );
593 n->
Column(pre+
"x", (Float_t) -999., 0.0
f );
594 n->
Column(pre+
"y", (Float_t) -999., 0.0
f );
595 n->
Column(pre+
"z", (Float_t) -999., 0.0
f );
596 n->
Column(pre+
"l", (Float_t) -999., 0.0
f );
607 TLorentzVector difp4 = c->
P4() - mct->
P4();
608 TVector3 difpos = c->
Pos() - mct->
Pos();
611 n->
Column(pre+
"pullpx", (Float_t) (difp4.Px()/
sqrt(covp4(0,0))), 0.0
f );
612 n->
Column(pre+
"pullpy", (Float_t) (difp4.Py()/
sqrt(covp4(1,1))), 0.0
f );
613 n->
Column(pre+
"pullpz", (Float_t) (difp4.Pz()/
sqrt(covp4(2,2))), 0.0
f );
614 n->
Column(pre+
"pulle", (Float_t) (difp4.E()/
sqrt(covp4(3,3))), 0.0
f );
615 n->
Column(pre+
"pullx", (Float_t) (difpos.X()/
sqrt(covpos(0,0))), 0.0
f );
616 n->
Column(pre+
"pully", (Float_t) (difpos.Y()/
sqrt(covpos(1,1))), 0.0
f );
617 n->
Column(pre+
"pullz", (Float_t) (difpos.Z()/
sqrt(covpos(2,2))), 0.0
f );
618 n->
Column(pre+
"pullpxpy", (Float_t) (
sqrt(difp4.Px()*difp4.Py()/covp4(0,1))), 0.0f );
619 n->
Column(pre+
"pullpxpz", (Float_t) (
sqrt(difp4.Px()*difp4.Pz()/covp4(0,2))), 0.0f );
620 n->
Column(pre+
"pullpypz", (Float_t) (
sqrt(difp4.Py()*difp4.Pz()/covp4(1,2))), 0.0f );
621 n->
Column(pre+
"pullpxe", (Float_t) (
sqrt(difp4.Px()*difp4.E()/covp4(0,3))), 0.0f );
622 n->
Column(pre+
"pullpye", (Float_t) (
sqrt(difp4.Py()*difp4.E()/covp4(1,3))), 0.0f );
623 n->
Column(pre+
"pullpze", (Float_t) (
sqrt(difp4.Pz()*difp4.E()/covp4(2,3))), 0.0f );
624 n->
Column(pre+
"pullxy", (Float_t) (
sqrt(difpos.X()*difpos.Y()/covpos(0,1))), 0.0f );
625 n->
Column(pre+
"pullxz", (Float_t) (
sqrt(difpos.Y()*difpos.Z()/covpos(0,2))), 0.0f );
626 n->
Column(pre+
"pullyz", (Float_t) (
sqrt(difpos.Y()*difpos.Z()/covpos(1,2))), 0.0f );
632 n->
Column(pre+
"pullpx", (Float_t) -999., 0.0
f );
633 n->
Column(pre+
"pullpy", (Float_t) -999., 0.0
f );
634 n->
Column(pre+
"pullpz", (Float_t) -999., 0.0
f );
635 n->
Column(pre+
"pulle", (Float_t) -999., 0.0
f );
636 n->
Column(pre+
"pullx", (Float_t) -999., 0.0
f );
637 n->
Column(pre+
"pully", (Float_t) -999., 0.0
f );
638 n->
Column(pre+
"pullz", (Float_t) -999., 0.0
f );
639 n->
Column(pre+
"pullpxpy", (Float_t) -999., 0.0
f );
640 n->
Column(pre+
"pullpxpz", (Float_t) -999., 0.0
f );
641 n->
Column(pre+
"pullpypz", (Float_t) -999., 0.0
f );
642 n->
Column(pre+
"pullpxe", (Float_t) -999., 0.0
f );
643 n->
Column(pre+
"pullpye", (Float_t) -999., 0.0
f );
644 n->
Column(pre+
"pullpze", (Float_t) -999., 0.0
f );
645 n->
Column(pre+
"pullxy", (Float_t) -999., 0.0
f );
646 n->
Column(pre+
"pullxz", (Float_t) -999., 0.0
f );
647 n->
Column(pre+
"pullyz", (Float_t) -999., 0.0
f );
672 n->
Column(pre+
"trkpx", (Float_t) -999., 0.0
f );
673 n->
Column(pre+
"trkpy", (Float_t) -999., 0.0
f );
674 n->
Column(pre+
"trkpz", (Float_t) -999., 0.0
f );
675 n->
Column(pre+
"trkvx", (Float_t) -999., 0.0
f );
676 n->
Column(pre+
"trkvy", (Float_t) -999., 0.0
f );
677 n->
Column(pre+
"trkvz", (Float_t) -999., 0.0
f );
678 n->
Column(pre+
"trkdof", (Int_t) -999., 0 );
679 n->
Column(pre+
"trkstat", (Int_t) -999., 0 );
680 n->
Column(pre+
"trkchi2", (Float_t) -999., 0.0
f );
681 n->
Column(pre+
"trkidx", (Int_t) -999., 0 );
682 n->
Column(pre+
"trkbranch", (Int_t) -999., 0 );
694 double pinf[6] = {-1000.,-1000.,-1000.,-1000.,-1000.,-1000.};
700 for (
int i=0;
i<5;++
i)
712 n->
Column(pre+
"pide", (Float_t) pinf[0], 0.0
f );
713 n->
Column(pre+
"pidmu", (Float_t) pinf[1], 0.0
f );
714 n->
Column(pre+
"pidpi", (Float_t) pinf[2], 0.0
f );
715 n->
Column(pre+
"pidk", (Float_t) pinf[3], 0.0
f );
716 n->
Column(pre+
"pidp", (Float_t) pinf[4], 0.0
f );
718 n->
Column(pre+
"pidmax", (Float_t) pinf[5], 0.0
f );
719 n->
Column(pre+
"pidbest",(Float_t) bestidx, 0.0
f );
734 double oang = d0->
P3().Angle(d1->
P3());
737 TLorentzVector d_cms = d0->
P4();
738 d_cms.Boost(-(c->
P4().BoostVector()));
739 Float_t dec = d_cms.Vect().Angle(c->
P3());
740 Float_t cdec =
cos(dec);
742 n->
Column(pre+
"oang", (Float_t) oang, 0.0
f );
743 n->
Column(pre+
"decang", (Float_t) dec, 0.0
f );
744 n->
Column(pre+
"cdecang", (Float_t) cdec, 0.0
f );
759 n->
Column(pre+
"m01", (Float_t) l01.M(), 0.0f );
760 n->
Column(pre+
"m12", (Float_t) l12.M(), 0.0f );
761 n->
Column(pre+
"m02", (Float_t) l02.M(), 0.0f );
763 n->
Column(pre+
"dal01", (Float_t) l01.M2(), 0.0f );
764 n->
Column(pre+
"dal12", (Float_t) l12.M2(), 0.0f );
765 n->
Column(pre+
"dal02", (Float_t) l02.M2(), 0.0f );
779 if (v.X()==0 && v.Y()==0 && v.Z()==0)
784 Float_t ctau = v.Mag()*c->
M()/c->
P();
789 Float_t ctaud = -999.;
797 if (primvtx.Mag()>0) ctaud = (v-primvtx).Mag()*c->
M()/c->
P();
799 n->
Column(pre+
"vx", (Float_t) v.X(), 0.0f );
800 n->
Column(pre+
"vy", (Float_t) v.Y(), 0.0f );
801 n->
Column(pre+
"vz", (Float_t) v.Z(), 0.0f );
802 n->
Column(pre+
"len", (Float_t) v.Mag(), 0.0f );
803 n->
Column(pre+
"ctau", (Float_t) ctau, 0.0
f );
804 n->
Column(pre+
"ctaud", (Float_t) ctaud, 0.0
f );
810 n->
Column(pre+
"vx", (Float_t) -999.0, 0.0
f );
811 n->
Column(pre+
"vy", (Float_t) -999.0, 0.0
f );
812 n->
Column(pre+
"vz", (Float_t) -999.0, 0.0
f );
813 n->
Column(pre+
"len", (Float_t) -999.0, 0.0
f );
814 n->
Column(pre+
"ctau", (Float_t) -999.0, 0.0
f );
815 n->
Column(pre+
"ctaud", (Float_t) -999.0, 0.0
f );
1030 for (
int i=0;
i<nd; ++
i)
1066 for (
int i=0;
i<nd; ++
i)
1086 qaCand(pre+
"mc",mct,n,skip);
1107 if (npart>max) npart=
max;
1109 TVector vpart(npart), vpdg(npart), vmoth(npart),
1110 vp(npart), vmass(npart), vndau(npart),
1111 vpx(npart), vpy(npart), vpz(npart), ve(npart),
1112 vtht(npart), vphi(npart),
1113 vx(npart), vy(npart), vz(npart);
1115 for (
int j=0;j<npart;++j)
1120 vpdg(j) = l[j]->PdgCode();
1122 vndau(j) = l[j]->NDaughters();
1124 vmass(j) = l[j]->Mass();
1127 vpx(j) = l[j]->Px();
1128 vpy(j) = l[j]->Py();
1129 vpz(j) = l[j]->Pz();
1132 vtht(j) = l[j]->P3().Theta();
1133 vphi(j) = l[j]->P3().Phi();
1135 vx(j) = l[j]->Pos().X();
1136 vy(j) = l[j]->Pos().Y();
1137 vz(j) = l[j]->Pos().Z();
1140 n->
Column(pre+
"npart", (Int_t) npart);
1142 n->
Column(pre+
"part", vpart, pre+
"npart");
1143 n->
Column(pre+
"pdg", vpdg, pre+
"npart");
1144 n->
Column(pre+
"moth", vmoth, pre+
"npart");
1145 n->
Column(pre+
"ndau", vndau, pre+
"npart");
1147 n->
Column(pre+
"m", vmass, pre+
"npart");
1148 n->
Column(pre+
"p", vp, pre+
"npart");
1150 n->
Column(pre+
"px", vpx, pre+
"npart");
1151 n->
Column(pre+
"py", vpy, pre+
"npart");
1152 n->
Column(pre+
"pz", vpz, pre+
"npart");
1153 n->
Column(pre+
"e", ve, pre+
"npart");
1155 n->
Column(pre+
"tht", vtht, pre+
"npart");
1156 n->
Column(pre+
"phi", vphi, pre+
"npart");
1158 n->
Column(pre+
"x", vx, pre+
"npart");
1159 n->
Column(pre+
"y", vy, pre+
"npart");
1160 n->
Column(pre+
"z", vz, pre+
"npart");
1171 TLorentzVector p4=c->
P4();
1172 TLorentzVector mcp4=mct->
P4();
1173 TLorentzVector diff = p4 - mcp4;
1176 TVector3 vdiff= v - mcv;
1179 n->
Column(pre+
"mcdiffvx", (Float_t) vdiff.x() , 0.0f );
1180 n->
Column(pre+
"mcdiffvy", (Float_t) vdiff.y() , 0.0f );
1181 n->
Column(pre+
"mcdiffvz", (Float_t) vdiff.z() , 0.0f );
1182 n->
Column(pre+
"mcdiffpx", (Float_t) diff.Px(), 0.0f );
1183 n->
Column(pre+
"mcdiffpy", (Float_t) diff.Py(), 0.0f );
1184 n->
Column(pre+
"mcdiffpz", (Float_t) diff.Pz(), 0.0f );
1185 n->
Column(pre+
"mcdiffe", (Float_t) diff.E(), 0.0f );
1187 n->
Column(pre+
"mcdiffp", (Float_t) (p4.P()-mcp4.P()), 0.0
f );
1188 n->
Column(pre+
"mcdifftht", (Float_t) (p4.Theta()-mcp4.Theta()), 0.0
f );
1189 n->
Column(pre+
"mcdiffphi", (Float_t) (p4.Phi()-mcp4.Phi()), 0.0
f );
1191 n->
Column(pre+
"mcpullvx", (Float_t) ( vdiff.x()/
sqrt(cov7(0,0)) ), 0.0
f );
1192 n->
Column(pre+
"mcpullvy", (Float_t) ( vdiff.y()/
sqrt(cov7(1,1)) ), 0.0
f );
1193 n->
Column(pre+
"mcpullvz", (Float_t) ( vdiff.z()/
sqrt(cov7(2,2)) ), 0.0
f );
1194 n->
Column(pre+
"mcpullpx", (Float_t) ( diff.Px()/
sqrt(cov7(3,3)) ), 0.0
f );
1195 n->
Column(pre+
"mcpullpy", (Float_t) ( diff.Py()/
sqrt(cov7(4,4)) ), 0.0
f );
1196 n->
Column(pre+
"mcpullpz", (Float_t) ( diff.Pz()/
sqrt(cov7(5,5)) ), 0.0
f );
1197 n->
Column(pre+
"mcpulle", (Float_t) ( diff.E() /
sqrt(cov7(6,6)) ), 0.0
f );
1199 n->
Column(pre+
"mcerrvx", (Float_t)
sqrt(cov7(0,0)), 0.0
f );
1200 n->
Column(pre+
"mcerrvy", (Float_t)
sqrt(cov7(1,1)), 0.0
f );
1201 n->
Column(pre+
"mcerrvz", (Float_t)
sqrt(cov7(2,2)), 0.0
f );
1202 n->
Column(pre+
"mcerrpx", (Float_t)
sqrt(cov7(3,3)), 0.0
f );
1203 n->
Column(pre+
"mcerrpy", (Float_t)
sqrt(cov7(4,4)), 0.0
f );
1204 n->
Column(pre+
"mcerrpz", (Float_t)
sqrt(cov7(5,5)), 0.0
f );
1205 n->
Column(pre+
"mcerre", (Float_t)
sqrt(cov7(6,6)), 0.0
f );
1209 TLorentzVector dummy;
1210 n->
Column(pre+
"mcdiffvx", (Float_t) -999.0, 0.0
f );
1211 n->
Column(pre+
"mcdiffvy", (Float_t) -999.0, 0.0
f );
1212 n->
Column(pre+
"mcdiffvz", (Float_t) -999.0, 0.0
f );
1213 n->
Column(pre+
"mcdiffpx", (Float_t) -999.0, 0.0
f );
1214 n->
Column(pre+
"mcdiffpy", (Float_t) -999.0, 0.0
f );
1215 n->
Column(pre+
"mcdiffpz", (Float_t) -999.0, 0.0
f );
1216 n->
Column(pre+
"mcdiffe", (Float_t) -999.0, 0.0
f );
1217 n->
Column(pre+
"mcdiffp", (Float_t) -999.0, 0.0
f );
1218 n->
Column(pre+
"mcdifftht", (Float_t) -999.0, 0.0
f );
1219 n->
Column(pre+
"mcdiffphi", (Float_t) -999.0, 0.0
f );
1221 n->
Column(pre+
"mcpullvx", (Float_t) -999.0, 0.0
f );
1222 n->
Column(pre+
"mcpullvy", (Float_t) -999.0, 0.0
f );
1223 n->
Column(pre+
"mcpullvz", (Float_t) -999.0, 0.0
f );
1224 n->
Column(pre+
"mcpullpx", (Float_t) -999.0, 0.0
f );
1225 n->
Column(pre+
"mcpullpy", (Float_t) -999.0, 0.0
f );
1226 n->
Column(pre+
"mcpullpz", (Float_t) -999.0, 0.0
f );
1227 n->
Column(pre+
"mcpulle", (Float_t) -999.0, 0.0
f );
1229 n->
Column(pre+
"mcerrvx", (Float_t) -999.0, 0.0
f );
1230 n->
Column(pre+
"mcerrvy", (Float_t) -999.0, 0.0
f );
1231 n->
Column(pre+
"mcerrvz", (Float_t) -999.0, 0.0
f );
1232 n->
Column(pre+
"mcerrpx", (Float_t) -999.0, 0.0
f );
1233 n->
Column(pre+
"mcerrpy", (Float_t) -999.0, 0.0
f );
1234 n->
Column(pre+
"mcerrpz", (Float_t) -999.0, 0.0
f );
1235 n->
Column(pre+
"mcerre", (Float_t) -999.0, 0.0
f );
1243 n->
Column(pre+
"ndf" , (Float_t) fitter->
GetNdf(), 0.0f);
1246 n->
Column(pre+
"chisq" , (Float_t) -999.0, 0.0
f);
1247 n->
Column(pre+
"ndf" , (Float_t) -999.0, 0.0
f);
1248 n->
Column(pre+
"prob" , (Float_t) -999.0, 0.0
f);
Double_t GetEmcClusterE25() const
int MultChrgPminCms(double pmin)
void qaPi0(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t GetTrackIndex() const
Float_t GetTofQuality() const
double SumNeutEminLab(double emin)
Float_t GetRichThetaCErr() const
Int_t GetRichIndex() const
Float_t GetMuoQuality() const
void qaCand(TString pre, RhoCandidate *cc, RhoTuple *n, bool skip=false)
double ChrgPtSumCms() const
double ChrgPSumCms() const
friend F32vec4 cos(const F32vec4 &a)
Float_t GetTofStopTime() const
Float_t GetMuoProbability() const
Float_t GetEmcQuality() const
Int_t GetDegreesOfFreedom() const
Int_t GetTrackNumber() const
Float_t GetEmcRawEnergy() const
void qaRecoShortTree(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t GetDiscIndex() const
Float_t GetDrcThetaCErr() const
friend F32vec4 sqrt(const F32vec4 &a)
Float_t GetSttMeanDEDX() const
Int_t GetTrackBranch() const
double ChrgPSumLab() const
double NeutEtSumCms() const
Float_t GetEmcCalEnergy() const
void qaPid(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t GetEmcNumberOfCrystals() const
Bool_t FillList(RhoCandList &l, TString listkey="All", TString pidTcaNames="", int trackHypothesis=-1)
PndPidCandidate * GetRecoCandidate() const
Float_t GetMuoIron() const
double SumChrgPminCms(double pmin)
RhoCandidate * Daughter(Int_t n)
Int_t GetDiscNumberOfPhotons() const
void qaRecoFullTree(TString pre, RhoCandidate *c, RhoTuple *n)
Double_t GetEmcClusterE9() const
Float_t GetMuoMomentumIn() const
void qaTrk(TString pre, RhoCandidate *c, RhoTuple *n)
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
void qaStt(TString pre, RhoCandidate *c, RhoTuple *n)
int MultPtminCms(double ptmin)
Float_t GetRichThetaC() const
void qaVtx(TString pre, RhoCandidate *c, RhoTuple *n)
void qaP4(TString pre, TLorentzVector c, RhoTuple *n, bool skip=false)
void qaKs0(TString pre, RhoCandidate *c, RhoTuple *n)
void qaGem(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t GetRichNumberOfPhotons() const
double SumNeutEminCms(double emin)
void qaESMinMax(TString pre, PndEventShape *evsh, RhoTuple *n)
Int_t GetMuoIndex() const
PndRhoTupleQA(PndAnalysis *ana=0, double pbarmom=15.15)
int MultKaonPminLab(double prob, double pmin=0)
Float_t GetDrcThetaC() const
void qaRich(TString pre, RhoCandidate *c, RhoTuple *n)
Float_t GetDiscQuality() const
Int_t GetEmcIndex() const
void qaDalitz(TString pre, RhoCandidate *c, RhoTuple *n)
void qaMcList(TString pre, RhoCandList &l, RhoTuple *n, int max=10000)
void qaP4Cov(TString pre, RhoCandidate *c, RhoTuple *n, bool skip=false)
Float_t GetDiscThetaC() const
Int_t GetMuoNumberOfLayers() const
double SumChrgPminLab(double pmin)
Float_t GetTofTrackLength() const
Int_t GetDrcNumberOfPhotons() const
Double_t GetEmcClusterE1() const
Float_t GetChiSquared() const
Int_t GetTofIndex() const
TVector3 GetPosition() const
Double_t GetPocaVtx(TVector3 &vertex, RhoCandidate *composite)
void qaPoca(TString pre, RhoCandidate *c, RhoTuple *n)
void qa2Body(TString pre, RhoCandidate *c, RhoTuple *n)
void qaComp(TString pre, RhoCandidate *c, RhoTuple *n, bool covs=false, bool pulls=false)
Double_t GetEmcClusterZ53() const
int MultMuonPminLab(double prob, double pmin=0)
void qaDsc(TString pre, RhoCandidate *c, RhoTuple *n)
int MultPminLab(double pmin)
void qaESPidMult(TString pre, PndEventShape *evsh, double prob, double pmin, RhoTuple *n)
Double_t GetEmcClusterLat() const
double NeutESumLab() const
void qaMvd(TString pre, RhoCandidate *c, RhoTuple *n)
Float_t GetMvdDEDX() const
void qaEventShape(TString pre, PndEventShape *evsh, RhoTuple *n)
Int_t GetEmcNumberOfBumps() const
TLorentzVector P4() const
Double_t GetEmcClusterZ20() const
void Column(const char *label, Bool_t value, Bool_t defval=0, const char *block=0)
friend F32vec4 fabs(const F32vec4 &a)
Float_t GetDiscThetaCErr() const
RhoCandidate * GetMcTruth() const
double FitVertexFast(TVector3 &vtx, TMatrixD &cov, bool skipcov=false, int niter=2)
void qaEventShapeShort(TString pre, PndEventShape *evsh, RhoTuple *n)
double ChrgPtSumLab() const
void qaTof(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t RemoveFamily(RhoCandidate *)
Float_t GetRichQuality() const
void qaRecoShort(TString pre, RhoCandidate *c, RhoTuple *n)
double SumPtminCms(double ptmin)
void qaRecoFull(TString pre, RhoCandidate *c, RhoTuple *n)
void qaEmc(TString pre, RhoCandidate *c, RhoTuple *n)
int MultPminCms(double pmin)
double Thrust(int Nmax=4)
int MultPionPminLab(double prob, double pmin=0)
TVector3 GetPosition() const
int MultNeutEminLab(double emin)
int MultChrgPminLab(double pmin)
double FoxWolfMomR(int order)
void qaESSum(TString pre, PndEventShape *evsh, RhoTuple *n)
void qaMc(TString pre, RhoCandidate *c, RhoTuple *n, bool skip=false)
void qaPRG(TString pre, RhoCandidate *c, RhoTuple *n)
Int_t GetMuoModule() const
Int_t GetDrcIndex() const
Bool_t McTruthMatch(RhoCandidate *cand, Int_t level=2, bool verbose=false)
double NeutESumCms() const
void qaFitter(TString pre, RhoFitterBase *fitter, RhoTuple *n, bool skip=false)
void qaDrc(TString pre, RhoCandidate *c, RhoTuple *n)
void qaPull(TString pre, RhoCandidate *c, RhoTuple *n, bool skip=false)
int MultElectronPminLab(double prob, double pmin=0)
TVector3 GetMomentum() const
Float_t GetDrcQuality() const
void qaP4Cms(TString pre, TLorentzVector c, RhoTuple *n, bool skip=false)
RhoCandidate * fDummyCand
Int_t GetEmcModule() const
void qaMuo(TString pre, RhoCandidate *c, RhoTuple *n)
void qaPos(TString pre, TVector3 p, RhoTuple *n, bool skip=false)
void qaMcDiff(TString pre, RhoCandidate *c, RhoTuple *n, bool skip=false)
double GetPidInfo(int hypo)
int MultProtonPminLab(double prob, double pmin=0)
TMatrixT< double > TMatrixD
Int_t GetFitStatus() const
void qaESEventVars(TString pre, PndEventShape *evsh, RhoTuple *n)
void qaESMult(TString pre, PndEventShape *evsh, RhoTuple *n)
double NeutEtSumLab() const
Float_t GetTofBeta() const