我的问题涉及Maple 18中具有复数的操作。问题如下
我定义了这个复杂的:
c:=a+i*b;
然后我计算正方形:sort(evalc(c^2))
输出是:
a^2+2*i*ab-b^2;
那么,我如何获得如下输出?
a^2-b^2b^2 +a*i*ab;
换句话说,我想要一个输出,其中真实部分在复杂部分之前。
我已尝试使用sort
命令,但这还不够......可能会使用某些命令来复杂地格式化输出,但我没有找到...
提前谢谢你:)
答案 0 :(得分:1)
在Maple 18中,您可以使用新的InertForm包来更好地控制格式。
确切的外观取决于界面。在命令行(TTY)界面中,下面Display
的两种用法看起来都相同,但两者都在实际部分周围显示额外的圆括号。在标准Java GUI中,第一个使用灰色+
来表示惰性%+
。
restart:
c:=a+b*I:
expr:=c^2:
U := `%+`(evalc(Re(expr)),evalc(I*Im(expr))):
with(InertForm):
Display(U);
2 2
(a - b ) + 2 I a b
Display(U, inert=false);
2 2
(a - b ) + 2 I a b
Value(U);
2 2
-b + 2 I a b + a
这是处理此类问题的新方法。在较旧的Maple中,真实和复杂的部分可以通过每个用``()运算符包装而在显示中保持独立。然后可以通过应用expand
命令来重新获取实际值。这不太好,甚至在GUI中显示额外的括号。