等式的术语不同的顺序

时间:2016-02-08 19:23:48

标签: equation maxima

我使用的是wxMaxima 15.08.1(win 10),当我输入这个等式时

/* [wxMaxima: input   start ] */a*x+b*y+c*z=0;

我明白了:

/* [wxMaxima: input   end   ] */cz+by+ax=0

为什么它改变了术语表达式的位置?看起来似乎是以某种方式降序。

然后,如果我输入另一个等式给出所有系数相同的未知数,则maxima输出恰到好处。

/* [wxMaxima: input   start ] */a*x^2+b*x+c=0;

/* [wxMaxima: input   end   ] */ax^2+bx+x=0

1 个答案:

答案 0 :(得分:2)

Maxima对“+”和“*”表达式中术语的规范排序有自己的想法。规范排序由函数ordergreatp(等效orderlessp)表示,它告诉一个术语是否在另一个术语之后(分别在之前)。如果您将sort应用于术语列表,则默认情况下会根据规范顺序对其进行排序。

默认情况下,“+”术语以相反的顺序显示(与规范顺序相反)。当全局变量powerdisptrue时,“+”术语将按规范顺序显示。您可以决定一个订单或另一个订单是否适合您。

(%i2) powerdisp;
(%o2)                         false
(%i3) a*x + b*y + c*z;
(%o3)                    c z + b y + a x
(%i4) a*x^2 + b*x + c;
                            2
(%o4)                    a x  + b x + c

(%i7) powerdisp : true $
(%i8) a*x + b*y + c*z;
(%o8)                    a x + b y + c z
(%i9) a*x^2 + b*x + c;
                                      2
(%o9)                    c + b x + a x