2

我正在编写一个程序,让我在 Matlab 中为行星的轨道设置动画。这是有效的,但我想显示他们在特定时间间隔内完全绕太阳运行的次数。我一直在通过将它们开始的位置与当前位置进行比较来做到这一点:abs(current_position - begin_position < precision。但这是我的问题:每个行星及其数据的精度都非常不同。就像木星一样,我必须将这个精度设置为 0.2,而对于海王星,它必须是 0.001,所以我不能只说precision = 0.2,因为如果我这样做,它会与我的其他行星产生故障。是否有另一种方法来比较这些数字或另一种方法来实现这一点?我也一直在尝试使用角度,但效果并不好。

提前致谢。

4

1 回答 1

0

我会使用一个向量来存储每个行星的精度。但是,如果位置匹配,您将必须检查每次迭代,然后增加轨道数的计数器。

为什么角度会给你带来问题?您可以累积角度,减去初始角度,然后计算模数 360(或 2*pi)以了解轨道数。

于 2013-04-12T16:11:36.537 回答