Сфера с гравитационным притяжением в центре

Мне интересно, какой самый простой способ применить гравитацию в центре сферы (очень похожей на планету). Я думаю, что ODE будет лучшей библиотекой для использования? Но не уверен, как это реализовать, чтобы применить гравитацию в центре сферы.


person Elgoog    schedule 31.03.2011    source источник


Ответы (1)


Все что тебе нужно это :

a = F/m = -GM r/r^3

где r — радиальный вектор массы m от Сферы массы M, а G — гравитационная постоянная.

Вам не обязательно нужна большая библиотека для интеграции этого. Вы можете просто вычислить ускорение для каждого временного шага. Единственный момент заключается в том, что вы получаете гораздо лучший результат (например, замкнутые орбиты!), если для каждого шага вы сначала вычисляете приблизительное новое положение, а затем вычисляете ускорение для местоположения в середине временного шага. а затем используйте это, чтобы определить новое положение и скорость.

person Keith    schedule 31.03.2011
comment
Разве r не должно быть в квадрате, а не в кубе? - person num3ric; 31.03.2011
comment
num3ric: Посмотрите повнимательнее. Это \vec r/r^3, то есть нормализация вектора и спад 1/r^2 в одном выражении. Это типичная нотация, используемая физиками. - person datenwolf; 31.03.2011