是否可以让一个符号变量是一个特定区间的元素?



我试图解决一些包含绝对值的不等式,我想使用sympy使我的生活更容易一些。

给定的变量要遵循一些条件,例如:

Let x be element of [-1, 0). Find the zero point of `f(x) = |-2.5x^3-3x^2-0.5x|`

其中|...|表示绝对值。

我试过不同的东西,比如:

import sympy as sp
x = sp.Symbol('x', real=True)
i = sp.Interval.Ropen(-1, 0)
f = sp.Abs(-2.5*x**3 - 3*x**2 - 0.5*x)
print(sp.imageset(x, f, i))

显然imageset函数在绝对值上存在一些问题。我也不知道imageset是正确的功能。

是否有这样的方法:

import sympy as sp
i = sp.Interval.Ropen(-1, 0)
x = sp.Symbol('x', real=True, element_of=i)
f = sp.Abs(-2.5*x**3 - 3*x**2 - 0.5*x)
print(sp.solve(f))

打印一组解决方案??

如果你试图得到正解或负解,给你的变量一个假设,并使用solve:

>>> x = Symbol('x', negative=True)
>>> solve(x**2 - 1)
[-1]

如果你真的想指定一个不只是正负的域/间隔,那么将该间隔传递给solveset:

>>> solveset((x-3)**2-1,x)
{2, 4}
>>> solveset((x-3)**2-1,x,Interval(1,3))
{2}

相关内容

  • 没有找到相关文章

最新更新