もっちさんの明日はどっちだ

あした、なに観て 生きていく?

【スポンサーリンク】

ROOT ヒストグラムを任意関数でFit

メモ

 

powerlaw

TFile* file = new TFile("file.root");

TH1D* hist = (TH1D*) file->Get("histogram");

TF1* powlaw = new TF1("powlaw", "[0] * (x^[1])", 0., 100.); // initialize parameters

powlaw->SetParameter(0, 1.);

powlaw->SetParameter(1, 1.);

fix parameter powlaw->FixParameter(0);

fit hist->Fit("powlaw", "", "", 0., 100.);

 

// get parameters

double par0 = (double) powlaw->GetParameter(0);

double par1 = (double) powlaw->GetParameter(1);

double err0 = (double) powlaw->GetParError(0);

double err1 = (double) powlaw->GetParError(1);

double chisq = (double) powlaw->GetChisquare();

 

 

既存のFit関数からパラメータを取り出す

gaus hist->Fit("gaus", "", "", 6., 7.);

TF1* gaus = hist->GetFunction("gaus");

double gauspar0 = (double) gaus->GetParameter(0);

... ( gaus = [0] * exp(-0.5**1 )*1:x-[1])/[2])^2

【スポンサーリンク】