首页 > 解决方案 > 如何在 sympy 中使用和表达微分运算符?

问题描述

我试图理解 sympy 并且在表达和/或使用各种 Rodrigues 类型的公式时遇到了麻烦。我试图表达的例子:

# x - variable
# n - integer
# H - Hermite polynomials
# E - exponential function "e**x"
# D - differential operator of x

assert H(n,x) == (-1)**n*E(x**2)*D**n*E(-x**2)
assert H(n,x) == (E(-D**2)*x**n)(2*x)

一般来说,这似乎是一个整体问题,即在多项式上表达微分算子和/或线性算子。如何在 sympy 中创建无限阶微分算子?如何比较运营商?是否有运算符简化的符号?例如,一般来说,我们知道

assert E(t*D)*f(x) == f(x+t)

sympy 是否有能力将这个微分算子表达和简化为线性移位算子?或者至少,要知道他们是平等的?

标签: pythonsympydifferential-equationspolynomials

解决方案


推荐阅读