Python相当于Mathematica" LaguerreL"

时间:2016-06-07 15:14:28

标签: python-2.7 wolfram-mathematica

我试图绘制一个函数,其中包含一个带广义Laguerre多项式的项。我知道Mathematica可以使用LaguerreL [n,a,f(x,y)],但我不确定python等价物是什么。我正在尝试scipy.special.genlaguerre(n,a,(f(x,y)),使用x和y作为numpy.arange数组,我想要绘制的值。但我一直在以下错误:

具有多个元素的数组的真值是不明确的。使用a.any()或a.all()

所以我有两个问题:1)我使用special.genlaguerre是否正确? (我想是的)

2)如何修复numpy在这里生成的真值?错误?

1 个答案:

答案 0 :(得分:0)

Laguerre多项式仅依赖于一个变量。您想在x,y位置评估它。在您的问题中,您需要的一个变量可能是原点r的半径。

scipy.special.genlaguerre indeeds生成广义laguerre多项式。它返回一个np.poly1d函数。要对一系列数字进行评估:

rs = np.linspace(0,10)
scipy.special.genlaguerre(1, 0)(rs)

在您的问题中,您尝试将{(x,y)作为monic参数提供给genlaguerre

如果您需要以非常高的精度评估此多项式,请阅读: Laguerre polynomials in python using scipy, lack of convergence?