maximizeInterpolant: Maximize a function given a table of values by spline...

Description Usage Arguments Details Value Author(s) References Examples

View source: R/maximizeInterpolant.R

Description

Maximize a function given a table of values by spline interpolation.

Usage

1

Arguments

x

numeric vector of the inputs of the function.

y

numeric matrix of function values at the values of x. Columns correspond to x values and each row corresponds to a different function to be maximized.

Details

Calculates the cubic spline interpolant for each row the method of Forsythe et al (1977) using the function fmm_spline from splines.c in the stats package). Then calculates the derivatives of the spline segments adjacant to the input with the maximum function value. This allows identification of the maximum of the interpolating spline.

Value

numeric vector of input values at which the function maximums occur.

Author(s)

Aaron Lun, improving on earlier code by Gordon Smyth

References

Forsythe, G. E., Malcolm, M. A. and Moler, C. B. (1977). Computer Methods for Mathematical Computations, Prentice-Hall.

Examples

1
2
3
x <- seq(0,1,length=10)
y <- rnorm(10,1,1)
maximizeInterpolant(x,y)

Example output

Loading required package: limma
[1] 0.07868385
Warning message:
In maximizeInterpolant(x, y) :
  coverting vector of likelihoods to matrix format for interpolation

edgeR documentation built on Jan. 16, 2021, 2:03 a.m.