首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python中指数函数的分解

python中指数函数的分解
EN

Stack Overflow用户
提问于 2019-07-21 11:12:02
回答 2查看 217关注 0票数 2

我试图把python中的指数函数分开。

代码语言:javascript
运行
复制
import sympy as sym
from sympy.abc import t
from sympy import exp

u = (3*(exp(4*t) - 1)*exp(-4*t))/4
apart = sym.apart(u, t)
print(apart)

但我知道错误是:

exp(4*t)包含一组生成器的元素。

EN

回答 2

Stack Overflow用户

发布于 2019-07-23 04:15:36

它看起来像是exp()混淆了它。为了解决问题

代码语言:javascript
运行
复制
import sympy as sym
from sympy.abc import t,z
from sympy import exp

u = (3*(exp(4*t) - 1)*exp(-4*t))/4
expr = sym.apart(u.subs(exp(t),z), z)
expr = expr.subs(z,exp(t))

这给

代码语言:javascript
运行
复制
Out[3]: 3/4 - 3*exp(-4*t)/4

在conda上使用3.7

票数 1
EN

Stack Overflow用户

发布于 2019-07-23 09:02:06

您的表达式在exp(T)方面是一个单变量的有理函数:

代码语言:javascript
运行
复制
>>> u.subs(exp(t),y)
3*(y**4 - 1)/(4*y**4)
>>> apart(_)
3/4 - 3/(4*y**4)
>>> _.subs(y, exp(t))
3/4 - 3*exp(-4*t)/4

但是SymPy可以处理这样的非符号生成器,因此对于这样的表达式,sym.apart(u)会给出与上面所示的结果相同的结果。当您说生成器是t时,它检测到exp(t)并引发错误,因为像t + exp(t)这样的表达式有两个依赖于t的生成器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57132637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档