我在简化 mathematica 中的某些函数时遇到了一些问题。在我编写的程序中,我使用 Sum 函数计算了一些函数,其中许多项最终都乘以零。我想要打印但简化的功能。我尝试使用 FullSimplify,但它需要很长时间才能运行。然后我尝试使用 Simplify,但它不起作用。这是我得到的一个函数的例子,
2. Sqrt[-(-1+x) x]+
0. Sin[2 ArcCos[-1+2 x]]+
0. Sin[3 ArcCos[-1+2 x]]+
0. Sin[4 ArcCos[-1+2 x]]+
0. Sin[5 ArcCos[-1+2 x]]+
0. Sin[6 ArcCos[-1+2 x]]+
0. Sin[7 ArcCos[-1+2 x]]+
0. Sin[8 ArcCos[-1+2 x]]+
0. Sin[9 ArcCos[-1+2 x]]+
0. Sin[10 ArcCos[-1+2 x]]+
0. Sin[11 ArcCos[-1+2 x]]+
0. Sin[12 ArcCos[-1+2 x]]+
0. Sin[13 ArcCos[-1+2 x]]+
0. Sin[14 ArcCos[-1+2 x]]+
0. Sin[15 ArcCos[-1+2 x]]+
0. Sin[16 ArcCos[-1+2 x]]+
0. Sin[17 ArcCos[-1+2 x]]+
0. Sin[18 ArcCos[-1+2 x]]+
0. Sin[19 ArcCos[-1+2 x]]+
0. Sin[20 ArcCos[-1+2 x]]+
0. Sin[21 ArcCos[-1+2 x]]+
0. Sin[22 ArcCos[-1+2 x]]+
0. Sin[23 ArcCos[-1+2 x]]+
0. Sin[24 ArcCos[-1+2 x]]+
0. Sin[25 ArcCos[-1+2 x]]+
0. Sin[26 ArcCos[-1+2 x]]
那么,为什么不简化为
2. Sqrt[-(-1+x) x]
我还有一个后续问题,但并不那么重要。但是,假设其中四个项具有非零系数,是否可以将它们组合成一个项,该项是原始项的数值近似值?
感谢任何回复的人!
最佳答案
向机器精度问好。
(* exact *)
0 Sin[x]
Out[1]= 0
(* machine precision *)
0. Sin[x]
Out[2]= 0. Sin[x]
使用
Chop
将数字荒谬地设置为接近于零,准确地设置为 0。expr = 2. Sqrt[-(-1 + x) x] + 0. Sin[2 ArcCos[-1 + 2 x]] +
0. Sin[3 ArcCos[-1 + 2 x]] + 0. Sin[4 ArcCos[-1 + 2 x]] +
0. Sin[5 ArcCos[-1 + 2 x]] + 0. Sin[6 ArcCos[-1 + 2 x]] +
0. Sin[7 ArcCos[-1 + 2 x]] + 0. Sin[8 ArcCos[-1 + 2 x]] +
0. Sin[9 ArcCos[-1 + 2 x]] + 0. Sin[10 ArcCos[-1 + 2 x]] +
0. Sin[11 ArcCos[-1 + 2 x]] + 0. Sin[12 ArcCos[-1 + 2 x]] +
0. Sin[13 ArcCos[-1 + 2 x]] + 0. Sin[14 ArcCos[-1 + 2 x]] +
0. Sin[15 ArcCos[-1 + 2 x]] + 0. Sin[16 ArcCos[-1 + 2 x]] +
0. Sin[17 ArcCos[-1 + 2 x]];
Chop[expr]
Out[4]= 2. Sqrt[(1 - x) x]
关于wolfram-mathematica - 在 Mathematica 中简化一个系列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6527415/