欢迎光临散文网 会员登陆 & 注册

CrystalBall拟合(Roofit)

2023-06-26 21:00 作者:黄盖波汾永远的神  | 我要投稿

using namespace RooFit;     启用roofit

void roofitwithcrystalball()   注意文件名
{


RooRealVar x("x", "x", -20, 20);
RooRealVar mean("mean", "mean", 5, -0.1, 0.1);
RooRealVar sigma("sigma", "sigma", 2, 1.5, 2.5);
RooRealVar alpha("alpha", "alpha", 1, 0.9, 1.1);
RooRealVar nin("nin", "nin", 3, 2.5, 3.5);    定义5个变量
RooCrystalBall f1("f1", "f1",x, alpha, nin, sigma, mean);   函数形式



RooPlot * p1 = x.frame(Title("oringinal"));       
RooPlot * p2 = x.frame(Title("Fitted"));
RooPlot * p3 = x.frame(Title("oringinal scatter"));      定义3个框架



RooDataSet * data1 = f1.generate(x, 10000);     产生数据  


f1.plotOn(p1);



data1->plotOn(p2);
f1.plotOn(p2);
f1.fitTo(*data1);             拟合数据导入进行对比



data1->plotOn(p3);



mean.Print();
sigma.Print();
alpha.Print();
nin.Print();     输出参数


TCanvas * c1 = new TCanvas("c1","c1");      
c1->Divide(1,3);
c1->cd(1);
p1->Draw();
c1->cd(2);
p2->Draw();
c1->cd(3);
p3->Draw();     



}

CrystalBall拟合(Roofit)的评论 (共 条)

分享到微博请遵守国家法律