1
Как установить максимальную итерацию = 20 для следующего кода метода Bisection? Должен ли я работать только на feval или что-то еще?Установите максимальную итерацию для метода Bisection?
rf.bisection <- function(f, lower, upper, tol=1e-4) {
flow <- f(lower)
fupper <- f(upper)
feval <- 2
if (flow * fupper > 0) stop("The given interval does not contain the root!
\n")
diff <- upper - lower
while (abs(diff) > tol) {
newpoint <- (lower + upper)/2
newf <- f(newpoint)
if (abs(newf) <= tol) break
if (flow * newf < 0) upper <- newpoint
if (fupper * newf < 0) lower <- newpoint
diff <- upper - lower
feval <- feval + 1
}
list(x = newx, value = newf, fevals=feval)
}
Это даст вам 18 итераций, если вы не инициализируете 'feval' с 0. – eugen
Это сработало! Спасибо за вашу помощь. –
@eugen, вы правы, я думал об оценках функций, исправлен. –