使用求和指数作为推导的顺序

时间:2017-03-31 13:58:02

标签: python sympy calculus

给定一些函数f,我想用sympy计算以下总和:

$\sum\limits _{i=0}^{n}\dfrac{d^{i}}{dx^{i}}f$

一般来说,我想使用求和的索引作为函数的区分顺序,但我无法找到如何使用sympy来完成它。

3 个答案:

答案 0 :(得分:2)

鉴于n是您事先知道的int,您可以构建一个函数:

from sympy import diff

def sum_diff_order(f,x,n):
    g = 0
    for i in range(n+1):
        g += diff(f,x,i)
    return g

因此,如果您将f作为x**10n=5,我们会得到:

>>> x = symbols('x')
>>> f = x**10
>>> sum_diff_order(f,x,5)
x**10 + 10*x**9 + 90*x**8 + 720*x**7 + 5040*x**6 + 30240*x**5

答案 1 :(得分:2)

import sympy as sp

x = sp.symbols('x')
f = sp.Function('f')

n = 2
sum([f(x).diff(x,i) for i in range(n+1)])
  

f(x) + Derivative(f(x), x) + Derivative(f(x), x, x)

答案 2 :(得分:0)

如果n是已知整数,则可以使用Add(*[diff(f(x), x, i) for i in range(n+1)])之类的内容。对于符号n或无穷大,它还不可能,因为no way yet代表符号顺序的衍生物。