void Der_new() { auto h1 = new TH1D("h1_gaus","Mass (amu);Counts",101.0,39.5,140.5); TH1D*h2 = new TH1D("h2","h2_Derivative", 100.0,40.5,140.5); double x; ifstream inp; inp.open("try.txt"); for (int i=0;i<100;i++) { inp>>x; h1->SetBinContent(i,x); } TCanvas *c1 = new TCanvas("c1","Without constraint",800,600); c1->Divide(1,2); c1->cd(1); h1->Draw("E1"); Int_t nbins = h1->GetNbinsX(); for(Int_t i=0;iGetBinContent(i); double a_cent=h1->GetBinCenter(i); double b=h1->GetBinContent(i+1); double b_cent=h1->GetBinCenter(i+1); double c=h1->GetBinContent(i+2); double c_cent=h1->GetBinCenter(i+2); double e=h1->GetBinContent(i+3); double e_cent=h1->GetBinCenter(i+3); double f=h1->GetBinContent(i+4); double f_cent=h1->GetBinCenter(i+4); double d = (f-a)/(f_cent-a_cent); double d_mid = (f_cent+a_cent)/2; h2->Fill(d_mid,d); } c1->cd(2); gStyle->SetOptStat(1002211); gStyle->SetOptFit(1111); h2->Draw("e1"); }