【问题标题】:Evaluation of a Chebyshev polynomial切比雪夫多项式的评估
【发布时间】:2019-11-20 16:16:35
【问题描述】:

我需要构造一个函数,为我提供任何切比雪夫多项式在某一点的值。我有一个函数可以将 Legendre 多项式作为

def legendre_Pn(K, x):

    p0 = N.array(1.0)
    p1 = N.array(x)

    if K==0:
        return p0
    elif K==1:
        return p1
    else:
        for n in range(2,K+1):
            pn = (2*n-1)*x*p1/n-(n-1)*p0/n
            p0 = p1
            p1 = pn
        return pn

但是,由于 Chebyshev 不是使用前两个计算的,而是使用前一个计算的,这可以在 https://en.wikipedia.org/wiki/Chebyshev_polynomials 中看到,所以我不能像以前的代码那样做。我找到了以下函数https://docs.scipy.org/doc/numpy/reference/generated/numpy.polynomial.chebyshev.chebval.html#numpy.polynomial.chebyshev.chebval,但我认为它不能满足我的需要。

【问题讨论】:

    标签: python function math scipy polynomial-math


    【解决方案1】:

    您可以为此使用mpmath.chebyt(n, x),其中n 是指您要评估的切比雪夫多项式,x 是您要评估它的点。

    返回值是类mpf,一个真正的浮点数。更多详情请见here

    示例用法:

    >>> chebyt(4, 0.5)
    mpf('-0.5')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-22
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多