Double_t fitf(Double_t *x, Double_t *par) { Double_t arg = 0; Double_t fitval = par[0]*TMath::Sin(x[0]+par[1]); return fitval; } void myfit() { TCanvas *c1 = new TCanvas("c1","the fit canvas",500,400); TF1 *func = new TF1("fitf",fitf,0.0,6.28,2); // set initial value and parm func->SetParameters(0.02,1.0); func->SetParNames("Constant","Offset"); //Dca_phi_2->Fit("fitf"); histname->Fit("fitf"); // histname should be a variable Dca_phi_1, Dca_phi_2 or Dca_phi_3 // coming from main macro Double_t parA = func->GetParameter("Constant") ; // parA should be readable from main macro cout <<" parA " << parA << endl; }