gpt4 book ai didi

python - 是否可以强制 SymPy 计算积分,或者告诉我为什么它无法计算积分?

转载 作者:太空宇宙 更新时间:2023-11-03 19:47:51 27 4
gpt4 key购买 nike

我正在尝试计算分段函数的积分,特别是拉普拉斯变换。

w_k = k*t, 0 <= t <= 1/k
1, otherwise

所以我尝试将其集成如下:

from sympy import *
t, k = symbols('t k', positive=True)
w_k = Piecewise((k*t, (0 <= t)&(t <= 1/k)), (1, True))

integrate(w_k * exp(-s*t), (t, 0, oo)).doit()
Out:


⎮ ⎧ -s⋅t 1
⎮ ⎪k⋅t⋅ℯ for t ≤ ─
⎮ ⎪ k
⎮ ⎨ dt
⎮ ⎪ -s⋅t
⎮ ⎪ ℯ otherwise
⎮ ⎩

0

使用 laplace_transform 给出了相同的结果。

我知道有时需要满足某些条件才能通过 SymPy 集成该函数,但我真的不确定该函数除了正变量之外还需要什么。有没有办法强制 SymPy 计算积分,或者解释为什么它不可能?

最佳答案

试试这个:

import math
from sympy import *
s = Symbol('s', positive=True)
t = Symbol('t', positive=True)
k = Symbol('k', positive=True)
function = Piecewise((k*t, (0 <= t)&(t <= 1/k)), (1, True))
result = integrate(function * exp(-s*t), (t, 0, math.inf))

输出:

k/s**2 + exp(-s/k)/s + (-k - s)*exp(-s/k)/s**2

关于python - 是否可以强制 SymPy 计算积分,或者告诉我为什么它无法计算积分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60019941/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com