在Maxima中,我有一个方程式,如下所示:
eq : c0*a + d0*a + c1*b - c2*p - c4*q = c5*r有没有一个命令可以让我达到:
(c0 + d0)*a + c1*b = c2*p + c4*q + c5*r简而言之,我想选择哪些变量在左边或右边结束,并且我想写成这样,我选择的变量只出现一次(在本例中是a,b,p,q,r)。
发布于 2015-08-20 00:37:21
也许coefmatrix对此很有用。
(%i1) display2d : false $
(%i2) eq : c0*a + d0*a + c1*b - c2*p - c4*q = c5*r $
(%i3) vars : [a, b, p, q, r] $
(%i4) coeffs : coefmatrix ([eq], vars);
(%o4) matrix([d0+c0,c1,-c2,-c4,-c5])
(%i5) coeffs . vars;
(%o5) (-c5*r)-c4*q-c2*p+a*(c0+d0)+b*c1请注意,coefmatrix的两个参数都必须是lists。
https://stackoverflow.com/questions/32079166
复制相似问题