N-Body Simulation - Как выбрать фактор смягчения? - PullRequest
1 голос
/ 02 марта 2012

Я нахожусь в процессе написания упрощенной версии симуляции All-Pairs N-Body. Я использую CUDA / OpenGL для реализации алгоритма и визуализации моделирования. Я предполагаю, что все тела являются сферами одинакового радиуса, так что масса каждой сферы является единственной разницей (предположим, что все сферы имеют радиус == 1). Теперь я хотел бы знать, как выбрать коэффициент смягчения в уравнении ускорения? http://http.developer.nvidia.com/GPUGems3/elementLinks/680equ02.jpg

Я думаю о том, что epsilon == 2 - хороший выбор, потому что это момент, когда две сферы сталкиваются в моем случае. Это разумный выбор? Есть ли простое объяснение того, как выбрать коэффициент смягчения?

Я смотрел на главу 31 Gem 3 для GPU, но там не говорится, что такое выбранное значение и как вы выбрали бы подходящее значение. Я просмотрел некоторые исследовательские работы, но я не в состоянии самостоятельно проникнуть в эти научные статьи.

1 Ответ

4 голосов
/ 02 марта 2012

Правильная длина смягчения для задачи зависит от множества факторов - временного шага, конфигурации, масштаба рассматриваемых задач, выбора интегратора и т. Д. В общем, если вы хотите подавить расслабление двух тел, вам нужна некоторая функция радиуса Хилла [в отличие от физического радиуса, так как похоже, что вы хотите подавить эффекты близких встреч, а не макет столкновения.]

См. статью Вальтера Денена на тему выбора оптимального смягчения (хотя я немного встречаюсь с ним, цитируя это; возможно, есть более современные ссылки).

...