先检验 \sqrt(a+b \sqrt(c)) (其中a,b,c,x,y 均是整数), 是否可以表示成x+y \sqrt(c) ,如果可以,就做变换. 这几个Maple除了最后一个都能化简,mupad都能化简,
关于ComplexityFunction 的资料太少了
PS:
还有Mathematica9的Expand依旧很慢,下面这个都需要4分钟了,
Expand[(Sqrt + Sqrt + Sqrt + Sqrt + 1)^200] 这几个Maple除了最后一个都能化简,mupad都能化简,
关于ComplexityFunction 的资料太少了
PS:
还有Mathematica9的Expand依旧很慢,下面这个都需要4分钟了,
Expand[(Sqrt + Sqrt + Sqrt + Sqrt + 1) ...
chyanog 发表于 2012-12-17 14:51 http://bbs.emath.ac.cn/images/common/back.gif
关于Mathematica中带根式的表达式的展开计算很慢的问题(AAS不灵了),今天在stackexchange上得到一个不错的变通方法,expr = Sqrt + Sqrt + Sqrt + Sqrt + 1;
Nest &, 1, 200]这样和直接expand相比速度提升了千倍,和Maple的计算时间比较接近了。印象中mathematica中需要变通解决的例子都遇到好几个了(相应地,maple对这几个处理的就不错),这些变通的方法看起来并不难,却不是谁都能很快就想的到 几点新发现,还是不够通用,仅适用与部分情况
FullSimplify]]
FullSimplify]]
FullSimplify]]
FullSimplify],
ComplexityFunction -> (LeafCount &)]
(*Depth*)
rad = Sqrt];
roots = Roots, Extension -> Sqrt] == 0, x];
Roots, x]
(*靠猜测*)
Out:
Sqrt + x == Sqrt
x == Sqrt]
Sqrt + 2 x == Sqrt
1/2 (-Sqrt + Sqrt)
x == 1/2 (Sqrt + Sqrt)
还是觉得Mathematica根式表示比较另类,比如输入Sqrt/2,自动变成Sqrt,和同类软件都不一样 15# chyanog
可能Mathematica的全局变量\$Post 是Simplify, 而表达式的Simplify由ComplexityFunction 的默认值决定, 即LeafCount决定的。
试一下输入Sin,如果返回时1的话,那么\$Post 是FullSimplify 16# wayne
不过Sqrt/2和Sqrt的LeafCout都是7啊 [原创] 多项双重根号化简
https://bbs.emath.ac.cn/thread-5051-1-1.html chyanog 发表于 2013-2-27 16:52
16# wayne
不过Sqrt/2和Sqrt的LeafCout都是7啊
是我的问题/ 现在有新的解释吗,:lol
页:
1
[2]