How to subtract one polynomial to another using NumPy in Python?
In this article, let’s discuss how to subtract one polynomial to another. Two polynomials are given as input and the result is the subtraction 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 subtract these to get r(x) = p(x) – q(x) as a result of subtraction 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) i.e; r(x) = (A3 - B3) x2 + (A2 - B2) x + (A1 - B1) and output is ( (A1 - B1), (A2 - B2), (A3 - B3) ).
In NumPy, it can be solved using the polysub() method. This function helps to find the difference of two polynomials and then returning the result as a polynomial
Below is the implementation with some examples :
Example 1: Using polysub()
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 ) # subtract the polynomials rx = numpy.polynomial.polynomial.polysub(px,qx) # print the resultant polynomial print (rx) |
Output :
[ 3. 3. 3.]
Example 2: sub_with_decimals
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 ) # subtract the polynomials rx = numpy.polynomial.polynomial.polysub(px,qx) # print the resultant polynomial print (rx) |
Output :
[-9.8 0. -1.8]
Example 3: #eval_then_sub
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 ) # subtract the polynomials rx = numpy.polynomial.polynomial.polysub(px,qx) # print the resultant polynomial print (rx) |
Output :
[ 1.75 1.66666667 -1.8 ]