内容 |
このチュートリアルでは積分関数内に鋭いピークを持つ積分フィット関数を定義し、その関数でデータをフィットする方法を示します。
積分関数内に鋭いピークを含んでいるので、それを狭い間隔で積分する必要があります。そのため、このピークを3つの部分に区分けして積分を行います。
必要なOriginのバージョン:Origin 9.0 SR0
このチュートリアルでは、以下の項目について説明します。
フィットする積分関数は次の式で表されます。
aとbはフィット関数内のパラメータです。
初期パラメータ値は、a=1e-4, b=1e-4となります。積分関数内には中心がaにあり、太さが2b程度のピークがあります。そして、ピークの幅(2e-4)は積分の範囲から見ても、とても狭いことが分かります。正しくピークの中心あたりで積分される事を確認するために、積分範囲である[0,1] は3つの区分に分けられています。[0,a-5*b], [a-5*b,a+5*b], [a+5*b,1].この区分内で積分が施され、最終的に合計します。
フィット関数ビルダーツールでフィット関数を定義します。
return 1/(sqrt(2*pi)*b)*exp(-(t-a)^2/(2*b^2)-x*t);
それから、進むボタンをクリックします。
integral(myint, 0, a-5*b, a ,b ,x)+integral(myint, a-5*b, a+5*b, a ,b ,x)+ integral(myint, a+5*b, 1, a ,b ,x)
もう一度評価ボタンをクリックするとy=0.84が表示され、今回は正確にピークが積分されたことが分かります。
log(integral(myint, 0, a-5*b, a ,b ,x)+integral(myint, a-5*b, a+5*b, a ,b ,x) +integral(myint, a+5*b, 1, a ,b ,x))
完了ボタンをクリックします。
フィット曲線のグラフは次のようになります。
フィットパラメータは以下の通りです。
パラメータ | 値 | 標準誤差 |
---|---|---|
a | 4.98302E-4 | 1.07593E-5 |
b | 1.94275E-4 | 8.21815E-6 |
補正R二乗値は 0.99799です。つまり、このフィット結果はとても良いことを示しています。
x | y |
---|---|
0 | -0.00267 |
60 | -0.01561 |
240 | -0.05268 |
500 | -0.10462 |
1000 | -0.22092 |
1500 | -0.31004 |
2000 | -0.40695 |
3000 | -0.61328 |
4000 | -0.75884 |
5000 | -0.9127 |
6000 | -0.98605 |
7000 | -1.18957 |
9000 | -1.43831 |
10000 | -1.41393 |
12000 | -1.61458 |
15000 | -1.88098 |
20000 | -2.07792 |