Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

numpy.poly1d() in Python

  • Last Updated : 04 Dec, 2020

The numpy.poly1d() function helps to define a polynomial function. It makes it easy to apply “natural operations” on polynomials.

Syntax: numpy.poly1d(arr, root, var)
Parameters :
arr : [array_like] The polynomial coefficients are given in decreasing order of powers. If the second parameter (root) is set to True then array values are the roots of the polynomial equation.

root : [bool, optional] True means polynomial roots. Default is False.
var : variable like x, y, z that we need in polynomial [default is x].

Arguments :
c : Polynomial coefficient.
coef : Polynomial coefficient.
coefficients : Polynomial coefficient.
order : Order or degree of polynomial.
o : Order or degree of polynomial.
r : Polynomial root.
roots : Polynomial root.

Return: Polynomial and the operation applied

For example: poly1d(3, 2, 6) = 3x2 + 2x + 6
poly1d([1, 2, 3], True) = (x-1)(x-2)(x-3) = x3 – 6x2 + 11x -6

Code 1 : Explaining poly1d() and its argument




# Python code explaining
# numpy.poly1d()
  
# importing libraries
import numpy as np
  
# Constructing polynomial
p1 = np.poly1d([1, 2])
p2 = np.poly1d([4, 9, 5, 4])
  
print ("P1 : ", p1)
print ("\n p2 : \n", p2)
  
# Solve for x = 2
print ("\n\np1 at x = 2 : ", p1(2))
print ("p2 at x = 2 : ", p2(2))
  
# Finding Roots
print ("\n\nRoots of P1 : ", p1.r)
print ("Roots of P2 : ", p2.r)
  
# Finding Coefficients
print ("\n\nCoefficients of P1 : ", p1.c)
print ("Coefficients of P2 : ", p2.coeffs)
  
# Finding Order
print ("\n\nOrder / Degree of P1 : ", p1.o)
print ("Order / Degree of P2 : ", p2.order)

Output :

P1 :   
1 x + 2

 p2 : 
    3     2
4 x + 9 x + 5 x + 4


p1 at x = 2 :  4
p2 at x = 2 :  82


Roots of P1 :  [-2.]
Roots of P2 :  [-1.86738371+0.j         -0.19130814+0.70633545j -0.19130814-0.70633545j]


Coefficients of P1 :  [1 2]
Coefficients of P2 :  [4 9 5 4]


Order / Degree of P1 :  1
Order / Degree of P2 :  3

 
Code 2 : Basic mathematical operation on polynomial




# Python code explaining
# numpy.poly1d()
  
# importing libraries
import numpy as np
  
# Constructing polynomial
p1 = np.poly1d([1, 2])
p2 = np.poly1d([4, 9, 5, 4])
  
print ("P1 : ", p1)
print ("\n p2 : \n", p2)
  
print ("\n\np1 ^ 2 : \n", p1**2)
print ("p2 ^ 2 : \n", np.square(p2))
  
p3 = np.poly1d([1, 2], variable = 'y')
print ("\n\np3 : ", p3)
  
  
print ("\n\np1 * p2 : \n", p1 * p2)
print ("\nMultiplying two polynimials : \n"
       np.poly1d([1, -1]) * np.poly1d([1, -2]))

Output :

P1 :   
1 x + 2

 p2 : 
    3     2
4 x + 9 x + 5 x + 4


p1 ^ 2 : 
    2
1 x + 4 x + 4
p2 ^ 2 : 
 [16 81 25 16]


p3 :   
1 y + 2


p1 * p2 : 
    4      3      2
4 x + 17 x + 23 x + 14 x + 8

Multiplying two polynimials : 
    2
1 x - 3 x + 2


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!