一つ前の記事を参考にして、ある分布関数に沿ったデータを手元に用意できたと思いますので、
次はそれをgnuplotを使ってfittingしていこうと思います
前の記事で書いたrayleigh分布のデータとそのヒストグラムデータをそのまま使います
gnuplotで
f(x, a,b)=x/a/a*exp(-x*x/2.0/a/a)*b
a=1
b=300
fit f(x, a, b) "${OUTPUT}" u 1:2 via a,b
plot[0:5] "foo.txt" with boxes, f(x, a, b) w l lw 3 lt 3
参考 :a=1
b=300
fit f(x, a, b) "${OUTPUT}" u 1:2 via a,b
plot[0:5] "foo.txt" with boxes, f(x, a, b) w l lw 3 lt 3

画面にはfittingの結果が出力されています、最後だけ抜き出すと、

7回のfittingの結果、推定値はa=0.972823 , b=49.5786らしいです
fittingの方法は最小二乗法らしいです(他の方法も選べる?)
今回は精度とかはどうでもよくて、ただ確認がしたかっただけなのでこれだけ〜
もっとガチなことがやりたかったらやはりROOTを使うんだろうなぁ〜
ランキング参加中です
↓クリックしていただけると嬉しいです〜