2014-02-24 37 views
0

我想使用scipy.linalg.solve_triangular()来解决形式为xA = b(而不是Ax = b)的系统。是否有捷径可寻?我认为我可以在使用该功能之前转换所有内容,但似乎没有工作。任何帮助表示赞赏,是这方面的初学者!解决xA = b使用scipy.linalg.solve_triangular

+0

“...但似乎没有工作。”请显示你的尝试。什么没有用?你是否遇到错误,或者错误的答案? –

回答

2

向量x必须是(1 x n);矩阵A必须是(n x m);向量b必须是(1 x m)。

如果采取双方的转置,将得到:

(xA)^T = b^T 

重新排列LHS:

(A^T)(x^T) = b^T 

现在^ T是一个(m×n个)矩阵; x是一个(n×1)向量; b是(m×1)向量。

如果A是正方形和对称的,那么根据定义A^T = A。无需工作。

您可以使用常规技术解决x^T = (A^T)^-1 (b^T)

我不会推荐计算矩阵逆。如果你的矩阵是正方形的,你最好使用LU分解和前向替换。它更稳定。

+0

谢谢。我希望能有一个更简单的方法!可以以某种方式使用trans参数吗? – user51014

+0

我的矩阵都是nxn – user51014

+0

好 - 这使得它更容易。 – duffymo