其实在Mathematica中,大部分的化简都可以使用函数Simplify
,FullSimplify
来完成。但是有的式子却不能化简,比如下面的这个式子:
a = 5/(Sqrt[3] + Sqrt[5])
FullSimplify[a]

可以看到没有作用,那么我们应该如何做呢?下面的这段代码是我在网上找到的,就先记录在这里,出处我好想忘了,以后找到出处会补上的。
a /. 1/(p : Sqrt[m1_] + Sqrt[m2_]) :>
Function[w,
Reduce[{y == 1/x, MinimalPolynomial[w][x] == 0}, y] // ToRules //
Replace[y, #] & // ReplaceAll[#, x -> w] & // Simplify]

这样就完成了分母有理话。
- 微信公众号
- 关注微信公众号
-
- QQ群
- 我们的QQ群号
-
2019年10月23日 上午8:23 1F
其实还可以使用MinimalPolynomial最小多项式命令来操作 更加简单