Sympy solve()和solve_poly_system()

2024-05-02 15:09:58 发布

您现在位置:Python中文网/ 问答频道 /正文

首先

solve_poly_system( seq, *gens, **args),

有人知道solve-fu-poly-yu系统的论点是什么意思吗?在

我有这个系统

^{pr2}$

其中r,u,k为已知,a,d,λ为变量。在

当我使用solve(system,[a,d,λ])时,我得到了误差

NotImplementedError: only zero-dimensional systems supported (finite number of solutions)

此错误在文件中引发

/usr/lib/python2.7/dist-packages/sympy/solvers/polysys.py", line 148, in solve_reduced_system

当我使用solve_poly_system(system,[a,d,λ])时,一切正常。在

如我所见,solve()和solve_poly_system()最终都使用相同的函数来求解系统。对于非双二次函数,这个函数是solve_generic(polys,opt),然后是_solve_reduced_system(system,gens,entry=False)

有人能解释一下为什么会这样吗?在

我想使用solve(),因为我只对正解感兴趣,所以我想使用'force'标志。在


Tags: 函数系统argssystemseq误差solvepoly
1条回答
网友
1楼 · 发布于 2024-05-02 15:09:58

我解决了我的问题。在

首先,在Mateusz Paprocki的推荐之后,我从master安装了sympy。这解决了solve()的问题

经过一番努力,我发现我的程序依赖于某些输入文件的读取顺序。这导致solve()和solve_poly_system()同时退出

NotImplementedError: only zero-dimensional systems supported (finite number of solutions)

当我改变读取输入文件的顺序时。在

更具体地说,我正在使用hadoop1.0.2流媒体。我正在阅读一些文件,每个文件都有一个具体的,不同的内容和结构。这总的内容给出了一个线性系统经过一些操作与sypy模块。问题就在这里。在

Hadoop流不以任何特定的顺序读取输入文件。为此,在一起解析不同的文件时必须小心。我的“解析器”期望输入文件按一定的顺序排列。当顺序不同时,文件的操作已经给出了一个错误的系统来解决。因此,solve()、solve\u poly\u system()引发了NotImplementedError。解决这个问题的方法是修复我的“解析器”。在

最后,我使用solve_poly_system(seq,*gens,**args)的论点,他们的意思是

  • seq=sequence,等于0的一系列方程。在我的 案例,序列是一个列表

  • *gens=在我的例子中,是一个变量列表。根据这些变量,我解出了我的系统。

相关问题 更多 >