在Sympy中将BlockMatrix展平为矩阵

时间:2019-01-07 05:09:02

标签: matrix sympy

Sympy具有BlockMatrix类,但是它不是常规的Matrix, 例如,您不能将BlockMatrix矩阵相乘。 BlockMatrix是构建结构化矩阵的便捷方法,但是我看不到将其用于非结构化矩阵的方法。 有没有一种方法可以使BlockMatrix变平,或者是类似于Matrix的从块构建常规numpy.blocks的另一种便捷方法?

1 个答案:

答案 0 :(得分:0)

您可以使用方法as_explicit()来获取一个扁平的显式矩阵,如下所示:

from sympy import *

n = 3
X = Identity(n)
Y = Identity(n)
Z = Identity(n)
W = Identity(n)

R = BlockMatrix([[X,Y],[Z,W]])
print (R.as_explicit())