scipy.special.gegenbauer¶
- scipy.special.gegenbauer(n, alpha, monic=False)[源代码]¶
格根鲍尔(超球)多项式。
定义为
\[(1-x^2)\frac{d^2}{dx^2}C_n^{(\alpha)} -(2\alpha+1)x\frac{d}{dx}C_n^{(\alpha)} +n(n+2\alpha)C_n^{(\alpha)}=0\]为 \(\alpha > -1/2\) ; \(C_n^{{(\alpha)}}\) 是一次多项式 \(n\) 。
- 参数
- n集成
多项式的次数。
- alpha浮动
参数,必须大于-0.5。
- monic布尔值,可选
如果 True ,将前导系数缩放为1,默认值为 False 。
- 退货
- C正交1d
格根鲍尔多项式。
注意事项
多项式 \(C_n^{{(\alpha)}}\) 是正交的吗? \([-1,1]\) 带权重函数 \((1 - x^2)^{{(\alpha - 1/2)}}\) 。
示例
>>> from scipy import special >>> import matplotlib.pyplot as plt
我们可以初始化一个变量
p
作为Gegenbauer多项式使用gegenbauer
函数并在一点求值x = 1
。>>> p = special.gegenbauer(3, 0.5, monic=False) >>> p poly1d([ 2.5, 0. , -1.5, 0. ]) >>> p(1) 1.0
评估
p
在不同的点上x
在间隔时间内(-3, 3)
,只需传递一个数组x
至p
具体如下:>>> x = np.linspace(-3, 3, 400) >>> y = p(x)
然后我们就可以想象
x, y
使用matplotlib.pyplot
。>>> fig, ax = plt.subplots() >>> ax.plot(x, y) >>> ax.set_title("Gegenbauer (ultraspherical) polynomial of degree 3") >>> ax.set_xlabel("x") >>> ax.set_ylabel("G_3(x)") >>> plt.show()