SymPy 定积分

8

我希望将以下方程式整合:

f(x) = 积分(E^(-i * omega * t)), 从 -aa.

我写了以下代码:

from sympy import *
from sympy.abc import a, omega, t

init_printing(use_unicode=False, wrap_line=False, no_global=True)


f = E**(-I * omega * t)    

integrate(f, (omega, -a, a))

但结果只是输入的定积分。当我将积分限制从0更改为I时,我得到了一个结果...有人知道如何从-aa获取解决方案吗?
提前感谢。
约翰
1个回答

11

Sympy不知道你对变量的所有假设,因此需要显式地告诉Sympy。例如,a应该是正数(因此是实数)。如果我告诉Sympy这一点,我就会得到一个好的答案。尝试:

Sympy并不知道您对变量所做的所有假设,因此需要明确告知。例如,a 应该是一个正数(因此是实数)。如果我将其告诉Sympy,则可以获得良好的结果。请尝试:

a = symbols('a', positive=True)

就在之前

integrate(f, (omega, -a, a))

确保您使用足够新的sympy版本。1.0对我有效。


就这样了!非常感谢! - John28

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接