27 if (
x <= 0.13957)
return 0;
30 + par[2] / 2.5066/par[4]*
TMath::Exp(-xp3/2/par[4]/par[4]));
38 if (
x <= 0.13957)
return 0;
90 Info(
"Begin",
"starting h1analysis with process option: %s", option.
Data());
92 delete gDirectory->GetList()->FindObject(
"elist");
97 elist =
new TEntryList(
"elist",
"H1 selection from Cut");
100 fInput->Add(
new TNamed(
"fillList",
""));
106 Info(
"Begin",
"creating an entry-list");
115 TFile
f(
"elist.root");
116 elist = (TEntryList*)
f.Get(
"elist");
134 "starting h1analysis with process option: %s (tree: %p)", option.
Data(), myTree);
137 hdmd =
new TH1F(
"hdmd",
"Dm_d",40,0.13,0.17);
138 h2 =
new TH2F(
"h2",
"ptD0 vs Dm_d",30,0.135,0.165,30,-3,6);
148 if ((
elist = (TEntryList *)
fInput->FindObject(
"elist")))
157 if (
fillList)
Info(
"SlaveBegin",
"creating an entry-list");
164 hdmd =
dynamic_cast<TH1F*
>(
fOutput->FindObject(
"hdmd"));
165 h2 =
dynamic_cast<TH2F*
>(
fOutput->FindObject(
"h2"));
167 if (
hdmd ==
nullptr ||
h2 ==
nullptr) {
168 Error(
"Terminate",
"hdmd = %p , h2 = %p",
hdmd,
h2);
174 TCanvas *
c1 =
new TCanvas(
"c1",
"h1analysis analysis",10,10,800,600);
175 c1->SetBottomMargin(0.15);
176 hdmd->GetXaxis()->SetTitle(
"m_{K#pi#pi} - m_{K#pi}[GeV/c^{2}]");
177 hdmd->GetXaxis()->SetTitleOffset(1.4);
180 if (
gROOT->GetListOfFunctions()->FindObject(
"f5"))
181 delete gROOT->GetFunction(
"f5");
182 TF1 *f5 =
new TF1(
"f5",
fdm5,0.139,0.17,5);
184 hdmd->Fit(
"f5",
"lr");
189 TCanvas *
c2 =
new TCanvas(
"c2",
"tauD0",100,100,800,600);
191 c2->SetBottomMargin(0.15);
197 if (
gROOT->GetListOfFunctions()->FindObject(
"f2"))
198 delete gROOT->GetFunction(
"f2");
199 TF1 *f2 =
new TF1(
"f2",
fdm2,0.139,0.17,2);
201 h2->FitSlicesX(f2,0,-1,1,
"qln");
207 TLine *
line =
new TLine(0,0,0,
c2->GetUymax());
212 TPaveStats *psdmd = (TPaveStats *)
hdmd->GetListOfFunctions()->FindObject(
"stats");
219 elist =
dynamic_cast<TEntryList*
>(
fOutput->FindObject(
"elist"));
221 Printf(
"Entry list 'elist' created:");
223 TFile efile(
"elist.root",
"recreate");
226 Error(
"Terminate",
"entry list requested but not found in output");
241 Info(
"Notify",
"processing file: %s",
myTreeReader.GetTree()->GetCurrentFile()->GetName());
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
long long Long64_t
Portable signed long integer 8 bytes.
void Printf(const char *fmt,...)
Formats a string in a circular formatting buffer and prints the string.
virtual void SetMarkerStyle(Style_t mstyle=1)
Set the marker style.
virtual void SetParameters(const Double_t *params)
void Draw(Option_t *option="") override
Draw this histogram with options.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
void SetOptStat(Int_t stat=1)
TList * fInput
List of objects available during processing.
TSelectorList * fOutput
! List of objects created during processing
const char * GetOption() const override
const char * Data() const
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
A TTree represents a columnar dataset.
TTreeReader myTreeReader
!
Bool_t Process(Long64_t entry) override
The Process() function is called for each entry in the tree to be processed.
TTreeReaderValue< Int_t > fIpi
!
TTreeReaderArray< Int_t > fNhitrp
!
TTreeReaderValue< Float_t > fRpd0_t
!
TTreeReaderArray< Float_t > fNlhpi
!
TTreeReaderValue< Float_t > fMd0_d
!
TTreeReaderValue< Float_t > fPtd0_d
!
void SlaveBegin(TTree *) override
TTreeReaderValue< Int_t > fIk
!
Bool_t Notify() override
This method must be overridden to handle object notification (the base implementation is no-op).
void Terminate() override
TTreeReaderValue< Int_t > fIpis
!
TTreeReaderValue< Int_t > fNjets
!
TTreeReaderArray< Float_t > fRend
!
TTreeReaderValue< Float_t > fEtads_d
!
void SlaveTerminate() override
TTreeReaderArray< Float_t > fRstart
!
TTreeReaderValue< Float_t > fDm_d
!
TTreeReaderArray< Float_t > fNlhk
!
TTreeReaderValue< Float_t > fPtds_d
!
void Begin(TTree *) override
void Init(TTree *myTree) override
Double_t fdm5(Double_t *xx, Double_t *par)
Double_t fdm2(Double_t *xx, Double_t *par)
Double_t Exp(Double_t x)
Returns the base-e exponential function of x, which is e raised to the power x.
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
Returns x raised to the power y.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.