# 数値微分(前進差分)の誤差 # 関数 f <- function(x) { return(x ^ 5 - 4 * x ^ 4) } # 導関数(誤差確認用) fp <- function(x) { return(5 * x ^ 4 - 16 * x ^ 3) } # 前進差分 f1 <- function(x, h) { return((f(x + h) - f(x)) / h) } x <- 0.1 h <- 10^(0 : -20) error <- abs(fp(x) - f1(x, h)) range = c(1e-16, 1) plot(h, error, ylim = range, log = "xy", type = "o", col = "blue")