Метеор Я полагаю, что формула в указанном ответе верна, но ее применение к случаю x=5
неверно. 1.02
явно не может быть действительным отображением 5
, потому что 5
немного выше середины в диапазоне [0.1; 10]
(середина 5.05
), а 1.02
немного выше середины логарифмического диапазон [0.1; 10]
(середина 1.0
). Вероятно, это связано с ошибками округления @ DietrichEpp
Кроме того, я думаю, что формула, которую он использует, немного более склонна к ошибкам округления. Особенно я думаю, что начиная с
y = a' * exp(b*(x-x1))
даст лучшую формулу. В таком случае a'
явно y1
.
b
по-прежнему рассчитывается так же, как
b = log (y2/y1) / (x2-x1)
Основное отличие состоит в том, что в этой формуле a' = a*exp(b*x1)
(где a
- это a
в ответе @ DietrichEpp). Если x1
что-то большое, это уменьшает множество ошибок округления.
Для вашего конкретного случая, используя e
(2.71828 ...) в качестве основы для логарифма и показателя степени, я получаю b = 0,00332859141506
и a' = 10