在正实数中反转函数

时间:2019-06-06 12:57:32

标签: python python-3.x sympy

因此,我尝试采用某个函数的逆函数,然后再对其进行区分。我只对积极的实际领域中的解决方案感兴趣。这里有一个子问题,该问题就是如何将指数作为一些示例:

如果我输入x^2 = u,我希望它给我u^(1/2)

如果我给它u=logx,我希望它给我指数u。等等,

有没有简单的方法可以做到这一点?问题是它返回了太多的解决方案,是否有办法只删除否定的解决方案?

from sympy import *
x, b, a, u, t, dt, dW = symbols('x b a u t dt dW', real = True)
utility = Eq(x**2, u)
invutility = solveset(utility, x)

哪个给:

{-sqrt(u), sqrt(u)}

我只对积极的解决方案感兴趣。

1 个答案:

答案 0 :(得分:1)

如果您将变量声明为正数,

solve将为您提供以下解决方案:

>>> x, u = var('x u',positive=True)
>>> utility = Eq(x**2, u)
>>> solve(utility,x)
[sqrt(u)]
>>> solve(u-log(x),x)
[exp(u)]