Multivariate polynomials

Share:

Description

Various tools to manipulate and combine multivariate polynomials

Details

Package: multipol
Type: Package
Version: 1.0
Date: 2008-01-24
License: GPL

Basically, coerce an array to a multivariate polynomial (a “multipol”) using as.multipol().

Taking a matrix a as an example, because this has two dimensions it may be viewed as a bivariate polynomial with a[i,j] being the coefficient of x^i.y^j. Note the off-by-one issue; see ?Extract.

Multivariate polynomials of arbitrary arity are a straightforward generalization using appropriately dimensioned arrays.

Arithmetic operations “+”,“-”, “*”, “^” operate as though their arguments are multivariate polynomials.

Even quite small multipols are computationally intense; many coefficients have to be calculated and each is the sum of many terms.

The package would benefit enormously by being able to use a sparse array class.

Author(s)

Robin K. S. Hankin

Maintainer: <r.hankin@noc.soton.ac.uk>

References

none really

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
ones(2)*linear(c(1,-1))                             # x^2-y^2
ones(2)*(ones(2,2)-uni(2))                          # x^3+y^3


a <- as.multipol(matrix(1:12,3,4))
a

a[1,1] <- 11

f <- as.function(a*a)

f(c(1,pi))