2014年2月16日日曜日

gnuplotのGaussian fitting : K-40の1460keVピークの場合

ガンマ線スペクトルの生データが使えるようになったので、さっそくGaussian fittingを試してみた。まずはgnuplotを使った「あんちょこ」なものから。(このページを参考にした。)
gnuplotに入り、
f(x) = n * exp(a*(x-b)**2) 
n=.01; a=1/20.;b=717 
fit [x1,x2] f(x) "data.dat" via n,a,b
などといった感じでコマンドを打ち込むと、簡易なfittingをやってくれる。x1とx2はfittingしたいxの範囲で、n,a,bといった係数の初期値は生データをぐっと睨んで適当な値に選ぶ(この辺りは高校の数学、あるいは大学初年度レベルの数学のトレーニングが必要だろう....初期値が悪いと、結果も悪くなることが多い)。これは関数系を自分で指定できるので、Lorenzianや放物線にしたりなど、状況に応じて変更することができる。最後はplot f(x) w lとすればグラフに出せる。

これを昨日の善光寺のデータのK-40(カリウム40)の1460 keVのピークに適用してみたら次のようになった。

パラメータの収束値は上の数字ようになった。
精度はそれほど高くないが、最初の一歩としては十分だろう。精度が足りないのはやはり統計量が足りないからだと思う。20分以上の測定が必要なんだろう。今度やってみよう。

得られたガウシアンの幅(σ)を一応計算してみた。するとσ=20.1となった。3σ=60.3だから、相対誤差はだいたい60.3/717 = 0.084...つまり8.4%程度か?

追記:実は以前にLB2045の性能(仕様)について考察したことがあった。半値幅(つまりσのこと)についても検討している。あとでもう一度まとめておこう。

0 件のコメント: