R: Function Norm

fnorm {pracma} | R Documentation

## Function Norm

### Description

The `fnorm` function calculates several different types of function norms for depending on the argument `p`.

### Usage

    fnorm(f, g, x1, x2, p = 2, npoints = 100)

### Arguments

`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.

### Details

`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.

### Value

Numeric scalar (or `Inf`), or `NA` if one of these functions returns `NA`.

### Note

Another kind of ‘mean’ distance could be calculated by integrating the difference `f-g` and dividing through the length of the interval.

### See Also

`Norm`

### Examples

    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

[Package pracma version 2.0.4 Index]