Рекомендации по реализации быстрого мультипольного метода?

Я заинтересован во внедрении быстрого мультипольного метода для эффективного моделирования системы отталкивающих частиц.

Я нашел большую коллекцию ссылок, обсуждающих FMM, но ни одна не кажется очень доступной для нематематиков, которые хотят полностью понять алгоритм.

Можете ли вы порекомендовать справочную информацию, которая четко объясняет математику процесса и включает псевдокод, иллюстрирующий правильную реализацию?

2 ответа

Решение

Я ни в коем случае не являюсь экспертом в области FMM, но эта реализация и введение в Java - лучший источник, который я нашел до сих пор для того, чтобы объяснить это осторожно и медленно. Документ хорош для определения терминов перед их использованием, и код по крайней мере полезен в качестве ориентира. Математика все еще очень быстро становится волосатой, но это то, что есть:)

Пешеходное знакомство с быстрыми мультипольными методами занимает второе место. Это не объясняет фактические детали работающей реализации FMM, но это хорошее введение в основные идеи.

Столкнувшись с аналогичной проблемой, я написал полностью документированную реализацию быстрого многополюсного метода Python, pybbfmm. Я также написал короткое, не содержащее математики руководство о том, как работает этот метод. Вместе, я думаю, они значительно более доступны, чем любые другие презентации, которые я смог найти.

(мета: хотя это фактически пост ссылки, OP явно запрашивает ссылку. Я добавил то, что, по моему мнению, отсутствовало в последнем - имя библиотеки - но я не уверен, как еще предложить это ответ, кроме как имя и ссылка. Конечно, это не чувствует больше linkpost-y, чем принятый ответ. Если этот также будет удален, я сдамся)

Мне нравится короткий курс по FMM. Он начинается с FMM в 1D, а затем использует теорию комплексных переменных для создания FMM в 2D. Кроме того, есть сумасшедшая трехмерная версия, в которой используется теория функций сферических гармоник, которая, я думаю, может быть очень сложной для нематематика. Но если вам нужен FMM только в 2D, все будет в порядке.

К сожалению, там нет псевдокодов.

Но вам действительно нужна точность FMM? Вы можете быть в порядке с алгоритмом Барнса-Хата

Другие вопросы по тегам