我试图用python通过numpy.linal.solve来解线性方程组。 方程式如下所示:Ax=b
在我的例子中,A应该是不同矩阵的矩阵[[W,U.T],[U,0]],
其中W是一个150x150 numpy阵列,U.T是一个150x11 numpy阵列,因此U是一个11x150 numpy阵列
结果b应该是如下所示的向量:[0,y],
其中y是1x11向量
我的问题是我不知道如何连接矩阵A的矩阵。 我已经尝试使用concatenate或numpy类的stack操作符。但这会产生一个161x161矩阵A,我需要一个2x2矩阵。 所以我必须把每个矩阵作为一个条目来处理,但我不知道怎么做,因为形状不同
我希望有人能帮助我。我真的被困在这里了
您需要将矩阵重塑为二维,并确保保持正确的数学表达式
如果我没有弄错的话,你想要的是表达以下等式:
因此,您将需要一个
(161, 161)
形状的矩阵A
,其中左上角用W
的(150x150)
元素填充,右上角用U.T
的(150x11)
元素填充,左下角用U
的(11x150)元素填充,右下角用(11x11)
零填充。 数组b
的形状为(161,)
,包含151个零和11个y
元素即:
确保所有数量都是numpy数组。 结果
x
也将具有形状(161,)我认为np.linalg.solve不支持嵌套维度。但这不应该是必要的
相关问题 更多 >
编程相关推荐