我有这个 runge kutta 代码。但是,有人提到我的方法是错误的。而且我真的无法从他那里理解为什么,所以这里的任何人都可以暗示为什么这种方式是错误的?
Vector3d r = P.GetAcceleration();
Vector3d s = P.GetAcceleration() + 0.5*m_dDeltaT*r;
Vector3d t = P.GetAcceleration() + 0.5*m_dDeltaT*s;
Vector3d u = P.GetAcceleration() + m_dDeltaT*t;
P.Velocity += m_dDeltaT * (r + 2.0 * (s + t) + u) / 6.0);
====编辑====
Vector3d 存储坐标,x,y,z。
GetAcceleration 返回每个 x、y 和 z 的加速度。