polymul: Multiplying and Dividing Polynomials

Description Usage Arguments Details Value Note See Also Examples

View source: R/polynomials.R

Description

Multiply or divide two polynomials given as vectors.

Usage

1
2
3
  polymul(p, q)

  polydiv(p, q)

Arguments

p, q

Vectors representing two polynomials.

Details

Polynomial multiplication realized simply by multiplying and summing up all the coefficients. Division is an alias for deconv. Polynomials are defined from highest to lowest coefficient.

Value

Vector representing a polynomial. For division, it returns a list with 'd' the result of the division and 'r' the rest.

Note

conv also realizes polynomial multiplication, through Fast Fourier Transformation, with the drawback that small imaginary parts may evolve. deconv can also be used for polynomial division.

See Also

conv, deconv

Examples

1
2
3
4
5
# Multiply x^2 + x + 1 with itself
polymul(c(1, 1, 1), c(0, 1, 1, 1))  #=> 1 2 3 2 1

polydiv(c(1, 2, 3, 2, 1), c(1, 1, 1))
#=> d = c(1,1,1); #=> r = c(0.000000e+00 -1.110223e-16)

Example output

[1] 1 2 3 2 1
$d
[1] 1 1 1

$r
[1]  0.000000e+00 -1.110223e-16

pracma documentation built on Jan. 17, 2021, 3 a.m.