Я пытаюсь численно взять вторую производную функции l
(журнал распределения Пуассона над вектором x
и lambda=6
) в R, и это мой код:Большая ошибка при численном вычислении второй производной
x=c(2,3)
t=6
delta=1e-12
h=1e-12
L=function(x,t) dpois(x,t)
l<-function(x,t) log(prod(L(x,t)))
ld<-function(x,t) (l(x,t+delta)-l(x,t))/delta
ldd<-function(x,t) (ld(x,t+h)-ld(x,t))/h
ld(x,t)
ldd(x,t)
Моего выхода
> ld(x,t)
[1] -1.167066
> ldd(x,t)
[1] 888178420
Но для этого точно таких же функций я использую вольфрам и получить -7/6~~-1.16667 для первой производной и -5/36~~-0.138889 для второй производной , Я пытался выяснить, почему моя функция имеет такую большую ошибку за последние два часа.
Примечания: Это для проекта класса, так что я не могу использовать функцию производной в R.