Методы интерактивной визуализации динамики жидких и газообразных сред Елена Костикова, 521 гр.
Введение в область Объекты моделирования: Течение несжимаемых жидкостей Движение облаков, тумана, пара, дыма
Математическая постановка задачи V вектор скорости, t время, µ коэффициент кинематической вязкости, ρ плотность, P давление, f вектор плотности массовых сил, l характерный размер
Уравнения Навье-Стокса V xx V x V
V x V x V x
V xx V V x
Требования к алгоритму Физическая точность Скорость Стабильность Визуальное качество
Обзор методов Симуляция акварели Моделирование дыма
Симуляция акварели
Моделирование дыма Уравнения Навье-Стокса для скорости в компактной векторной форме (вверху) и уравнение движения плотности через поле скоростей (внизу)
Движение плотности Добавление из источника Диффузия Движение по полю скоростей
Перенос плотности Диффузия Src i,j i,j+1 i,j i-1,ji+1,j i,j-1 Нестабильный метод! Стабильный метод:
Перенос плотности Движение по полю скоростей Поле Скоростей Прямая Трассировка Обратная Трассировка
Перенос плотности Движение по полю скоростей Обратная Трассировка α1α1 α2α2 α3α3 α4α4 i j y x
Движение поля скоростей Сохранение массы Условие неразрывности Связь скорости и давления Считаем Решаем уравнение Пуассона – Итеративно (метод Гаусса-Зейделя) – Первое приближение p = 0 Вычетаем градиент p из скорости
CUDA TPC - Texture Processor Cluster SM - Streaming Multiprocessor SP - Streaming Processor SFU - Special Function Unit
Чтение данных Из глобальной памяти – Не кэшируется – Большая латентность – Coalesced/Uncoalesced Из текстурных объектов (cudaArray) – Кэшируется – Большая латентность
Запись данных В глобальную память – Не кэшируется – Большая латентность – Coalesced/Uncoalesced В cudaArray – Путем копирования из линейной памяти
Когерентный/некогерентный доступ в память
CUDA Разбиение на блоки Разбиение на потоки
Граничные условия Задаются маской
Результаты
Планы на будующее Переход в 3D – Сама симуляция переводится достаточно просто – Основная проблема – растеризация полигональных объектов в трехмерную сетку (для граничных условий) – Визуализация
Спасибо за внимание!