首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >系数应该是整数:渐近丢番图方程

系数应该是整数:渐近丢番图方程
EN

Stack Overflow用户
提问于 2014-03-15 00:08:27
回答 1查看 716关注 0票数 2

我有一个多项式(由矩阵的特征多项式生成),我想解决整数解

代码语言:javascript
复制
import sympy
from sympy.solvers.diophantine import diop_linear

M = sympy.Matrix([[0,1,1],[1,0,1],[1,1,0]])
p = M.charpoly()

这个多项式显然是整数根的因式:

代码语言:javascript
复制
print p.factor()
# (_lambda - 2)*(_lambda + 1)**2

但是,在使用diop_linear(p)时,输入多项式应为整数系数类型。尽管查阅了文档,但我不确定如何使用渐近0.75来实现这一点。回溯是:

代码语言:javascript
复制
Traceback (most recent call last):
  File "test.py", line 8, in <module>
    diop_linear(p)
  File "/usr/local/lib/python2.7/dist-packages/sympy/solvers/diophantine.py", line 365, in diop_linear
    var, coeff, diop_type = classify_diop(eq)
  File "/usr/local/lib/python2.7/dist-packages/sympy/solvers/diophantine.py", line 232, in classify_diop
    raise TypeError("Coefficients should be Integers")
TypeError: Coefficients should be Integers
EN

回答 1

Stack Overflow用户

发布于 2014-03-28 08:54:56

该错误消息显然是不正确的。问题是,diop_linear只适用于线性丢番图方程(对于单变量方程就不那么有趣了)。如果你只想解一个单变量方程,那就使用solve

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

https://stackoverflow.com/questions/22410258

复制
相关文章

相似问题

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