我有几个产品的表达式,如:a * conjugate(a)。 如何让Maxima用cabs替换它们(a)^ 2?
提前致谢
答案 0 :(得分:1)
一种方法是切换到polarform
。调整p(e)
declare([a, b, c], complex);
e: a*conjugate(a) + b^2*conjugate(b)^2 + c;
/* apply `polarform' if `p(e)' is true */
p(e):=member(e, ['a, 'b]);
polarform0(e):=if p(e) then polarform(e) else e;
scanmap(polarform0, e);
OUPUTS:
c+abs(b)^4+abs(a)^2$