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 に答える