Python 辛解的精确解
有没有办法过滤Symphy solve,只返回精确解而不返回表达式 榜样Python 辛解的精确解,python,sympy,solver,Python,Sympy,Solver,有没有办法过滤Symphy solve,只返回精确解而不返回表达式 榜样 将sympy作为sp导入 x、 y=sp.var('x,y',real=True); l1、l2、l3=sp.symbols('\lambda\u 1、\lambda\u 2、\lambda\u 3',real=True) f=x**(sp.Rational(1/3))*y**(sp.Rational(2/3))#定义函数 c=[x+y-1,-x,-y] L=f-l1*c[0]-l2*c[1]-l3*c[2] gradL=
将sympy作为sp导入
x、 y=sp.var('x,y',real=True);
l1、l2、l3=sp.symbols('\lambda\u 1、\lambda\u 2、\lambda\u 3',real=True)
f=x**(sp.Rational(1/3))*y**(sp.Rational(2/3))#定义函数
c=[x+y-1,-x,-y]
L=f-l1*c[0]-l2*c[1]-l3*c[2]
gradL=sp.Matrix([sp.diff(L,c)表示L.free_符号中的c])
固定点=sp.solve(梯度,L.free符号,dict=真)
解决返回:
[{\lambda_1:\lambda_3+0.666666 7*x**(1/3)/y**(1/3),
\lambda_2:\lambda_3+0.666666 7*x**(1/3)/y**(1/3)-0.333333*y**(2/3)/x**(2/3)}]
Wereas我会喜欢空字典,因为这个解决方案不是精确的,而是表达式
我搜索了Symphy文档,但没有找到任何东西。检测方程组的线性子集并根据其解做出决策的能力是一个公开的Symphy问题。对于您的情况,您可以通过请求
manual=True
来帮助系统,这将提供[]
作为解决方案。您可能希望使用Rational(1,3)
和Rational(2,3)
来创建Rational指数。