关于RowReduce的问题。
mathematica吧
全部回复
仅看楼主
level 6
冉qx 楼主
In[30]:= RowReduce[{{1, l1, 0}, {l1, 0, l2}, {l2, 0, l1}}]
Out[30]= {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}
显然当(l1=l2)≠0时结果是错的。
正确答案应该为:
{{1,l1,1},{0,-l1,1},{0,0,0}}
要怎样才能得到正确的答案?
2021年01月08日 02点01分 1
level 6
冉qx 楼主
RowReduce在化简带有符号的矩阵的情况下经常出错。
2021年01月09日 14点01分 2
看来它假设所有符号表达式都不为零,包括l1-l2这样的
2021年01月09日 17点01分
level 6
冉qx 楼主
这个函数最近一次更新在1996年,功能不怎么完善。
2021年01月10日 10点01分 4
这倒是说明不了什么问题,因为有可能会偷偷更新。
2021年02月06日 04点02分
这个问题已经在版本13.3中解决了,增加了一个ZeroTest选项。
2023年12月30日 02点12分
@冉qx 这个说法不太对,实际上这个选项版本1就有,并且版本2时(至少对你给的这个例子)其行为就与现代一致了,只是没写进文档。并且这个选项性能其实很有限。(具体可在se搜索。)
2024年01月06日 04点01分
补了些截图和链接在6楼。
2024年01月06日 14点01分
吧务
level 15
首先申明这问题我没仔细研究过,但是SE有相关帖,参
《RowReduce for symbolic matricesAsk Question》(编号 29433 )
《How to solve this equation with rank relation of matrixAsk Question》(227929)
《How to write a more concise `RowReduce` function that can deal with symbolic matrix?》(228098)
可能还有别的吧,可以再仔细找找。
2021年02月06日 04点02分 5
吧务
level 15
就4楼楼中楼所说的内容做一下补充。
版本1时ZeroTest就在那儿了,只是行为和现在不太一样:
至少版本2.1起,(至少对于楼主这个例子)其行为就和现代版本一致了:
这个选项能做的事还是比较有限的,参:
mathematica.stackexchange.com/q/153702/1871
2024年01月06日 14点01分 6
1