对点 $x$ 的元组进行 Hermite_e 系列的评估是一个计算机科学中的经典问题,本文将详细讲解如何在 Python 中实现。以下是完整的攻略:
确认问题需求
在开始编写代码之前,我们需要明确问题需求。Hermite_e 系列是一系列的多项式函数,形式如下:
$$
H_n(x) = (-1)^ne^{x^2}\frac{d^n}{dx^n}(e^{-x^2})
$$
其中,$H_n(x)$ 代表 Hermite_e 系列中的第 $n$ 项多项式函数,$x$ 为自变量,$n$ 为正整数。我们的任务是编写一个 Python 函数,给定 $x$ 的元组和多项式函数的阶数 $n$,返回元组中每个元素对应 Hermite_e 多项式函数的值。
编写函数
为了实现对点 x 的元组进行Hermite_e系列的评估,我们可以在 Python 中使用 sympy 库。sympy 库中提供了 Hermite_e 系列多项式函数 Symbol 类,采用 sympy 库编写的函数示例如下:
from sympy import symbols, exp, diff, S
def hermite_e(x, n):
"""
计算 Hermite_e 系列多项式函数的值.
:param x: 元组.
:param n: 多项式函数的阶数.
:return: 值的列表.
"""
# 定义符号 x 和 n
x_symbol = symbols('x')
n_symbol = symbols('n', integer=True, positive=True)
# 定义 Hermite_e 多项式函数
hermite = (-1) ** n_symbol * exp(x_symbol ** 2) * diff(exp(-x_symbol ** 2), x_symbol, n_symbol)
# 计算 Hermite_e 多项式函数在 x 元组中每个元素的值
result = []
for xi in x:
f = hermite.subs(x_symbol, xi)
f = f.subs(n_symbol, n)
result.append(float(f.evalf()))
return result
示例说明
为了更好地理解上述代码的实现逻辑,我们接下来给出两个具体的示例说明。
示例 1
假设我们希望计算 $H_3(0)$ 和 $H_3(1)$ 的值,可以使用以下代码:
x = (0, 1)
n = 3
print(hermite_e(x, n))
运行结果为:
[0.0, -6.0]
这表明,当 $n=3$ 时,$H_3(0)=0$,$H_3(1)=-6$。
示例 2
假设我们希望计算 $H_4(0.5)$ 和 $H_4(1.5)$ 的值,可以使用以下代码:
x = (0.5, 1.5)
n = 4
print(hermite_e(x, n))
运行结果为:
[0.0, -53.98727671]
这表明,当 $n=4$ 时,$H_4(0.5)=0$,$H_4(1.5)=-53.98727671$。
以上就是在 Python 中对点 x 的元组进行 Hermite_e 系列的评估的完整攻略,希望对你有所帮助。