Научная статья на тему 'Реалистичное моделирование свободной водной поверхности на адаптивных сетках типа «Восьмеричное дерево»'

Реалистичное моделирование свободной водной поверхности на адаптивных сетках типа «Восьмеричное дерево» Текст научной статьи по специальности «Математика»

CC BY
193
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВЫЧИСЛИТЕЛЬНАЯ ТЕХНОЛОГИЯ / ТЕЧЕНИЯ СО СВОБОДНОЙ ПОВЕРХНОСТЬЮ / FREE SURFACE FLOWS / КОМПЬЮТЕРНАЯ ГРАФИКА / COMPUTER GRAPHICS / COMPUTATIONAL HYDRODYNAMICS

Аннотация научной статьи по математике, автор научной работы — Никитин К.Д.

Предлагается эффективная технология моделирования течения вязкой несжимаемой жидкости со свободной границей. В технологии объединены проекционный метод для решения уравнений Навье-Стокса и метод функции уровня и частиц для работы со свободной поверхностью. Расчет проводится на адаптивно сгущающихся гексаэдральных сетках типа «восьмеричное дерево».

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Никитин К.Д.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

REALISTIC MODELING OF FREE WATER SURFACE ON ADAPTIVE "OCTAL TREE" MESHES

An efficient method for flow modeling of incompressible viscous liquid with free border is presented. The method unites the projection method for solving the Navier-Stokes equations and the particle level set method for the free surface evolution. The method uses adaptively refined hexahedral meshes built "octal tree" tree data structure.

Текст научной работы на тему «Реалистичное моделирование свободной водной поверхности на адаптивных сетках типа «Восьмеричное дерево»»

5. Welch P.D. The Use of Fast Fourier Transform for the Estimation of Power Spectra: A Method Based on Time Averaging Over Short, Modified Periodograms // IEEE Trans. Audio Electroacoust. - 1967. - V. AU-15. - P. 70-73.

6. Percival D.B. and Walden A.T. Spectral Analysis for Physical Applications: Multitaper and Conventional Univariate Techniques. Cambridge: Cambridge University Press, 1993.

7. Бондарев В.Н., Трестер Г., Чернега В.С. Цифровая обработка сигналов: методы и средства. -Севастополь: СевГТУ, 1999. - 398 с.

Демин Анатолий Владимирович - Санкт-Петербургский государственный университет информационных

технологий, механики и оптики, доктор технических наук, профессор, dav_60@mail.ru

Войтюк Татьяна Евгеньевна - Санкт-Петербургский государственный университет информационных

технологий, механики и оптики, аспирант, tanya_4ever@mail.ru Климанов Виталий Александрович - Санкт-Петербургский государственный университет информационных

технологий, механики и оптики, кандидат технических наук, доцент, v_klimanov@mail.ru

УДК 517.958:532.5

РЕАЛИСТИЧНОЕ МОДЕЛИРОВАНИЕ СВОБОДНОЙ ВОДНОЙ ПОВЕРХНОСТИ НА АДАПТИВНЫХ СЕТКАХ ТИПА «ВОСЬМЕРИЧНОЕ ДЕРЕВО» К.Д. Никитин

Предлагается эффективная технология моделирования течения вязкой несжимаемой жидкости со свободной границей. В технологии объединены проекционный метод для решения уравнений Навье-Стокса и метод функции уровня и частиц для работы со свободной поверхностью. Расчет проводится на адаптивно сгущающихся гексаэдральных сетках типа «восьмеричное дерево».

Ключевые слова: вычислительная технология, течения со свободной поверхностью, компьютерная графика.

Введение

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

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

Течение вязкой несжимаемой жидкости описывается уравнениями Навье-Стокса. Возможным компромиссом между сложностью, реалистичным поведением и контролем над потоком является технология, разрабатываемая в последние десятилетия группами специалистов, занимающихся компьютерной графикой [1-4]. В ее основе лежит проекционный метод [5, 6], используемый для приближенного решения системы уравнений Навье-Стокса. Для работы со свободной поверхностью предлагается использовать два взаимодополняющих подхода: метод частиц и метод функции уровня [7].

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

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

Постановка задачи и базовые уравнения

Рассматривается система уравнений Навье-Стокса, описывающая движение несжимаемой жидкости в области Q . Она состоит из уравнений момента и несжимаемости:

--V Ди + (и-V) + Vp = f,

З/ (1)

V-и = 0,

где V - кинематическая вязкость, / - время, и = (и, V, ') - поле скоростей, р - давление, а f - объемные силы, действующие на жидкость (например, сила тяжести).

Стоит отметить, что граница ЗО области О , которую занимает жидкость, состоит из двух частей: неподвижная граница (стенки сосуда) и перемещающаяся по инерции свободная поверхность. На неподвижной границе поле скоростей удовлетворяет условию Дирихле. Оно может быть как однородным (условие прилипания), так и неоднородным (например, втекающий поток). Для свободной поверхности может быть задано соотношение между давлением жидкости и силами поверхностного натяжения.

Для описания положения свободной границы вводятся функция уровня и частицы. Поверхность

определяется множеством точек х е Ш , где функция уровня ф (х) = 0. Для области, заполненной жидкостью, верно ф (х) < 0, в то время как для воздушной части выполняется ф (х) > 0. Продвижение свободной поверхности описывается уравнением переноса функции уровня:

ф+ ^ф = 0. (2) В ряде приложений требуется инициализировать функцию уровня как расстояние до поверхности со знаком и поддерживать это свойство на протяжении расчета. Помимо определения положения поверхности, функция уровня также несет в себе информацию о ее геометрии: единичная нормаль к поверхности определяется по формуле п = Vф / |Vф|, а локальная кривизна есть к = V - п.

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

Описание алгоритма

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

Для приближенного решения уравнений Навье-Стокса (1) с подвижной границей (2) существует несколько подходов разной степени сложности: от метода дробных шагов [3] до полностью неявных схем [8]. В данной работе используется метод дробных шагов как наименее сложный с вычислительной точки зрения. Подробное описание шагов алгоритма можно найти в [9, 10]. Временной шаг метода состоит из следующих подшагов:

1. обновление поля скоростей:

- решение уравнения моментов (конвективный перенос, действие диффузии и объемных сил);

- проекция на подпространство бездивергентных скоростей;

2. обновление положения свободной поверхности:

- продвижение функции уровня;

- продвижение частиц;

- взаимная корректировка частиц и функции уровня;

- реинициализация (восстановление функции уровня как расстояния до поверхности со знаком);

3. продвижение области;

4. перестроение сетки.

Отметим, что первый подшаг представляет собой вариант проекционного метода для задачи На-вье-Стокса с фиксированной границей. В качестве таковой выступает свободная поверхность, взятая с предыдущего момента времени. Проекционный метод применяется в два этапа. На шаге-предикторе решается уравнение моментов. Конвективный перенос осуществляется с помощью полу-Лагранжева метода, диффузия и объемные силы накладываются явным образом. Для того чтобы сделать полученное поле скоростей и° бездивергентным, вводится коррекция давления, получаемая при решении сеточного уравнения Пуассона, и с ее помощью корректируется поле скоростей:

-V-р) = -—(V-и°), и = и°-Д/р.

Д/

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

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

||Уф(x)| = 1, x eQuQffl-r , [ф (x) = 0, x eSQ, где Q.air - область, заполненная воздухом.

Сначала получается начальное приближение в поверхностных ячейках, для чего строится триангуляция свободной поверхности по методу марширующих кубов (Marching Cubes) [11]. После этого решается уравнение эйконала во всей остальной области при помощи быстро идущего метода (Fast Marching Method) [5].

Для некоторых шагов алгоритма, таких как перенос скоростей, функции уровня и частиц, а также перестроения сетки, написана параллельная версия с использованием технологии OpenMP. Для решения системы, которую дает сеточное уравнение Пуассона на шаге проекции, используется пакет PETSc.

Результаты

Описанная технология моделирования использовалась при создании всех графических примеров, приведенных в этой работе. На рис. 1 можно видеть процесс заливания стаканом воды. На рис. 1 изображена модель Армадильо (Броненосца). Модель задана при помощи триангуляции (рис. 1, а), состоящей из 346 тыс. треугольников. В качестве начального значения функции уровня (рис. 1, б) задается расстояние до поверхности модели со знаком. После этого в полученный объем жидкости ударяет струя воды (рис. 1, в, г).

Рис. 1. Модель Армадильо (а), преобразованная в жидкость (б), в которую ударяет струя воды (в, г)

В таблице приведена зависимость числа элементов (N - общее число расчетных ячеек; - число ячеек, заполненных водой) и времени работы подшагов алгоритма от шага сетки (гшг - время построения начального положения и инициализации данных; гШа1 - время одного шага алгоритма; -перенос скоростей; грГО]- - проекция на бездивергентное подпространство скоростей; г- экстрапо-

ляция скоростей с поверхности в воздух; l - перенос функции уровня; tpart - перенос частиц и коррекция функции уровня; tmesh - перестроение сетки; treinit - реинициализация). Видно, что время выполнения одного шага алгоритма пропорционально числу ячеек, заполненных водой, и обратно пропорционально квадрату шага сетки вблизи поверхности. Расчеты проводились на рабочей станции с двумя 4-ядерными процессорами Intel Xeon Х5355@2.66ГГц.

hmin 1/32 1/64 1/128 1/256 1/512

N N ), число элементов 37 409 (1768) 54 377 (7842) 121 101 (36 022) 381305 (159 211) 1 404 439 (684 521)

tinit , с 10,5 13,2 24,2 66,9 237,2

tadv , с 0,18 0,77 3,53 15,74 66,1

t с 1 pro] ■> ^ 0,20 0,60 2,10 8,66 35,9

tfillair , с 0,11 0,35 1,32 5,12 19,9

tls , с 0,03 0,06 0,23 0,98 3,9

t с 1 part ' v 0,07 0,24 1,03 4,37 18,4

t с lreimt ' v 0,12 0,26 1,00 4,43 19,9

tmesh , с 0,10 0,21 0,68 2,42 9,6

ttotal , с 0,81 2,49 9,89 41,72 173,7

Таблица. Зависимость числа элементов и времени работы подшагов алгоритма от шага сетки А,

в г

Рис. 2. Модель Армадильо, заданная в качестве неподвижного препятствия и обтекаемая потоком жидкости: итоговое изображение (а) и срезы расчетной сетки с поверхностью (б, в) и без (г)

В примере на рис. 2 используется модель Армадильо из предыдущего примера для задания неподвижных границ расчетной области. Кубическая область с заданным препятствием заполняется потоком воды. Показано итоговое изображение (рис. 2, а) и разрезы расчетной сетки с поверхностью (рис. 2,б, в) и без (рис. 2, г).

Заключение

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

Работа выполнена при финансовой поддержке грантов РФФИ 08-01-00159-a, 09-01-00115-а, программы Президиума РАН 21П «Фундаментальные науки - медицине» и ФЦП «Научные и научно-педагогические кадры инновационной России» 2009-2013 годы.

Автор выражает благодарность К.М. Терехову за помощь в доработке программного кода, а также Ю.В. Василевскому, А.А. Данилову, М.А. Ольшанскому и В.А. Лещинскому за ценные советы и участие в обсуждении спорных моментов и постановки задачи.

Литература

1. Carlson M. Rigid, Melting, and Flowing Fluid, PhD thesis, Georgia Institute of Technology, 2004.

2. Osher S., Fedkiw R. Level Set Methods and Dynamic Implicit Surfaces. - Springer-Verlag, 2002.

3. Osher S. and J.Sethian. Fronts propagating with curvature-dependent speed: Algorithms based on Hamilton-Jacobi equations // Jour. Comp. Phys. - 1988. - V. 79. - Р. 12-49.

4. Sethian J.A. Level Set Methods and Fast Marching Methods: Evolving Interfaces in Computational Geometry, Fluid Mechanics, Computer Vision, and Materials Science, Cambridge University Press, Cambridge, 1999.

5. Chorin A. Numerical solution of the Navier-Stokes equations // Math. Comp. - 1968. - V. 22. - Р. 745-762.

6. Яненко Н.Н. Метод дробных шагов решения многомерных задач математической физики. -Новосибирск: Наука, 1967.

7. Enright D., Fedkiw R., Ferziger J., Mitchell I. A hybrid particle level set method for improved interface capturing // J. Comp. Phys. - 2002. - V.183. - Р. 83-116.

8. Gross S., Reichelt V., Reusken A. A Finite Element Based Level Set Method for Two-Phase Incompressible Flows. Computing and Visualization in Science, 2006.

9. Никитин К.Д. Технология расчета течений со свободной границей с использованием динамических гексаэдральных сеток. Численные методы, параллельные вычисления и информационные технологии // Сборник научных трудов / Под ред. Вл.В. Воеводина и Е.Е. Тыртышникова. - М.: Изд-во МГУ, 2008. - С. 183-198.

10. Nikitin K., Vassilevski Yu. Free surface flow modelling on dynamically refined hexahedral meshes // RJNAMM. - 2008. - V. 23. - Р. 469-485.

11. Lachaud J.-O. Topologically defined iso-surfaces // DGCI. - 1996. - Р. 245-256.

Никитин Кирилл Дмитриевич - Институт вычислительной математики РАН, аспирант, nikitink@dubki.ru УДК 004.622

МЕТОДЫ МАРКИРОВАНИЯ ЦИФРОВЫХ ИЗОБРАЖЕНИЙ В ЧАСТОТНОЙ ОБЛАСТИ А.Ю. Тропченко, Ван Цзянь

Рассматриваются методы маркирования изображений цифровыми водяными знаками, например, для авторизации продукции мультимедиа. Для совмещения реализованных алгоритмов сжатия изображений на основе вейвлет-преобразования с алгоритмами защиты авторских прав наиболее подходит метод вейвлет-маркирования Ли Хуа. Именно в этом методе цифровая подпись помещается в восприимчиво значимую часть преобразованного изображения, которую рассмотренные алгоритмы сжатия стараются сохранить наиболее полно. Ключевые слова: цифровой водяной знак, маркирование, вейвлет, устойчивость.

Введение

Проблема защиты авторского права на мультимедиа-информацию привела к необходимости разработки технологии защиты авторского права и технологии защиты от копирования мультимедиа-информации. Одной из таких технологий является цифровое маркирование данных. При этом необходимо создать алгоритмы, которые позволяли бы подписывать или маркировать мультимедиа-данные без потери информативности и качества воспроизведения, однако при этом в любой момент можно было бы определить, кому принадлежат авторские права на тот или иной мультимедиа-продукт. Данные, скрыто встроенные в мультимедиа-продукты, называют цифровым водяным знаком - ЦВЗ [1, 2].

i Надоели баннеры? Вы всегда можете отключить рекламу.