Sympy - 限制参数约束

时间:2017-03-17 18:25:13

标签: python-3.x limit jupyter-notebook sympy

我尝试用一​​个参数约束来计算函数的极限。不幸的是,我陷入了参数约束。

我使用以下代码,其中0< alpha<应该假设1

import sympy
sympy.init_printing()
K,L,alpha = sympy.symbols("K L alpha")
Y = (K**alpha)*(L**(1-alpha))
sympy.limit(sympy.assumptions.refine(Y.subs(L,1),sympy.Q.positive(1-alpha) & sympy.Q.positive(alpha)),K,0,"-")

然而,这不起作用。是否有可能像Mathematica那样处理假设?

最好,谢谢你, 费边

1 个答案:

答案 0 :(得分:3)

据我所知,假设模块所做的假设尚未被SymPy的其余部分所理解。但limit可以理解imposed at the time a symbol is created的假设:

K, L = sympy.symbols("K L")
alpha = sympy.Symbol("alpha", positive=True)
Y = (K**alpha)*(L**(1-alpha))
sympy.limit(Y.subs(L, 1), K, 0, "-")

现在限制为0.

没有办法将符号声明为0到1之间的数字,但是可以通过声明一个正符号来解决这个问题,比如t,并让L = t / (1 + T)。