gpt4 book ai didi

python - Sympy python 周长

转载 作者:太空宇宙 更新时间:2023-11-04 06:20:08 37 4
gpt4 key购买 nike

我需要显示一个圆周。为了做到这一点,我认为我可以为很多 x 计算 y 的两个值,所以我做了:

import sympy as sy
from sympy.abc import x,y
f = x**2 + y**2 - 1
a = x - 0.5
sy.solve([f,a],[x,y])

这就是我得到的:

Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/sympy/solvers/solvers.py", line 484, in
solve
solution = _solve(f, *symbols, **flags)
File "/usr/lib/python2.7/dist-packages/sympy/solvers/solvers.py", line 749, in
_solve
result = solve_poly_system(polys)
File "/usr/lib/python2.7/dist-packages/sympy/solvers/polysys.py", line 40, in
solve_poly_system
return solve_biquadratic(f, g, opt)
File "/usr/lib/python2.7/dist-packages/sympy/solvers/polysys.py", line 48, in
solve_biquadratic
G = groebner([f, g])
File "/usr/lib/python2.7/dist-packages/sympy/polys/polytools.py", line 5308, i
n groebner
raise DomainError("can't compute a Groebner basis over %s" % domain)
DomainError: can't compute a Groebner basis over RR

如何计算 y 的值?

最佳答案

对我有用;也许解决方案就像升级一样简单?

>>> import sympy
>>> sympy.__version__
'0.7.2'
>>> import sympy as sy
>>> from sympy.abc import x,y
>>> f = x**2 + y**2 - 1
>>> a = x - 0.5
>>> sy.solve([f,a],[x,y])
[(0.500000000000000, -0.866025403784439), (0.500000000000000, 0.866025403784439)]

[尽管如果我需要画圆或弧,我会使用 r cos(theta), r sin(theta) 来代替,这样更容易获得正确的点顺序。]

关于python - Sympy python 周长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12959432/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com