在使用Eliminate函数时,未知数位置不同,导致结果不同?
mathematica吧
全部回复
仅看楼主
level 1
如图:两个函数的区别仅仅在于红圈中未知数的位置不同,但是这种会导致最终结果不同,请问这是为什么呢?
函数纯文本分别为:
Eliminate[{a-Subscript[c, 1]-Subscript[q, xj]-2 Subscript[q, yi]-Subscript[q, yj]-Subscript[w, xi]-2 Subscript[q, xi]==0,a-Subscript[c, 1]-Subscript[q, yj]-2 Subscript[q, xi]-Subscript[q, xj]-Subscript[w, yi]-2 Subscript[q, yi]==0,a-Subscript[c, 2]-Subscript[q, xi]-2 Subscript[q, yj]-Subscript[q, yi]-Subscript[w, xj]-2 Subscript[q, xj]==0,a-Subscript[c, 2]-Subscript[q, yi]-2 Subscript[q, xj]-Subscript[q, xi]-Subscript[w, yj]-2 Subscript[q, yj]==0,1/4 (Subscript[c, m]+Subscript[q, xi]+2 Subscript[q, xj]-3 Subscript[q, yi]+2 Subscript[q, yj]-2 Subscript[w, xi]+Subscript[w, xj])==0,1/4 (Subscript[c, m]+Subscript[q, xj]+2 Subscript[q, xi]-3 Subscript[q, yj]+2 Subscript[q, yi]-2 Subscript[w, xj]+Subscript[w, xi])==0,1/4 (Subscript[c, m]+Subscript[q, yi]+2 Subscript[q, yj]-3 Subscript[q, xi]+2 Subscript[q, xj]-2 Subscript[w, yi]+Subscript[w, yj])==0,1/4 (Subscript[c, m]+Subscript[q, yj]+2 Subscript[q, yi]-3 Subscript[q, xj]+2 Subscript[q, xi]-2 Subscript[w, yj]+Subscript[w, yi])==0},{Subscript[q, yj],Subscript[q, yi],Subscript[w, yj],Subscript[w, yi],Subscript[w, xi],Subscript[w, xj]}]
Eliminate[{a-Subscript[c, 1]-Subscript[q, xj]-2 Subscript[q, yi]-Subscript[q, yj]-Subscript[w, xi]-2 Subscript[q, xi]==0,a-Subscript[c, 1]-Subscript[q, yj]-2 Subscript[q, xi]-Subscript[q, xj]-Subscript[w, yi]-2 Subscript[q, yi]==0,a-Subscript[c, 2]-Subscript[q, xi]-2 Subscript[q, yj]-Subscript[q, yi]-Subscript[w, xj]-2 Subscript[q, xj]==0,a-Subscript[c, 2]-Subscript[q, yi]-2 Subscript[q, xj]-Subscript[q, xi]-Subscript[w, yj]-2 Subscript[q, yj]==0,1/4 (Subscript[c, m]+Subscript[q, xi]+2 Subscript[q, xj]-3 Subscript[q, yi]+2 Subscript[q, yj]-2 Subscript[w, xi]+Subscript[w, xj])==0,1/4 (Subscript[c, m]+Subscript[q, xj]+2 Subscript[q, xi]-3 Subscript[q, yj]+2 Subscript[q, yi]-2 Subscript[w, xj]+Subscript[w, xi])==0,1/4 (Subscript[c, m]+Subscript[q, yi]+2 Subscript[q, yj]-3 Subscript[q, xi]+2 Subscript[q, xj]-2 Subscript[w, yi]+Subscript[w, yj])==0,1/4 (Subscript[c, m]+Subscript[q, yj]+2 Subscript[q, yi]-3 Subscript[q, xj]+2 Subscript[q, xi]-2 Subscript[w, yj]+Subscript[w, yi])==0},{Subscript[q, yi],Subscript[q, yj],Subscript[w, yj],Subscript[w, yi],Subscript[w, xi],Subscript[w, xj]}]
请问这是为什么呢?
2022年03月26日 11点03分 1
吧务
level 15
这个例子有意思。顺便说一句如果改用 GroebnerBasis 是没这问题的:
再顺便,Daniel Lichtblau(Wolfram公司员工)在SE帖子《How to guide Eliminate or GroebnerBasis to reduce a set of simple odes to a single ode (which can be done by Laplace Transform)》(编号261682)下面提到过:
Re Eliminate vs GroebnerBasis. The former is built on some really old code infrastructure, the latter is more modern albeit also perhaps in need of refinement at this point. There are some subtleties that make it nontrivial to rewrite Eliminate using GroebnerBasis, so I just try to promote the one and downplay the other.
2022年04月01日 16点04分 2
好的,谢谢你
2022年04月02日 02点04分
吧务
level 10
想起了一个有点关系但关系不大的情况:
有时符号所用的字母之间的标准序也会影响结果,如{x,y}与{z,y}不同
2022年04月02日 04点04分 3
1