SymPy能简化块矩阵表达式吗?

4
考虑以下例子:(我试图计算涉及块矩阵的矩阵乘积)
import sympy as sy

k, n = sy.symbols('k,n')
A = sy.MatrixSymbol("A", n, n)
B = sy.MatrixSymbol("B", n, k)
M = sy.BlockMatrix([[A * B, A]])
A.inverse() * M

这将输出

A^-1*Matrix([[A*B, A]])

有没有办法将这个表达式简化/扩展/取消,以更易读的形式Matrix([[B, I]])呈现?
1个回答

4
是的,使用函数block_collapse可以将块矩阵表达式计算到块级别。
sy.block_collapse(A.inverse()*M)   

returns Matrix([[B, I]])


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接