Jump to content

Быстрый мультипольный метод

Метод быстрых мультиполей ( FMM ) — численный метод, разработанный для ускорения расчета дальнодействующих сил в задаче n тел . Это достигается путем расширения системной функции Грина с использованием мультипольного разложения , которое позволяет группировать источники, расположенные близко друг к другу, и рассматривать их так, как если бы они были одним источником. [1]

FMM также применялся для ускорения итеративного решателя метода моментов (MOM) применительно к вычислительной электромагнетики . задачам [2] и, в частности, в вычислительном биоэлектромагнетизме . FMM впервые был представлен таким образом Лесли Грингардом и Владимиром Рохлиным-младшим. [3] и основано на мультипольном разложении векторного уравнения Гельмгольца . При обработке взаимодействий между удаленными базисными функциями с использованием FMM соответствующие элементы матрицы не нужно явно сохранять, что приводит к значительному сокращению требуемой памяти. Если FMM затем применяется иерархическим образом, он может повысить сложность матрично-векторных произведений в итерационном решателе с к в конечной арифметике, т. е. при условии допуска , произведение матрицы-вектора гарантированно находится в пределах допуска Зависимость сложности от допуска является , т. е. сложность FMM равна . Это расширило область применения MOM для решения гораздо более серьезных проблем, чем это было возможно ранее.

FMM, предложенный Рохлиным-младшим и Грингардом, считается одним из десяти лучших алгоритмов 20-го века. [4] Алгоритм FMM снижает сложность умножения матрицы на вектор с использованием плотной матрицы определенного типа, которая может возникнуть во многих физических системах.

FMM также применялся для эффективного рассмотрения кулоновского взаимодействия в методе Хартри-Фока и теории функционала плотности расчетов в квантовой химии .

Набросок алгоритма

[ редактировать ]
Быстрый метод мультиполей - интерполяция полюса в точке x = 3 полиномом Чебышева пятого порядка.

В своей простейшей форме метод быстрого мультиполя пытается оценить следующую функцию:

,

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

Наивно оценивая на очков требует операции. Важнейшее наблюдение, лежащее в основе метода быстрых мультиполей, заключается в том, что если расстояние между и достаточно велик, то хорошо аппроксимируется полиномом . Конкретно, пусть чебышёвские узлы порядка и пусть — соответствующие базисные полиномы Лагранжа . Можно показать, что интерполяционный полином:

быстро сходится с полиномиальным порядком, , при условии, что полюс находится достаточно далеко от области интерполяции, и . Это известно как «локальная экспансия».

За счет этой интерполяции происходит ускорение метода быстрых мультиполей: при условии, что все полюса находятся «далеко», мы оцениваем сумму только на узлах Чебышева за счет , а затем интерполировать его на все нужные точки ценой :

С , где числовой допуск, общая стоимость равна .

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

См. также

[ редактировать ]
  1. ^ Рохлин, Владимир (1985). « Быстрое решение интегральных уравнений классической теории потенциала ». J. Вычислительная физика Том. 60, стр. 187–207.
  2. ^ Надер Энгета , Уильям Д. Мерфи, Владимир Рохлин и Мариус Василиу (1992), «Метод быстрых мультиполей для расчета электромагнитного рассеяния», Транзакции IEEE на антеннах и распространении 40, 634–641.
  3. ^ «Метод быстрых мультиполей» . Архивировано из оригинала 3 июня 2011 г. Проверено 10 декабря 2010 г.
  4. ^ Ципра, Барри Артур (16 мая 2000 г.). «Лучшее в 20 веке: редакторы назвали 10 лучших алгоритмов» . СИАМ Новости . 33 (4). Общество промышленной и прикладной математики : 2 . Проверено 27 февраля 2019 г.
[ редактировать ]

Бесплатное программное обеспечение

[ редактировать ]
  • Puma-EM Высокопроизводительный параллельный код электромагнетизма метода моментов с открытым исходным кодом / многоуровневого быстрого многополюсного метода.
  • KIFMM3d Независимый от ядра быстрый мультипольный 3d-метод (kifmm3d) — это новая реализация FMM, которая не требует явного расширения мультиполя базового ядра и основана на оценках ядра.
  • PVFMM Оптимизированная параллельная реализация KIFMM для расчета потенциалов от источников частиц и объемов.
  • FastBEM Бесплатные программы быстрых мультипольных граничных элементов для решения 2D/3D задач потенциала, упругости, стоксова потока и акустических задач.
  • FastFieldSolvers поддерживает распространение инструментов FastHenry и FastCap, разработанных в Массачусетском технологическом институте для решения уравнений Максвелла и извлечения паразитов схемы (индуктивности и емкости) с использованием FMM.
  • ExaFMM ExaFMM — это трехмерный FMM-код с поддержкой CPU/GPU для ядер Лапласа/Гельмгольца, ориентированный на параллельную масштабируемость.
  • ScalFMM. Архивировано 2 мая 2017 г. на Wayback Machine. ScalFMM — это программная библиотека C++, разработанная в Inria Bordeaux с большим упором на универсальность и распараллеливание (с использованием OpenMP / MPI ).
  • DASHMM DASHMM — это библиотека программного обеспечения C++, разработанная в Университете Индианы с использованием асинхронной многозадачной системы выполнения HPX-5. Он обеспечивает унифицированное выполнение на компьютерах с общей и распределенной памятью и предоставляет ядра 3D Лапласа, Юкавы и Гельмгольца.
  • RECFMM Адаптивный FMM с динамическим параллелизмом на многоядерных процессорах.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a120b67c57dba45534212910e582144f__1714567860
URL1:https://arc.ask3.ru/arc/aa/a1/4f/a120b67c57dba45534212910e582144f.html
Заголовок, (Title) документа по адресу, URL1:
Fast multipole method - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)