首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sympy包解题()没有给出root(x,3)的所有解决方案。

Sympy包解题()没有给出root(x,3)的所有解决方案。
EN

Stack Overflow用户
提问于 2018-04-22 23:29:11
回答 1查看 89关注 0票数 2

我使用了渐近包并解()来得到方程的根,其中

代码语言:javascript
复制
 solve(x-root(4*x,3),x)

只给出0和2的结果,但是(所有)解可以通过手动简化为

代码语言:javascript
复制
 solve(x**3-4*x,x)

为0,2,-2。

我的问题是,为什么使用根(x,3)没有给出所有的解决方案?它到底是如何工作的/(确定它有所有的解决方案)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-23 00:09:30

数学上,n根是一个多值函数.根函数文档说:

root(x, n, k)返回x的第k个n根,默认为主根(k=0).

您可以通过传入参数k获得其他根,如下所示:

代码语言:javascript
复制
[solve(x-root(4*x, 3, k), x) for k in range(3)]

返回[[0, 2], [-2, 0], [0]]

或者,一套所有的解决方案,

代码语言:javascript
复制
from itertools import chain
set(chain.from_iterable([solve(x-root(4*x, 3, k),x) for k in range(3)]))

{-2, 0, 2}检查结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49971678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档