Learn R Programming

sfsmisc (version 1.1-0)

polyn.eval: Evaluate Polynomials

Description

Evaluate one or several univariate polynomials at several locations, i.e. compute coef[1] + coef[2]*x + ... + coef[p+1]* x^p (in the simplest case where x is scalar and coef a vector).

Usage

polyn.eval(coef, x)

Arguments

coef

numeric vector or matrix. If a vector, x can be an array and the result matches x. If coef is a matrix it specifies several polynomials of the same degree as rows, x must be a vector, coef[,k] is for \(x^{k-1}\) and the result is a matrix of dimension length(x) * nrow(coef).

x

numeric vector or array. Either x or coef must be a vector.

Value

numeric vector or array, depending on input dimensionalities, see above.

Details

The stable “Horner rule” is used for evaluation in any case.

See Also

For much more sophisticated handling of polynomials, use the polynom package, e.g. predict.polynomial.

Examples

Run this code
polyn.eval(c(1,-2,1), x = 0:3)# (x - 1)^2
polyn.eval(c(0, 24, -50, 35, -10, 1), x = matrix(0:5, 2,3))# 5 zeros!
(cf <- rbind(diag(3), c(1,-2,1)))
polyn.eval(cf, 0:5)

Run the code above in your browser using DataLab