spray (version 1.0-25)

as.function.spray: Coerce a spray object to a function

Description

Coerce a spray object to a function

Usage

# S3 method for spray
as.function(x,...)

Value

Returns a function; this function returns a numeric vector.

Arguments

x

spray object, interpreted as a multivariate polynomial

...

Further arguments, currently ignored

Author

Robin K. S. Hankin

Examples

Run this code

(S <- spray(matrix(1:6,3,2),1:3))
(f <- as.function(S))
f(2:3) == 3*2^3*3^6 + 2*2^2*3^5 + 1*2^1*3^4  # should be TRUE


S1 <- spray(matrix(sample(-2:2,replace=TRUE,21),ncol=3),rnorm(7),addrepeats=TRUE)
S2 <- spray(matrix(sample(-2:2,replace=TRUE,15),ncol=3),rnorm(5),addrepeats=TRUE)

f1 <- as.function(S1)
f2 <- as.function(S2)

f3 <- as.function(S1*S2)


x <- 4:6

f1(x)*f2(x)-f3(x)  # should be zero



# coercion is vectorized:

f1(matrix(1:33,ncol=3))
  

Run the code above in your browser using DataLab