📜  使用 NumPy 找到多项式的根

📅  最后修改于: 2022-05-13 01:54:32.175000             🧑  作者: Mango

使用 NumPy 找到多项式的根

在本文中,让我们讨论如何找到 NumPy 数组的多项式的根。可以使用各种方法找到它,让我们详细查看它们。

方法一:使用 np.roots()

此函数返回系数在 p 中给出的多项式的根。多项式的系数将按相应的顺序放入一个数组中。

例如,如果多项式是x 2 +3x + 1 ,则数组将为 [1, 3, 1]

让我们看一些例子:

示例 1:求多项式 x 2 +2x + 1 的根

Python3
# import numpy library
import numpy as np
  
  
# Enter the coefficients of the poly in the array
coeff = [1, 2, 1]
print(np.roots(coeff))


Python3
# import numpy library
import numpy as np
  
  
# Enter the coefficients of the poly 
# in the array
coeff = [1, 3, 2, 1]
print(np.roots(coeff))


Python3
# import numpy library
import numpy as np
  
  
# enter the coefficients of poly 
# in the array
p = np.poly1d([1, 2, 1])
  
# multiplying by r(or roots) to 
# get the roots
root_of_poly = p.r
print(root_of_poly)


Python3
# import numpy library
import numpy as np
  
  
# enter the coefficients of poly
# in the array
p = np.poly1d([1, 3, 2, 1])
  
# multiplying by r(or roots) to get 
# the roots
root_of_poly = p.r
print(root_of_poly)


输出:

[-1. -1.]

示例 2:求多项式 x 3 +3 x 2 + 2x +1 的根

Python3

# import numpy library
import numpy as np
  
  
# Enter the coefficients of the poly 
# in the array
coeff = [1, 3, 2, 1]
print(np.roots(coeff))

输出:

方法 2:使用 np.poly1D()

该函数有助于定义多项式函数。它使得在多项式上应用“自然运算”变得容易。多项式的系数将按相应的顺序放入一个数组中。

例如,对于多项式 x2 +3x + 1,数组将为 [1, 3, 1]

方法:

  • 在数组上应用函数np.poly1D() 并将其存储在变量中。
  • 通过将变量乘以根或 r(内置关键字)来查找根并打印结果以获得给定多项式的根

让我们看一些例子:

示例 1:求多项式 x 2 +2x + 1 的根

Python3

# import numpy library
import numpy as np
  
  
# enter the coefficients of poly 
# in the array
p = np.poly1d([1, 2, 1])
  
# multiplying by r(or roots) to 
# get the roots
root_of_poly = p.r
print(root_of_poly)

输出:

[-1. -1.]

示例 2:求多项式 x 3 +3 x 2 + 2x +1 的根

Python3

# import numpy library
import numpy as np
  
  
# enter the coefficients of poly
# in the array
p = np.poly1d([1, 3, 2, 1])
  
# multiplying by r(or roots) to get 
# the roots
root_of_poly = p.r
print(root_of_poly)

输出: