我尝试像以前一样在gnuplot中拟合我的数据。我只更改了公式但错误" Invert_RtR中的奇异矩阵"总是发生。我尝试改变所有参数的起始值,但它没有帮助。 这是我的公式和参数(我只绘制第一个等式(f(x)):
f(x)=anfang_1*exp(-lag_1*Wachstumsrate_1) \
*(-1+exp(lag_1*Wachstumsrate_1)+exp(Wachstumsrate_1*x))
anfang_1=-2
lag_1=0.1
Wachstumsrate_1=0.005
fit f(x) 'bsln.dat' using 1:2 \
via anfang_1,lag_1,Wachstumsrate_1,Delta_1
plot 'bsln.dat' using 1:2 ls 1 ti '' ,\
f(x) ls 1 ti 'B. subtilis mit DMSO'
这是我的数据:
0 -1.552841969
40 -1.337242168
80 -1.537602002
120 -1.522878745
160 -1.48148606
200 -1.468521083
240 -1.356547324
280 -1.346787486
320 -1.22184875
360 -1.070581074
400 -0.89279003
440 -0.795880017
480 -0.707743929
520 -0.649751982
560 -0.588380294
600 -0.549750892
640 -0.514278574
680 -0.48945499
720 -0.469800302
760 -0.448550002
800 -0.437707136
840 -0.425968732
880 -0.42136079
920 -0.416801226
960 -0.415668776
1000 -0.419075024
1040 -0.428291168
1080 -0.435333936
1120 -0.452225295
1160 -0.463441557
1200 -0.485452247
1240 -0.512861625
1280 -0.543633967
1320 -0.586700236
1360 -0.628932138
1400 -0.681936665
1440 -0.744727495
答案 0 :(得分:0)
您的拟合命令包括via Delta_1
,但拟合函数f(x)不依赖于Delta_1。因此,雅可比矩阵(其包括关于所有拟合参数的f(x)的导数并且出现在gnuplot的Marquardt-Levenberg拟合算法中)是奇异矩阵。这最终会导致错误消息。