R/ft9.R

Defines functions ft9

Documented in ft9

#' Solution of Question 9 in Midterm exam
#' @export
#' @param f known function
#' @param df differential form of known function
#' @param init initial value
#' @param max.iter maximum iteration number
#' @param eps epsilon

ft9 <- function(f, df, init=0, max.iter=100, eps=1.0e-8) {
  x <- init
  iter <- 0
  while (iter < max.iter) {
    new.x <- x - f(x)/df(x)
    if (abs((new.x-x)/x)<eps) break
    iter <- iter+1
    x <- new.x
  }
  if (iter == max.iter) warning ("Maximum iteration reached!")
  obj <- list(solution=new.x, iteration=iter)
  return(obj)
}
exp500/MAT8054 documentation built on Dec. 20, 2021, 7:39 a.m.