半隐式欧拉数值积分法的时间可逆性
The time-reversibility of the semi-implicit Euler numerical integration method
显然semi-implicit Euler integration method is symplectic, but I can't find any info about it's time-reversibility。那么问题来了:它是时间可逆的吗?
中的胡克定律示例
v_{n+1} = v_n - omega^2 x_n dt
x_{n+1} = x_n + v_{n+1} dt
考虑可逆性的一种方式是我们是否可以在给定 v_{n+1}
和 x_{n+1}
的情况下恢复 v_n
和 x_n
。后方运行第二个
x_n = x_{n+1) - v_{n+1} dt
所以我们可以找到x_n
,知道这个我们可以找到v_n
v_n = v_{n+1} + omega^2 x_n dt
请注意,这与您 运行 通过使用 dt = - dt
反转时间向后得到的半隐式欧拉方法不同。这样做,您将按其他顺序执行这两个步骤。
v_n = v_{n+1} + omega^2 x_{n+1} dt
x_n = x_{n+1} - v_n dt
在这个 Google spreadsheet with Hooke's law 中,我实现了胡克定律的方法。 B 和 C 列是前进的位置和速度。 D 和 E 列从末尾开始,并应用反向时间的方法。 F 和 G 列从末尾开始,但应用恢复原始数据的方法。您可以看到向前和向后的图表不太匹配。
显然semi-implicit Euler integration method is symplectic, but I can't find any info about it's time-reversibility。那么问题来了:它是时间可逆的吗?
v_{n+1} = v_n - omega^2 x_n dt
x_{n+1} = x_n + v_{n+1} dt
考虑可逆性的一种方式是我们是否可以在给定 v_{n+1}
和 x_{n+1}
的情况下恢复 v_n
和 x_n
。后方运行第二个
x_n = x_{n+1) - v_{n+1} dt
所以我们可以找到x_n
,知道这个我们可以找到v_n
v_n = v_{n+1} + omega^2 x_n dt
请注意,这与您 运行 通过使用 dt = - dt
反转时间向后得到的半隐式欧拉方法不同。这样做,您将按其他顺序执行这两个步骤。
v_n = v_{n+1} + omega^2 x_{n+1} dt
x_n = x_{n+1} - v_n dt
在这个 Google spreadsheet with Hooke's law 中,我实现了胡克定律的方法。 B 和 C 列是前进的位置和速度。 D 和 E 列从末尾开始,并应用反向时间的方法。 F 和 G 列从末尾开始,但应用恢复原始数据的方法。您可以看到向前和向后的图表不太匹配。