中心有引力的球体
我想知道在球体(很像行星)中心应用重力的最简单方法是什么,我认为 ODE 将是最好使用的库?但不确定如何实现它以在球体中心施加重力。
I'm wondering whats the easiest way to apply gravity at the center of a sphere (much like a planet) I'm thinking that ODE would be the best library to use? But not sure on how to implement it to apply the gravity at the center of the sphere.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您所需要的只是:
a = F/m = -GM r/r^3
其中 r 是来自质量
M
球体的质量m
的径向矢量,G 是引力常数。您不一定需要太多的库来集成它。您可以只计算每个时间步的加速度。唯一的一点是,如果对于每一步,您首先计算一个近似的新位置,然后计算时间步中点位置的加速度,您会得到更好的结果(例如闭合轨道!)然后用它来确定新的位置和速度。
All you need is :
a = F/m = -GM r/r^3
where r is the radial vector for the mass
m
from the Sphere of massM
and G is the Gravitational constant.You don't necessarily need much of a library to integrate this. You can just compute acceleration for each time step. The only point is that you get a much better result (E.g. closed orbits!) if for each step you first compute an approximate new position, then compute the acceleration for the location at mid-point of the timestep and then use that to determine the new position and velocity.