я пытаюсь подогнать этот график , поскольку вы можете видеть, что данные не так хороши.
Мой код:
clear
reset
set terminal pngcairo size 1000,600 enhanced font 'Verdana,10'
set output 'LocalEnergyStepZoom.png'
set ylabel '{/Symbol D}H/H_0'
set xlabel 'n_{step}'
set format y '%.2e'
set xrange [*:*]
set yrange [1e-16:*]
f(x) = a*x**b
fit f(x) "revErrEnergyGfortCaotic.txt" via a,b
set logscale
plot 'revErrEnergyGfortCaotic.txt' w p,\
'revErrEnergyGfortRegular.txt' w p,\
f(x) w l lc rgb "black" lw 3
exit
Итак, вопрос в том, какую ошибку я вычисляю здесь? потому что я полагаю, что в логарифмической плоскости форма, которую я заложил в код, должна очень хорошо отражать данные.
Большое спасибо
Наконец, я могу решить проблему, используя предложение в ответе Кристопа, и немного изменить его.
Я нашел приблизительный наклон функции (что-то близкое к -4), затем, приняв это исправление параметра, я просто подогнал кривую только с a, нашел ее, исправил и изменил только b. После этого, используя вывод в качестве начального решения для подгонки, я нашел наилучшее соответствие.
f(x) = a*x + b
, а затем подобрать, используяlog(y)
по сравнению сlog(x)
. Для этого используйте опциюusing
:fit f(x) "data" using (log($1)):(log($2)) via a,b
. - person Miguel   schedule 13.05.2014