я функция определена какВключение функции в R возвращает ошибку
tail <- function(x) {585.1961*x^-2.592484}
Когда я попытался получить интеграл от нее от 5000 до Inf, он возвращает ошибку:
> integrate(tail, 5000, Inf)
Error in integrate(tail, 5000, Inf) : the integral is probably divergent
Однако, интегрируя от 1000 до Inf и от 1000 до 5000 и работал отлично:
> integrate(tail, 1000, Inf)
0.006134318 with absolute error < 2.5e-05
> integrate(tail, 1000, 5000)
0.005661634 with absolute error < 4.9e-09
не integrate(tail, 5000, Inf)
просто равна до integrate(tail, 1000, Inf) - integrate(tail, 1000, 5000)
? Почему это привело к расходящемуся интегралу?
Это простое исправление, чтобы изменить допуск: 'интегрируйте (tail, 5000, Inf, rel.tol = 1 * 10^-5)', так как ваше значение по умолчанию слишком велико. –
Спасибо, что работает! Просто любопытно, как определить ценность rel.tol? Могу ли я всегда назначать небольшое число, например .Machine $ double.eps, ему? –