2015-12-22 20 views
0

我试图操纵一些代数与千里马符号矩阵分离,这里是我的代码:与千里马

Pd: matrix([a00, a01, a02, a03], [a10, a11,a12,a13], [a20,a21,a22,a23]); 
Pdd: matrix([b00, b01, b02, b03], [b10, b11,b12,b13], [b20,b21,b22,b23]); 
T1: col(Pd, 1) . transpose(col(Pdd,4)) - col(Pd, 4) . transpose(col(Pdd,1)); 
T2: col(Pd, 2) . transpose(col(Pdd,4)) - col(Pd, 4) . transpose(col(Pdd,2)); 
    T3: col(Pd, 3) . transpose(col(Pdd,4)) - col(Pd, 4) . transpose(col(Pdd,3)); 

    t: matrix(list_matrix_entries(T1), list_matrix_entries(T2), list_matrix_entries(T3)); 

transpose(list_matrix_entries(t)); 

这最后给出了27个方程,是这样的:

matrix([a00*b03−a03*b00], 
[a00*b13−a03*b10], 
[a00*b23−a03*b20], 
[a10*b03−a13*b00], 
[a10*b13−a13*b10], 
[a10*b23−a13*b20], 
[a20*b03−a23*b00], 
[a20*b13−a23*b10], 
[a20*b23−a23*b20], 
[a01*b03−a03*b01], 
[a01*b13−a03*b11], 
[a01*b23−a03*b21], 
[a11*b03−a13*b01], 
[a11*b13−a13*b11], 
[a11*b23−a13*b21], 
[a21*b03−a23*b01], 
[a21*b13−a23*b11], 
[a21*b23−a23*b21], 
[a02*b03−a03*b02], 
[a02*b13−a03*b12], 
[a02*b23−a03*b22], 
[a12*b03−a13*b02], 
[a12*b13−a13*b12], 
[a12*b23−a13*b22], 
[a22*b03−a23*b02], 
[a22*b13−a23*b12], 
[a22*b23−a23*b22]) 

我的问题是,怎么可能将这27个方程用最大值操作(重新排列)为t = Ea形式,其中a是堆积为列向量的所有a..条目。

回答

2

尝试这种情况:

coefmatrix (list_matrix_entries (foo), 
    [a00, a01, a02, a03, a10, a11, a12, a13, a20, a21, a22, a23]); 

foo其中为上述transpose(list_matrix_entries(t));结果。

+0

完美答案,谢谢! – mkuse