Cheap Numerical Integration through Data points.
Given (x_i, f_i) where f_i = f(x_i), compute a cheap approximation of integral(a .. b) f(x) dx.
integrate.xy(x, fx, a, b, use.spline=TRUE, xtol=2e-08)
x |
abscissa values. |
fx |
corresponding values of f(x). |
a,b |
the boundaries of integration; these default to min(x) and max(x) respectively. |
use.spline |
logical; if TRUE use an interpolating spline. |
xtol |
tolerance factor, typically around
|
Note that this is really not good for noisy fx
values;
probably a smoothing spline should be used in that case.
Also, we are not yet using Romberg in order to improve the trapezoid rule. This would be quite an improvement in equidistant cases.
the approximate integral.
Martin Maechler, May 1994 (for S).
integrate
for numerical integration of
functions.
x <- 1:4 integrate.xy(x, exp(x)) print(exp(4) - exp(1), digits = 10) # the true integral for(n in c(10, 20,50,100, 200)) { x <- seq(1,4, len = n) cat(formatC(n,wid=4), formatC(integrate.xy(x, exp(x)), dig = 9),"\n") }
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.