# How to multiply a polynomial to another using NumPy in Python?

In this article, we will make a NumPy program to multiply one polynomial to another. Two polynomials are given as input and the result is the multiplication of two polynomials.

• The polynomial p(x) = C3 x2 + C2 x + C1  is represented in NumPy as : ( C1, C2, C3 ) { the coefficients (constants)}.
• Let take two polynomials p(x) and q(x) then multiply these to get r(x) = p(x) * q(x) as a result of multiplication of two input polynomials.
```If p(x) = A3 x2 + A2 x + A1
and
q(x) = B3 x2 + B2 x + B1

then result is r(x) = p(x) * q(x)

and output is

( (A1 * B1), (A2 * B1) + (A2 * B1),
(A3 * B1) + (A2 * B2) + (A1 * B3),
(A2 * B2) + (A3 * B2), (A3 * B3) ).
```

This can be calculated using the polymul() method of NumPy. This method evaluates the product of two polynomials and returns the polynomial resulting from the multiplication of two input polynomials â€˜p1â€™ and â€˜p2â€™.

Syntax:

`numpy.polymul(p1, p2)`

Below is the implementation with some examples :

Example 1:

## Python3

 `# importing package ``import` `numpy `` ` `# define the polynomials ``# p(x) = 5(x**2) + (-2)x +5 `` ` `px ``=` `(``5``, ``-``2``, ``5``) ``# q(x) = 2(x**2) + (-5)x +2 ``qx ``=` `(``2``, ``-``5``, ``2``) `` ` `# mul the polynomials ``rx ``=` `numpy.polynomial.polynomial.polymul(px, qx) `` ` `# print the resultant polynomial ``print``(rx) `

Output :

```[ 10. -29.  30. -29.  10.]
```

Example 2 :

## Python3

 `# importing package ``import` `numpy `` ` `# define the polynomials ``# p(x) = 2.2 ``px ``=` `(``0``, ``0``, ``2.2``) `` ` `# q(x) = 9.8(x**2) + 4 ``qx ``=` `(``9.8``, ``0``, ``4``) `` ` `# mul the polynomials ``rx ``=` `numpy.polynomial.polynomial.polymul(px, qx) `` ` `# print the resultant polynomial ``print``(rx) `

Output :

```[  0.     0.    21.56   0.     8.8 ]
```

Example 3 :

## Python3

 `# importing package ``import` `numpy `` ` `# define the polynomials ``# p(x) = (5/3)x ``px ``=` `(``0``, ``5``/``3``, ``0``) `` ` `# q(x) = (-7/4)(x**2) + (9/5) ``qx ``=` `(``-``7``/``4``, ``0``, ``9``/``5``) `` ` `# mul the polynomials ``rx ``=` `numpy.polynomial.polynomial.polymul(px, qx) `` ` `# print the resultant polynomial ``print``(rx) `

Output :

```[ 0.         -2.91666667  0.          3.        ]
```

Previous
Next