sqrt(a^2+2*a+1)可以很容易地改写为|a+1|. 我想在最大值中执行此操作,但无法使其工作。虽然sqrt(a^2)被自动简化为|a|,sqrt(a^2+2*a+1)但不是。并且radcan(sqrt(a^2+2*a+1))给a+1,这是不正确的。无论如何在Maxima中得到正确的简化?
1 回答
1
是的。基本上,您只需要告诉 Maxima 更加努力地分解平方根的内部。例如:
(%i1) x: sqrt(a^2 + 2*a + 1);
2
(%o1) sqrt(a + 2 a + 1)
(%i2) factor(a^2 + 2*a + 1);
2
(%o2) (a + 1)
(%i3) map (factor, x);
(%o3) abs(a + 1)
(%i4)
这里的map意思是该函数factor应该应用于 的每个参数sqrt。发生的情况是您sqrt((a+1)^2)出现在途中,这会自动简化为abs(a+1).
请注意,radcan对于 的某些值,来自的答案是正确的a。据我了解,这就是所有radcan保证:它对于回答“哎呀!有更简单的方法来思考这个疯狂的表达吗?”很有用,但对于“嗯,我不确定其中的变量是什么”不是特别有用是。有更简单的形式吗?
于 2012-07-31T14:34:49.290 回答