迭代多项式乘法— Python中的Chebyshev多项式

|| 我的问题是:Python中迭代多项式乘法的最佳方法是什么? 我认为一个有趣的项目是用Python编写一个函数,以生成给定度数的Chebyshev多项式的每个项的系数和指数。生成这样的多项式(由Tn(x)表示)的递归函数为:
With:
T0(x)= 1
and
T1(x)= x: Tn(x)= 2xTn-1(x)-Tn-2(x) 到目前为止,我所获得的并不是很有用,但是我很难将自己的大脑包在如何实现这一目标上。我想发生的事情如下:
>> chebyshev(4)
[[8,4], [8,2], [1,0]]
此列表表示4级的Chebyshev多项式:     T4(x)= 8x4-8x2 + 1
import sys
def chebyshev(n, a=[1,0], b=[1,1]):
    z = [2,1]
    result = []
    if n == 0:
        return a
    if n == 1:
        return b
    print >> sys.stderr, ([z[0]*b[0], 
                           z[1]+b[1]],
                          a) # This displays the proper result for n = 2
    return result
我在网上找到的一种解决方案不起作用,所以我希望有人能提供一些帮助。 ps。有关切比雪夫多项式的更多信息:CSU Fullteron,维基百科-切比雪夫多项式。它们非常酷/有用,并将一些非常有趣的三角函数/属性捆绑在一起;值得一读。     
已邀请:
SciPy具有Chebyshev的实现 http://www.scipy.org/doc/api_docs/SciPy.special.orthogonal.html 我建议看看他们的代码。     
切比雪夫的最佳实现是:
// Computes T_n(x), with -1 <= x <= 1
real T( int n, real x )
{
  return cos( n*acos(x) ) ;
}
如果您针对其他实现(包括显式多项式求值和迭代计算递归关系)进行测试,则实际上这同样快。自己尝试。 通常: 显式多项式评估是最糟糕的(对于较大的n) 递归评估好一点 余弦评估是最好的     

要回复问题请先登录注册