在Python中使用NumPy计算切比雪夫级数的根值
本文将讨论如何在NumPy中使用Python计算切比雪夫数列的根。
切比雪夫多项式在近似理论中很重要,这些切比雪夫多项式从未正式生成。在所有的计算中只需要系数。如果我们想计算一个多项式的根,我们必须使用Python中NumPy模块的chebyshev.chebroots()方法,该方法返回一个包含根系列的数组。如果所有的根都是实数,那么返回的就是实数;否则就是复数。c参数是一个一维的系数数组。
语法: chebyshev.chebroots((integers))
- 整数是由逗号分隔的数字序列。
返回:
它将返回一个由给定的整数系列的根组成的数组。如果所有的根都是实数,那么输出也是实数,否则输出是复数。
示例 1
在这个例子中,我们将导入Chebyshev模块,用5个整数创建正则数列,并得到根、数据类型和形状。
# import chebyshev from numpy.polynomials
# module
from numpy.polynomial import chebyshev
# get the roots for normal numbers
print(chebyshev.chebroots((-1, 0, 1, 2, 3)))
# get the data type
print(chebyshev.chebroots((-1, 0, 1, 2, 3)).dtype)
# get the shape
print(chebyshev.chebroots((-1, 0, 1, 2, 3)).shape)
输出:
[-0.96766052 -0.39810338 0.11832406 0.9141065 ]
float64
(4,)
示例 2
在这个例子中,我们将导入Chebyshev模块,用2个数据创建复数,并获得根、数据类型和形状。
# import chebyshev from numpy.polynomials
# module
from numpy.polynomial import chebyshev
# import complex math module
import cmath
# get the roots for complex numbers
print(chebyshev.chebroots((complex(1, 2),
complex(2, 3))))
# get the shape
print(chebyshev.chebroots((complex(1, 2),
complex(2, 3))).shape)
# get the data type
print(chebyshev.chebroots((complex(1, 2),
complex(2, 3))).dtype)
输出:
[-0.61538462-0.07692308j]
(1,)
complex128