В численном анализе , адаптивная измельчении сетки ( AMR) представляет собой метод адаптации точности решения в определенных чувствительных или турбулентных областях моделирования, динамически и во время вычисления решения. Когда решения вычисляются численно, они часто ограничиваются заранее определенными количественными сетками, такими как в декартовой плоскости, которые составляют вычислительную сетку или «сетку». Однако для многих задач численного анализа не требуется единообразная точность числовых сеток, используемых для построения графиков или компьютерного моделирования, и было бы лучше, если бы конкретные области графиков, требующие точности, могли быть уточнены при количественной оценке только в тех областях, где требуется добавлена точность. Адаптивное уточнение сетки обеспечивает такую среду динамического программирования для адаптации точности численных вычислений на основе требований вычислительной задачи в определенных областях многомерных графов, которые требуют точности, оставляя другие области многомерных графов на более низких уровнях. точности и разрешения.
Этот динамический метод адаптации точности вычислений к конкретным требованиям был аккредитован Маршей Бергер , Джозефом Олигером и Филиппом Колеллой, которые разработали алгоритм динамического построения сетки, названный локальным адаптивным уточнением сетки . Использование AMR с тех пор доказало широкое применение и использовалось при изучении проблем турбулентности в гидродинамике, а также при исследовании крупномасштабных структур в астрофизике, как и в Космологическом моделировании Большого театра .
Разработка адаптивного уточнения сетки
В серии работ , Марш Бергер , Иосиф Олигер и Филипп Colella разработали алгоритм динамического Гридинга называется местное адаптивная сетка уточнение . Алгоритм начинается со всей вычислительной области, покрытой регулярной декартовой сеткой базового уровня с грубым разрешением . По мере выполнения расчета отдельные ячейки сетки помечаются для уточнения с использованием критерия, который может быть либо задан пользователем (например, масса на ячейку остается постоянной, следовательно, области с более высокой плотностью имеют более высокое разрешение), либо на основе экстраполяции Ричардсона .
Затем все помеченные ячейки уточняются, что означает, что более мелкая сетка накладывается на более крупную. После уточнения отдельные участки сетки на одном фиксированном уровне уточнения передаются интегратору, который продвигает эти ячейки во времени . Наконец, выполняется процедура коррекции для коррекции переноса по интерфейсам крупно-мелкой сетки, чтобы гарантировать, что количество любого сохраняемого количества, выходящего из одной ячейки, точно уравновешивает количество, поступающее в граничную ячейку. Если в какой-то момент уровень детализации в ячейке больше, чем требуется, сетка с высоким разрешением может быть удалена и заменена более грубой сеткой.
Это позволяет пользователю решать совершенно неразрешимые проблемы на единой сетке ; например, астрофизики использовали AMR для моделирования коллапсирующего ядра гигантского молекулярного облака с эффективным разрешением 131 072 ячейки на начальный радиус облака , что соответствует разрешению 10 15 ячеек на однородной сетке. [1]
Расширенное уточнение сетки было введено через функционалы. [2] Функционал позволяет создавать сетки и обеспечивать адаптацию сетки. Некоторые расширенные функционалы включают в себя функционалы Уинслоу и модифицированные функционалы Ляо. [3]
Приложения адаптивного уточнения сетки
При вычислении решения уравнений мелкой воды решение (высота воды) может быть вычислено только для точек, расположенных на расстоянии нескольких футов друг от друга, и можно предположить, что между этими точками высота изменяется плавно. Таким образом, ограничивающим фактором для разрешения решения является шаг сетки: не будет никаких особенностей численного решения на масштабах меньше, чем шаг сетки. Адаптивное уточнение сетки (AMR) изменяет расстояние между точками сетки, чтобы изменить степень точности решения в этой области. В примере с мелководьем сетка, как правило, может располагаться через каждые несколько футов, но ее можно адаптивно уточнять, чтобы точки сетки располагались через каждые несколько дюймов в местах, где есть большие волны.
Если область, в которой требуется более высокое разрешение, остается локализованной в ходе вычислений, то можно использовать статическое уточнение сетки, при котором сетка в одних областях расположена более мелко, чем в других, но сохраняет свою форму во времени.
Преимущества схемы динамической сетки:
- Повышенная экономия вычислений по сравнению со статической сеткой.
- Повышенная экономия памяти по сравнению со статической сеткой.
- Полный контроль разрешения сетки по сравнению с фиксированным разрешением метода статической сетки или адаптивностью сглаженной гидродинамики частиц на основе лагранжиана .
- По сравнению с предварительно настроенными статическими сетками адаптивный подход требует менее подробных априорных знаний об эволюции решения.
- Вычислительные затраты наследуют свойства физической системы. [4]
Рекомендации
- Бергер, MJ; Колелла, П. (1989). «Локальное адаптивное уточнение сетки для ударной гидродинамики». J. Comput. Phys. (Эльзевьер) 82: 64–84.
- ^ Кляйн, Ричард (1999). «Звездообразование с трехмерным адаптивным уточнением сетки: коллапс и фрагментация молекулярных облаков» . Журнал вычислительной и прикладной математики . 109 (1–2): 123–152. DOI : 10.1016 / S0377-0427 (99) 00156-9 .
- ^ Хуанг, Вэйчжан; Рассел, Роберт Д. Методы адаптивных движущихся сеток .
- ^ Хаттри, Санджай Кумар (2006). «Генерация и адаптация сетей с помощью функционалов». arXiv : math / 0607388 .
- ^ Stéphane Popinet, A квадрантов-адаптивная многосеточный решатель для уравнений Серра-Green-Нагди, Журнал вычислительной физики, том 302, 2015,