当基础几乎完成时,有效计算线性基础的扩展完成(理想情况下使用 LAPACK 例程)

计算科学 线性代数 基组 拉帕克
2021-11-27 18:11:34

我有一个矩阵(其中),并且希望找到一种数值有效的方法来扩展该矩阵以获得完整的维正交基。换句话说,我想通过互补矩阵以便p×nBn<ppppnW

[B|W]

是正交的。

目前我正在计算秩投影矩阵的 QR 分解pn

P=IBBT=QR

使用 LAPACK 例程dgeqp3dorgqr的尾随我确信必须有一种更有效的方法,因为在我的应用程序中,几乎是一个完整的基础,即很小。 pQBpn

我想知道通过遍历仅当时,在每一步将列添加到当前中。在R中有pn 个独立向量后,我可以将 W 形成W =(R^TR)^{-1/2} R但是,我不确定这是否是一个数值稳定的解决方案,或者是否有另一种更有效的方法。 RPCRdet([R|C]T[R|C)0pnRWW=(RTR)1/2R

理想情况下,我想要一种可以使用标准 LAPACK 例程实现的方法。

最初在这里询问stackoverflow

1个回答

只需计算的 QR 分解。然后,最后的列具有形成基补的所需属性。Bpn

对于大和小,您可以采用 k=pn 或稍大的随机p矩阵(以增加具有数值稳定性的可能性),并计算的 QR 分解,其中,以概率 1 跨越互补子空间。npnp×kXk=pnXB(BTX)