【问题标题】:Gnuplot fittingGnuplot 拟合
【发布时间】:2019-03-21 04:17:00
【问题描述】:

我想拟合以下数据:

70  0.0429065
100 0.041212
150 0.040117
200 0.035018
250 0.024366
300 0.02017
350 0.018255
400 0.015368

以下函数是指数函数和高斯函数的组合:

$ f(x)= a1*(a2* exp(-x/T2e)+ exp(-(x/T2g)**2))

$ fit f(x) 'data' via a1,a2,T2e,T2g

但它不断给我以下结果:

a1              = 0.0720021        +/- 0.04453      (61.84%)
a2              = 0.310022         +/- 0.9041       (291.6%)
T2e             = 63291.7          +/- 2.029e+07    (3.206e+04%)
T2g             = 252.79           +/- 32.36        (12.8%)

当我尝试将它分开时

$ g(x)=b* exp(-(x/T2g)**2)

$ fit g(x) 'data' via b,T2g

我明白了

b               = 0.0451053        +/- 0.001598     (3.542%)
T2g             = 359.359          +/- 16.89        (4.701%)

$S(x)=S0* exp(-x/T2e)

$ fit S(x) 'data' via S0,T2e

给予:

S0              = 0.057199         +/- 0.003954     (6.913%)
T2e              = 319.257          +/- 38.17        (11.96%)

我已经尝试设置初始值,但没有改变结果。

有人知道怎么回事吗? 谢谢,

【问题讨论】:

  • 请提供您的完整代码(最好是复制和粘贴代码),这样可以节省更多时间供他人复制。您确定此功能完全适合吗?没有太多数据点,也没有明确的特征,即高斯峰和指数尾。
  • $S(x)=S0* exp(-x/T2e) $g(x)=b* exp(-(x/T2g)**2) $ fit S(x) ' data' via S0,T2e $ fit g(x) 'data' via b,T2g 我认为由于每个函数都分别适合良好的近似值,因此它们的总和也应该适合。

标签: gnuplot function-fitting


【解决方案1】:

好的,您可以看到一个指数衰减,带有一个可能是高斯的驼峰。 方法,我如何拟合:首先,排除数据点 100 和 150 并拟合指数,然后将高斯设置为大约 170。 您可能不太适合,因为至少高斯峰值移动了某个值x1

附上代码:

 ### fitting 
reset session

$Data <<EOD
70  0.0429065
100 0.041212
150 0.040117
200 0.035018
250 0.024366
300 0.02017
350 0.018255
400 0.015368
EOD

a = 0.055
T2e = 310

b = 0.008
x1 = 170
T2g = 54

Exponential(x) = a*exp(-x/T2e)
Gaussian(x) = b*exp(-((x-x1)/T2g)**2)

f(x) = Exponential(x) + Gaussian(x)
fit f(x) $Data u 1:2 via a,b,x1,T2e,T2g

plot $Data u 1:2 w lp pt 7, f(x) lc rgb "red"
### end of code

你会得到:

a               = 0.0535048        +/- 0.00183      (3.42%)
b               = 0.00833589       +/- 0.001006     (12.06%)
x1              = 170.356          +/- 5.664        (3.325%)
T2e             = 315.114          +/- 12.94        (4.106%)
T2g             = 54.823           +/- 12.13        (22.12%)

【讨论】:

    猜你喜欢
    • 2020-07-08
    • 2016-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    相关资源
    最近更新 更多