fnorm | R Documentation |
The fnorm
function calculates several different types of function
norms for depending on the argument p
.
fnorm(f, g, x1, x2, p = 2, npoints = 100)
f, g |
functions given by name or string. |
x1, x2 |
endpoints of the interval. |
p |
Numeric scalar or Inf, -Inf; default is 2. |
npoints |
number of points to be considered in the interval. |
fnorm
returns a scalar that gives some measure of the distance
of two functions f
and g
on the interval [x1, x2]
.
It takes npoints
equidistant points in the interval, computes the
function values for f
and g
and applies Norm
to
their difference.
Especially p=Inf
returns the maximum norm,
while fnorm(f, g, x1, x2, p = 1, npoints) / npoints
would return some estimate of the mean distance.
Numeric scalar (or Inf
), or NA
if one of these functions
returns NA
.
Another kind of ‘mean’ distance could be calculated by integrating the
difference f-g
and dividing through the length of the interval.
Norm
xp <- seq(-1, 1, length.out = 6)
yp <- runge(xp)
p5 <- polyfit(xp, yp, 5)
f5 <- function(x) polyval(p5, x)
fnorm(runge, f5, -1, 1, p = Inf) #=> 0.4303246
fnorm(runge, f5, -1, 1, p = Inf, npoints = 1000) #=> 0.4326690
# Compute mean distance using fnorm:
fnorm(runge, f5, -1, 1, p = 1, 1000) / 1000 #=> 0.1094193
# Compute mean distance by integration:
fn <- function(x) abs(runge(x) - f5(x))
integrate(fn, -1, 1)$value / 2 #=> 0.1095285
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.