numpy.poly1d() in Python

numpy.poly1d(arr, root, var): This function helps to define a polynomial function. It makes it easy to apply “natural operations” on polynomials.

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.
For example- poly1d(3, 2, 6) = 3x2 + 2x + 6
poly1d([1, 2, 3], True) = (x-1)(x-2)(x-3) = x3 – 6x2 + 11x -6

-> 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



Code 1 : Explaining poly1d() and its argument

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


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

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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]))

chevron_right


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

Aspire to Inspire before I expire

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.