积分步骤后在 Stiefel 流形上的投影

计算科学 约束优化 龙格库塔 约束
2021-12-14 03:59:24

前几天,我问约束怎么样 ATA=I如果希望对以下形式的微分方程进行积分,则可以实现A˙=f(A,t). Kirill 非常友好地指出,在一个积分步骤之后(例如在一个 Runge Kutta 步骤之后)在 Stiefel 流形上的投影步骤足以获得正确的解决方案。这个投影π(A)可以通过矩阵的极性分解找到A.

现在我的问题是,为什么一个完整的 RK 步骤后的投影就足够了。例如,如果使用四阶 RK 方法,则使用中间采样点。这些中间点不一定满足约束ATA=I. 为什么我不必在一个中间步骤后重新正交化矩阵 A 而只在一个完整的 RK4 步骤之后?这仍然是有效的四阶方法,还是因为中间采样点没有满足约束而引入了额外的错误?

Higham (1997)的那篇论文似乎表明,在流形上的投影之间使用任何一步法都是完全可以的,并且不会损失准确性。我不明白为什么这是真的。

1个回答

事实上,如果您投影每个 Runge-Kutta 阶段,您将(通常)将该方法降低到一阶精度这种效果类似于由于边界条件实现而可能发生的阶数减少。为了简要解释它,请注意该方法的第一阶段只是前向 Euler 步骤,它给出了解的一阶精确近似。因此它将是O(Δt2)远离约束流形,并通过投影引入O(Δt2)不会消失的错误。有关更详细的说明,请参阅本文

因此,仅在完整的步骤之后进行投影可能是最好的。