3 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/rootlogon.C");
6 TString inPidFile =
"pid_sttcombi.root";
9 TFile *
inFile = TFile::Open(inSimFile,
"READ");
11 TTree *
tree=(TTree *) inFile->Get(
"pndsim") ;
12 tree->AddFriend(
"pndsim",inPidFile);
14 TClonesArray* cand_array=
new TClonesArray(
"PndPidCandidate");
15 tree->SetBranchAddress(
"PidChargedCand", &cand_array);
17 TClonesArray* drc_array=
new TClonesArray(
"PndPidProbability");
18 tree->SetBranchAddress(
"PidAlgoDrc", &drc_array);
19 TClonesArray* mvd_array=
new TClonesArray(
"PndPidProbability");
20 tree->SetBranchAddress(
"PidAlgoMvd", &mvd_array);
22 TFile *
out = TFile::Open(
"out.root",
"RECREATE");
24 TNtuple *ntDrc =
new TNtuple(
"ntDrc",
"ntDrc",
"mom:theta:q:drc:thetac:mvd:dedx:e:mu:pi:k:p:ec:muc:pic:kc:pc");
25 TNtuple *ntMvd =
new TNtuple(
"ntMvd",
"ntMvd",
"mom:theta:q:drc:thetac:mvd:dedx:e:mu:pi:k:p:ec:muc:pic:kc:pc");
26 TNtuple *ntCom =
new TNtuple(
"ntCom",
"ntCom",
"mom:theta:q:drc:thetac:mvd:dedx:e:mu:pi:k:p:ec:muc:pic:kc:pc");
30 for (Int_t j=0; j< tree->GetEntriesFast(); j++){
32 if (cand_array->GetEntriesFast()==0)
continue;
34 cout <<
"processing event " << j <<
"\n";
36 for (Int_t ii=0; ii<cand_array->GetEntriesFast(); ii++)
44 if (drc->
GetIndex()!=ii) cout <<
"DRC mismatch!!!" << endl;
45 if (mvd->GetIndex()!=ii) cout <<
"MVD mismatch!!!" << endl;
62 ntDrc->Fill(ntuple_drc);
69 mvd->GetElectronPidProb(),
70 mvd->GetMuonPidProb(),
71 mvd->GetPionPidProb(),
72 mvd->GetKaonPidProb(),
73 mvd->GetProtonPidProb(),
74 mvd->GetElectronPidProb(flux),
75 mvd->GetMuonPidProb(flux),
76 mvd->GetPionPidProb(flux),
77 mvd->GetKaonPidProb(flux),
78 mvd->GetProtonPidProb(flux)
80 ntMvd->Fill(ntuple_mvd);
99 ntCom->Fill(ntuple_combo);
Double_t GetProtonPidProb(PndPidProbability *flux=NULL) const
Double_t GetKaonPidProb(PndPidProbability *flux=NULL) const
Float_t GetDrcThetaC() const
Double_t GetMuonPidProb(PndPidProbability *flux=NULL) const
Float_t GetMvdDEDX() const
Int_t GetDrcIndex() const
TVector3 GetMomentum() const
Double_t GetElectronPidProb(PndPidProbability *flux=NULL) const
Double_t GetPionPidProb(PndPidProbability *flux=NULL) const