Антон Сухинов, Московский физико-технический институт Научный руководитель: Б.Н. Четверушкин, Институт математического моделирования РАН.

Презентация:



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

Л АБОРАТОРНАЯ РАБОТА 7 Тема: Решение граничных задач для обыкновенных дифференциальных уравнений Тема: Решение граничных задач для обыкновенных дифференциальных.
Учебный курс Основы вычислительной математики Лекция 1 доктор физико-математических наук, профессор Лобанов Алексей Иванович.
Л АБОРАТОРНАЯ РАБОТА 4 Тема: Численное дифференцирование Тема: Численное дифференцирование.
Методы интерактивной визуализации динамики жидких и газообразных сред Костикова Елена Юрьевна, 521 гр. Научный руководитель: Игнатенко Алексей Викторович.
ЛЕКЦИЯ Приближенное решение обыкновенных дифференциальных уравнений: Метод Эйлера.
Интернет Университет Суперкомпьютерных технологий Лекция 4 Методы построения параллельных программ (продолжение) Учебный курс Введение в параллельные алгоритмы.
Сравнение различных способов декомпозиции сеточной области при численном решении уравнения переноса Е.А. Данилкин, А.В. Старченко Томский государственный.
УРАВНЕНИЯ С ЧАСТНЫМИ ПРОИЗВОДНЫМИ. Рассмотрим уравнение вида: Здесь - искомая функция.
Сравнительный анализ некоторых методов композиции вычислительных подобластей студент: Данилин Александр научный руководитель: Илюшин Александр Иванович.
{ основные типы уравнений второго порядка в математической физике - уравнение теплопроводности - уравнения в частных производные - уравнения переноса количества.
Параллельные алгоритмы для симплициального подразделения области с итерационным измельчением вблизи границы Кафедра параллельных алгоритмов Математико-Механический.
Московский государственный университет им. М. В. Ломоносова Факультет вычислительной математики и кибернетики Кафедра вычислительных методов Дипломная.
Лекция 1: Дифференциальные уравнения. Разностный метод.
Большая часть классического численного анализа основывается на приближении многочленами, так как с ними легко работать. Однако для многих целей используются.
1 Локализация разрывов в газодинамических полях полученных методом сквозного счета и адаптация расчетной сетки к положению разрывов Плёнкин Андрей Валерьевич.
Выполнил студент : Санкт - Петербург 2012 Министерство образования Российской Федерации Санкт - Петербургский государственный архитектурно - строительный.
Л АБОРАТОРНАЯ РАБОТА 6 Тема: Численные методы решения задачи Коши для обыкновенных дифференциальных уравнений.
Понятие о методах Монте-Карло. Расчет интегралов 2.5. Расчет интегралов методом Монте-Карло.
3. Алгоритмы приближения функций Если функция y = f(x) задана, то любому допустимому значению x сопоставляется некоторое значение y. Функция может быть.
Транксрипт:

Антон Сухинов, Московский физико-технический институт Научный руководитель: Б.Н. Четверушкин, Институт математического моделирования РАН

Локально-перестраиваемые декартовы сетки с динамической адаптацией к решению Проверка разработанных сеток на решении простейшей задачи переноса Параллельная реализация алгоритмов с динамической балансировкой загрузки 2

3

При численном решении задач математической физики обычно используются вычислительные сетки, покрывающие расчётную область. Дискрети- зация уравнений модели выполняется на уровне элементов сетки Физические явления зачастую имеют разрывы и локализованные области с большими градиентами физических величин Численное моделирование таких задач и распро- странённые подходы (конечные элементы, конеч- ные объёмы, конечные разности, спектральные методы) будут неэффективны на равномерных сетках, когда требуется высокая точность решения 4

Повышение порядка аппроксимации разностной схемы немонотонность разностных схем и появление осцилляций Уменьшение размеров ячеек во всей области значительный рост вычислительной сложности задачи Выборочное измельчение элементов сетки (адаптивная сетка) подход, который исполь- зован в данной работе 5

Вначале сетка состоит из одной прямоугольной ячейки Каждая ячейка может быть разделена на четыре ячейки одинакового размера Если ячейки когда-то составляли одну ячейку, то они могут быть объединены обратно При данных предположениях сетку удобно хранить в виде четверичного дерева: 6

Дополнительное ограничение на размер ячеек: в окрестности каждой ячейки не должно быть ячеек, которые отличаются от неё по размерам более чем в два раза Следствия из этого ограничения: Ячейка будет иметь от 6 до 12 соседей Не может быть одновременно больших и маленьких соседних ячеек Преимущества ограничения: Значительно упрощаются алгоритмы поиска соседей и интерполяции Повышается точность аппроксимации уравнений Сетка успевает «подготовиться» к приходу области с большим градиентом (при движении таких областей) Недостаток: Чрезмерное измельчение сетки в некоторых областях 7

Каждая ячейка имеет 9 интерполяционных точек, которые хранят значения, аппроксимирующие сеточную функцию и две её частные производные Эти точки вычисляются с использованием значений в ячейке и её соседях Интерполяционные точки содержат достаточно информации для консервативной аппроксимации уравнений в частных производных (до второго порядка включительно) Таким образом, формулы для аппроксимации и алгоритмы расчёта не зависят от локальной структуры сетки 8

Свойства, которыми должен обладать алгоритм адаптации: Сетка измельчается в местах больших градиентов решения Максимальное число ячеек фиксировано Можно ограничить минимальный размер ячейки (например, для соблюдения условия Куранта) Можно зафиксировать отдельные ячейки, чтобы они не разбивались и не объединялись (например, для задания граничных условий) 9

Вариация данных в ячейке это разница между максимальным и минимальным значениями сеточной функции в пределах ячейки Вариация отражает возможную потерю инфор- мации из-за усреднения сеточной функции по площади ячейки Вариация неизвестна, так как известны только средние значения по ячейкам. Однако вариация может быть оценена с использованием интерпо- ляционной функции 10

Идея перестроения сетки заключается в разбиении ячеек с максимальной ва- риацией за счёт объеди- нения ячеек с минимальной вариацией. При этом не превышается установлен- ное число ячеек Основная сложность в том, что ограничение на разме- ры соседних ячеек приводит к образованию цепочек разбиений В результате работы алго- ритма вариация ячеек ста- новится почти одинаковой 11

12

Рассмотрим в качестве примера двумерную задачу переноса: где c=c(x,y,t) некоторая физическая величина, t время, V x скорость переноса величины c вдоль оси x, V y скорость переноса величины c вдоль оси y Область решения единичный квадрат, граничные условия c=0 на границе области, начальное условие c(x,y,0)=c 0 (x,y) 13

Несмотря на простоту постановки задачи и известное аналитическое решение, она сложна для численной реализации сеточными методами: Если при разностной аппроксимации задачи не внести искусственную диффузию («схемную вязкость»), то разностная схема будет неустойчива Если же схемную вязкость внести (например, путём использования разностной схемы, ориентированной против потока), то численное решение будет иметь большую погрешность, так как в исходном дифференциальном уравнении диффузионные члены отсутствуют В связи с этим было решено использовать линейную комбинацию разностной схемы второго порядка точности и разностной схемы, ориентированной против потока 14

На рисунках показаны начальные условия для равномерной (слева) и адаптивной (справа) сеток Количество использованных ячеек одинаково для обеих сеток 4096 ячеек 15

На рисунках показаны результаты решения задачи переноса для V x =1, V y =1 в момент времени T=0.5 на равномерной (слева) и адаптивной (справа) сетках 16

17

18

Время решения задачи переноса на адаптивной сетке в 1.5 раза больше времени вычисления на равномерной сетке с тем же числом ячеек Но для достижения той же точности на равномерной сетке требуется в 16 раз больше ячеек Таким образом, при той же точности решение на адаптивной сетке может быть получено в 10 раз быстрее, чем на равномерной 19

20

Сетка разбивается на области, называемые кластерами. В каждый кластер попадает определён- ное поддерево сетки Кластеры динамически распределяются между процессорами, как неделимые единицы, для обеспечения балансировки загрузки и мини- мального обмена данными при последующем счёте Следует учесть, что само перераспределение кластеров требует времени, поэтому параллельный алгоритм должен минимизировать накладные расходы на свою работу 21

Противоречащие друг другу требования: Балансировка загрузки одинаковое число ячеек на всех процессорах Минимизация обменов при счёте минимальная длина границы между областями разных процессоров Минимизация накладных расходов минимальное количество пересылаемых между процессорами ячеек при перераспределении кластеров В качестве критерия распределения кластеров по процессорам берётся суммарное ожидаемое время вычислений: N i число ячеек на i-ом процессоре; L i суммарная длина границы между областью i-го процессора и областями других процессоров (измеряется в ячейках); D i число ячеек, которые должны быть переданы к/от i-го процессора для достижения требуемого распределения кластеров 22

64 кластера динамически распределяются по 3-м процессорам. На рисунках показано распределение для различных моментов времени Из-за малого количества ячеек по сравнению с объёмом передаваемых данных большую часть времени работают только два процессора 23

Разработаны новые алгоритмы иерархических локально-перестраиваемых декартовых сеток с динамической адаптацией к решению. Алгоритмы проверены на задаче переноса Разработаны параллельные алгоритмы с динамической балансировкой загрузки Алгоритмы будут реализованы в виде пакета программ для обеспечения их широкого применения Спасибо за внимание! 24