我有一些中等大小的整数矩阵(几百行)。我需要求解Ax = b
形式的方程式,其中b
是标准基矢量,A
是我的矩阵之一。我一直在使用numpy.linalg.lstsq
来实现此目的,但舍入错误最终会变得非常重要。
如何进行精确的符号计算?
(PS我真的不需要代码有效;我更关心编码的简易性。)
答案 0 :(得分:2)
如果您唯一的选择是使用用python编写的免费工具,sympy可能会有效,但使用mathematica可能更简单。
答案 1 :(得分:1)
请注意,如果你认真对待你的评论,你需要你的解决方案向量是整数,那么你正在寻找一个叫做“整数最小二乘问题”的东西。这被认为是NP难的。有一些启发式解算器,但都变得非常复杂。
答案 2 :(得分:0)
mpmath库支持任意精度浮点数,并支持矩阵代数:http://mpmath.googlecode.com/svn/tags/0.17/doc/build/matrices.html
然后使用sympy
进行精确计算是第二种选择。