22 #include "FairRootManager.h"
23 #include "FairRunAna.h"
24 #include "FairRuntimeDb.h"
26 #include "FairRuntimeDb.h"
29 #include "TClonesArray.h"
55 FairTask(
"Panda Tutorial Analysis Task")
59 if (
fPidAlgo==
"")
fPidAlgo =
"PidAlgoEmcBayes;PidAlgoDrc;PidAlgoDisc;PidAlgoStt;PidAlgoMdtHardCuts;PidAlgoSciT;PidAlgoRich";
98 TDirectory *dir = gDirectory;
99 FairRootManager::Instance()->GetOutFile()->cd();
101 ntp =
new RhoTuple(
"ntp",
"Prod Example Analysis: D0->K pi");
108 fIni.SetXYZT(0, 0, 6.231552, 7.240065);
120 int i=0,j=0, k=0, l=0;
140 D0.Combine(km, pip, 421);
141 D0bar.Combine(kp, pim, -421);
145 for (j=0; j<D0.GetLength(); ++j)
147 Float_t mmiss = (
fIni-(D0[j]->P4())).M();
148 Float_t msum = D0[j]->M() + mmiss;
153 ntp->
Column(
"ncand", (Int_t) D0.GetLength());
162 qa.qaComp(
"x", D0[j],
ntp);
166 TLorentzVector lv(0,0,0,0);
167 if (truth) lv = truth->
P4();
168 qa.qaP4(
"trx", lv,
ntp);
175 qa.qaVtx(
"fvxx",cfit,
ntp);
176 qa.qaP4(
"fvxx", cfit->
P4(),
ntp);
177 double chi2_vtx = vtxfitter.
GetChi2();
178 ntp->
Column(
"chi2vx", (Float_t) chi2_vtx);
virtual void Exec(Option_t *opt)
Bool_t FillList(RhoCandList &l, TString listkey="All", TString pidTcaNames="", int trackHypothesis=-1)
virtual InitStatus Init()
int SelectTruePid(PndAnalysis *ana, RhoCandList &l)
TLorentzVector P4() const
void Column(const char *label, Bool_t value, Bool_t defval=0, const char *block=0)
Int_t Remove(RhoCandidate *)
RhoCandidate * GetMcTruth() const
PndProdAnaTask(int mode=0, TString pidAlgo="")
RhoCandidate * GetFit() const
TTree * GetInternalTree()
Bool_t McTruthMatch(RhoCandidate *cand, Int_t level=2, bool verbose=false)