用矩阵乘法求解线性系统

计算科学 线性代数 矩阵 矩阵方程
2021-12-10 20:57:51

求解线性系统时Ax=b在哪里A=BTCB我需要形成A明确地通过两个矩阵矩阵乘法还是有另一种更简单的方法? C是一个 NxN 矩阵,并不总是对称的。B是 NxM 并且不是对称的。

1个回答

迭代方法的美妙之处在于它们需要您做的只是矩阵向量乘法。在您的情况下,矩阵的乘积A带有矢量y可以写成z=Ay=(BTCB)y=BT(C(By))这表明您只需要三个矩阵向量乘积,但没有矩阵矩阵乘积。

如果C恰好是对称的和半正定的,那么也是A您可以使用共轭梯度方法。否则,您可能想考虑另一种迭代方法 GMRES。