将赫米特数列转换为多项式,可以使用Python的SymPy库来进行计算。下面是详细的攻略:
步骤1:导入SymPy库
在Python中导入SymPy库,代码如下:
from sympy import *
步骤2:定义符号
定义符号以便在SymPy中使用。这里定义符号t
和n
分别表示变量和指数。
t, n = symbols('t n')
步骤3:定义赫米特多项式公式
根据赫米特数列的递推公式,定义赫米特多项式的生成公式:
hermite_poly = Function('H')(n, t).diff(t, 2) - 2 * t * Function('H')(n, t).diff(t) + 2 * n * Function('H')(n, t)
步骤4:求解赫米特多项式
使用SymPy的dsolve函数求解赫米特多项式,代码如下:
hermite_eq = Eq(hermite_poly, 0)
hermite_solutions = dsolve(hermite_eq)
通过dsolve得到的hermite_solutions为SymPy自动生成的赫米特多项式通解的表达式。
步骤5:输出赫米特多项式
根据步骤4求得的解,输出赫米特多项式。这里以n=0和n=1两种情况为例进行说明。
首先定义一个函数hermite
用来输出赫米特多项式:
def hermite(n):
solution = hermite_solutions.rhs
solution = solution.subs(n, n)
solution = solution.subs(Function('H')(0, t), 1)
solution = solution.subs(Function('H')(1, t), 2*t)
return solution
在函数中,将hermite_solutions
变量中的通解表达式赋值给变量solution
。然后,使用subs
函数将通解表达式中的n
符号替换为参数n
。最后使用subs
函数将赫米特多项式中的H(0,t)
和H(1,t)
分别替换为1和2t,即赫米特数列的前两项。最后输出替换后的多项式,即为赫米特多项式。
调用函数hermite
输出n=0和n=1的赫米特多项式的代码如下:
print("H_0(t) = ", hermite(0))
print("H_1(t) = ", hermite(1))
输出结果为:
H_0(t) = 1
H_1(t) = 2*t
以上就是在Python中把赫米特数列转换为多项式的完整攻略。