我试图找到一个只需要绝对最小存储空间的龙格-库塔积分器,即它满足以下三个可能等效的标准之一:
导数的每次评估都应仅取决于前一阶段。
它只存储三个向量,即步骤的开始、中间的临时副本和步骤的结束,每个阶段增量更新(每个阶段都可以覆盖临时副本)。
它有一个“对角屠夫画面”。
经典的四阶龙格-库塔方法 (RK4) 就是一个例子,但我正在努力寻找更高阶的这种方法。它们存在吗?
我试图找到一个只需要绝对最小存储空间的龙格-库塔积分器,即它满足以下三个可能等效的标准之一:
导数的每次评估都应仅取决于前一阶段。
它只存储三个向量,即步骤的开始、中间的临时副本和步骤的结束,每个阶段增量更新(每个阶段都可以覆盖临时副本)。
它有一个“对角屠夫画面”。
经典的四阶龙格-库塔方法 (RK4) 就是一个例子,但我正在努力寻找更高阶的这种方法。它们存在吗?
这个领域已经得到了很好的研究,您可以查看例如 Ketcheson 对此类方法的评论:
https://doi.org/10.1016/j.jcp.2009.11.006
其中确实包含一些用于五阶和六阶的低存储 Runge-Kutta 方法。
另一个很好的起点是 Kennedy, Carpenter, & Lewis 的优秀论文 (KCL2000):
https://doi.org/10.1016/S0168-9274(99)00141-5
我自己的论文更多地关注低存储实现的机制及其对方法构建的意义,而 KCL2000 则主要关注方法的优化和测试。他们对高达五阶的方法进行了广泛的调查。关于高于五阶的低存储显式 RK 方法几乎没有做(我自己的论文,在另一个答案中链接,是一个例外)。
我要补充一点,在低存储空间中实现 RK4 有一种比显而易见的更好的方法,每个 4 阶 RK4 方法都有一个低存储空间实现(3 个寄存器)。这些事情在我的论文介绍中提供的参考资料中进行了详细解释,该论文已经由@reid.atcheson 链接。