我是python的新手。如果我想要L(n,a,x),其中L是一般拉盖尔多项式,那么我可以简单地使用
from scipy.special import genlaguerre
print(genlaguerre(n, a))
然而,由于在genlaguerre函数中没有明确的变量依赖,因此我无法获得类似L(n,a,2 pi x)的内容。
答案 0 :(得分:2)
genlaguerre(n, a)
返回的对象是可调用的;你称之为在给定的x
评估它。
例如,
In [71]: import numpy as np
In [72]: import matplotlib.pyplot as plt
In [73]: from scipy.special import genlaguerre
In [74]: n = 3
In [75]: alpha = 4.5
In [76]: L = genlaguerre(n, alpha)
要在x
获取多项式的值,请致电L(x)
:
In [77]: L(0)
Out[77]: 44.6875
In [78]: L(1)
Out[78]: 23.895833333333332
In [79]: L([2, 2.5, 3])
Out[79]: array([ 9.60416667, 4.58333333, 0.8125 ])
In [80]: x = np.linspace(0, 14, 100)
In [81]: plt.plot(x, L(x))
Out[81]: [<matplotlib.lines.Line2D at 0x11cde42b0>]
In [82]: plt.xlabel('x')
Out[82]: <matplotlib.text.Text at 0x11cddc4a8>
In [83]: plt.ylabel('$L_{%d}^{(%g)}(x)$' % (n, alpha))
Out[83]: <matplotlib.text.Text at 0x11cdce320>
In [84]: plt.grid()
以下是上述代码生成的图: