假设我有一个微分方程组,其形式为
这s 是时间和时间的一些函数s。确切的形式并不重要。
原则上,这可以通过简单的 RK4 算法来解决。但是,现在有额外的(正交性)约束
应该随时保持. 星号表示复共轭。
我现在的问题是,如何在我的集成方案/RK 4 算法中实现此约束。
假设我有一个微分方程组,其形式为
原则上,这可以通过简单的 RK4 算法来解决。但是,现在有额外的(正交性)约束
我现在的问题是,如何在我的集成方案/RK 4 算法中实现此约束。
一般来说,不能指望 rk4 保持系统的二次不变量,它根本不这样做。确实保持特定不变量的方法必须经过专门设计——这通常称为几何积分。辛积分器是这些方法中最常见的一种,尽管不适合您的问题。
例如,参见Hairer、Wanner、Lubich的Geometric Numerical Integration一书,或Hairer 的Solving Differential Equations on Manifolds的注释(在线免费)。
合并约束的最简单方法可能是将近似解投影到约束流形上(“投影方法”,示例 1.3,上述 Hairer 注释中的第 21 页)。给定一个 ODE 系统
最简单的是在每个 RK 步骤之后投影到约束流形上,. 第二种最简单的方法是将 ODE 重写为
除此之外,约束流形被称为Stiefel 流形,并且似乎已经有一些关于 Stiefel 流形的数值积分的文章。