Сравнение с методом марширующих кубов
Fig. 4.
Область задана как результат пересечения двух эллипсоидов с последующим скручиванием.
|
Fig. 5.
Минимальный двугранный угол 12.5. Максимальный двугранный угол 159.2.
|
Fig. 6.
Реконструкция изоповерхности марширующими кубиками.
|
Алгоритм марширующих кубов (Лоренсен, 1987) не справляется с задачей восстановления острых ребер.
Методы задания неявных областей
Рассмотрим ограниченную область с кусочно-гладкой границей.
Пусть задана некоторая функция такая, что во внутренних точках области выполнено , а в дополнении области справедливо , как показано на рис. 1.
Предполагается, что функция непрерывна по липшицу, представима в виде разности выпуклых функций, является кусочно-гладкой, и ее производные вдоль некоторого невырожденного векторного поля, транверсального к , существуют и не равны нулю в некотором конечном слое около .
- приближенное построение функции расстояния со знаком
- поверхностная триангуляция;
- облако точек;
- набор плоских сечений;
- воксельная решетка;
- модель САПР, заданная одновременно -сплайнами и тесселяцией
- использование неполных и противоречивых данных при помощи метода радиальных базисных функций;
- булевы операции над областями.
Построение тетраэдральных сеток в неявных областях
- область задается посредством "оракула" как точка пересечения нулевой изоповерхности с произвольным отрезком прямой. Шевчук, 2007 - алгоритм для построения тетраэдральных сеток в областях с гладкой границей, Boissonat J.-D., Cohen-Steiner D., Mourrain B., Rote G., Vegter G., 2007 - описание алгоритма из пакета CGAL
- область задается посредством неявной функции со знаком (Перссон, Стренг, 2004)
Построение неявной функции с использованием булевых операций
Примеры примитивов
сфера:
куб:
конечный круговой цилиндр:
Пусть и - неявные функции, задающие области и . Тогда, в зависимости от способа задания области , функция будет выглядеть следующим образом:
(1) |
Построение неявной функции с использованием РБФ Аппроксимант неявной функции по набору отрезков ищется в следующем виде (Шевчук, 2004)
(2) |
где - длина ребра , а и имеют вид
где - произвольная внутренняя точка отрезка , а - единичная нормаль к ориентированному ребру, которая задает целевое значение градиента неявной функции. .
в) г)
Введение
Руководитель направления: д.ф.-м.н. В.А. Гаранжа
Построение расчетных сеток является неотъемлемой составляющей и важным этапом в задаче численного моделирования течений жидкости и газа вокруг тел сложной формы. Геометрические модели тел и областей в задачах вычислительной аэродинамики и прочности, как правило, создаются с использованием "тяжелых" пакетов САПР, таких, как Catia, Solidworks и др. Для работы с такими моделями необходимо использовать специальные библиотеки, которые обычно для краткости называют "геометрическими ядрами". Наиболее широкое распространение получило геометрическое ядро фирмы Parasolid.
В задачах инженерного анализа и качества производства модели восстанавливаются по данным трехмерного сканирования с использованием методов трехмерной реконструкции. Методы реконструкции также широко используются в компьютерной графике, биологии, медицине, архитектуре и во многих других прикладных и фундаментальных областях. Достаточно типична ситуация, когда геометрическая модель содержит различные дефекты, неточности, противоречия как с геометрической точки зрения, так и топологически.
Таким образом, обычно этап построения сетки предваряется этапом "чистки" геометрии, на выходе из которого получается корректная "твердотельная" геометрическая модель. Математическое обеспечение, используемое для исправления геометрических моделей является весьма сложным, изощренным и дорогостоящим. К современных алгоритмам построения расчетных сеток предъявляется требование устойчивости к сравнительно небольшим дефектам описания геометрии, что позволяет избежать этапа исправления геометрии.
Методы и алгоритмы построения расчетных сеток
Для задач численного моделирования течений жидкости и газа можно использовать различные типы расчетных сеток, включая криволинейные блочно-структурированные сетки, тетраэдральные сетки, гибридные сетки, состоящие их тетраэдров с призматическими слоями вблизи тел с граничными условиями прилипания, общие неструктурированные сетки, состоящие из тетраэдров, призм, пирамид и гексаэдров, полиэдральные сетки, состоящие из невыпуклых многогранных ячеек с произвольным числом граней, а также адаптивные декартовы сетки с иерархической структурой, основанной на восьмеричных деревьях и с использованием усеченных ячеек.
Для каждого из типа сеток можно указать свои преимущества и недостатки. Для тетраэдральных сеток существуют быстрые и надежные алгоритмы построения в случае тел сложной формы, однако они не являются самым эффективным инструментом при наличии пограничных слоев и слоев смешения. Сравнительно простой и эффективный способ исправления базовых недостатков тетраэдральных сеток основан на построении слоев сильно анизотропных призматических сеток в пограничных слоях и других областях анизотропии решений. Криволинейные блочно структурированные сетки позволяют получать численные решения с высокой степенью точности и достоверности, но их построение до сих пор не поддается автоматизации и требует длительно времени и больших трудозатрат. Методы построения неструктурированных полностью гексаэдральных сеток в настоящее время активно развиваются, но проблема их автоматического построения еще не решена.
В работе группы основное внимание уделяется вариационным методам построения, распутывания и оптимизации расчетных сеток. Основные приложения - это построение блочных сеток со сравнительно небольшим числом блоков для тел сложной формы, оптимизация сеток различных типов, таких как тетраэдральные, гексаэдральные и полиэдральные, отображение поверхностей и натягивание сеток на поверхности сложной формы. Еще одно важное направление - это построение тетраэдральных сеток на основе методов самоорганизации по неточным и противоречивым геометрическим моделям. В этом методе можно указать следующие основные компоненты:
- задание областей посредством неявных функций;
- построение тетраэдральных сеток в неявных областях;
- самоорганизация вершин сетки путем расталкивания;
- проекция вершин на границу области;
- "проявление" острых ребер границы;
- оптимизация для удаления плоских тетраэдров.
В задаче построения структурированных и блочно-структурированных сеток можно выделить следующие ключевые ингредиенты
- вариационный принцип для построения квазиизометрических отображений;
- итерационный алгоритм;
- движение точек по границе неявной области;
- распутывание и оптимизация гексаэдральных сеток:
- примеры распутывания и оптимизации.
Текущий статус разработки сеткостроителя и программы визуализации, планы работ и перспективы развития в области построения сеток
- В 2011 реализована полная технологическая цепочка построения сеток: модель в формате STEP ? тесселированная модель → модель, разрезанная на блоки → построитель поверхностных сеток → построитель объемных сеток;
- для обработки моделей САПР используется геометрическое ядро OpenCascade;
- в текущей версии рассматриваются удлиненные тела вращения с элементами управления (рули, крылья и т.д.), разрезание на блоки производится плоскостями;
- в текущей версии реализовано внутреннее блочное представление сеток, вычислительное ядро построителя поддерживает блочную структуру;
- адаптация сеток к кривизне находится в исследовательской фазе;
- программа визуализации позволяет показывать сетки, расчетные поля, изолинии, изоповерхности, в том числе в стереорежиме с очками.
Первоочередные задачи разработки построителя сеток и визуализатора.
- реализация устойчивой версии адаптации поверхностной сетки к кривизне с учетом зашумленности поверхности;
- реализация полуавтоматического построителя блочных сеток на поверхности, требует интеграции с графическим интерфейсом пользователя;
- реализация трехмерных сеток с квазидвумерным блочным разбиением;
- задание трехмерного блочного биения, требует интеграции с графическим интерфейсом пользователя;
- реализация построителя тетраэдральных сеток по заданной граничной триангуляции.
- задание блоков сетки в визуализаторе.
Литература
- Гаранжа В.А., Капорин И.Е. Регуляризация барьерного вариационного метода построения расчетных сеток // Ж. вычисл. матем. и матем. физ. 1999. Т.39. 9. С.1489-1503.
- Garanzha V.A. Discrete extrinsic curvatures and approximation of surfaces by polar polyhedra // Ж. вычисл. матем. и матем. физ. 2010. Т.50. 1. С.71-98. Гаранжа В.А. Барьерный метод построения квазиизометрических сеток // Ж. вычисл. матем. и матем. физ. 2000. Т.40, 11. С.1685-1705.
- Гаранжа В.А. Управление метрическими свойствами пространственных отображений // Ж. вычисл. матем. и матем. физ. 2003. Т.43. 6. С.818-829.
- Гаранжа В.А., Замарашкин Н.Л. Пространственные квазиизометричные отображения как решения задачи минимизации поливыпуклого функционала // Ж. вычисл. матем. и матем. физ. 2003. Т.43. 3, С.854-865.
- Гаранжа В.А., Капорин И.Е. О сходимости градиентного метода минимизации функционалов теории упругости с конечными деформациями и барьерных сеточных функционалов // Ж. вычисл. матем. и матем. физ. 2005. Т.45. 8. С.1450-1465.
- Гаранжа В.А. Теоремы существования и обратимости для вариационного построения квазиизометричных отображений со свободными границами // Ж. вычисл. матем. и матем. физ. 2005. Т.45. 3. С.484-494.
- Гаранжа В.А. Поливыпуклые потенциалы, обратимые деформации и термодинамически согласованная запись уравнений нелинейной теории упругости // Ж. вычисл. матем. и матем. физ. 2010. Т.50. 9. C.1-29.
- Garanzha V.A. Barrier variational generation of quasi-isometric grids // Num. Linear Algebra Appl. 2001. V.8. 5. P.329-353.
- Branets L.V., Garanzha V.A. Distortion measure for trilinear mapping. Application to 3-D grid generation // Num. Linear Algebra Appl. 2002. V.9. 6-7. P.511-526.
- Garanzha V.A. Maximum norm optimization of quasi-isometric mappings // Num. Linear Algebra Appl. 2002. V.9 6-7. P.493-510.
- Garanzha V.A. Variational principles in grid generation and geometric modeling: theoretical justifications and open problems // Num. Linear Algebra Appl. 2004. V.11. P. 535-563.
- Garanzha V.A., Kaporin I.E., Konshin I.N. Truncated Newton type solver with application to grid untangling problem // Num. Linear Algebra Appl. 2004. V.11, 5-6. P.525-533.
- Garanzha V.A. Quasi-isometric surface parameterization // Appl. Num. Math. 2005. V.55. 3. P.295-311.
- Garanzha V.A. Computation of discrete curvatures based on polar polyhedra theory. Proceedings of International Conference "Numerical geometry, grid generation and scientific computing", Moscow, 10-13 June 2008, M.: Folium, 2008. P.182-189.
- Garanzha V.A. Approximation of the curvature of Alexandrov surfaces using dual polyhedra // Rus. J. Numer. Analys. Modeling. 2009. V.24. 5. P.409-423.
- Garanzha V.A. Discrete extrinsic curvatures and approximation of surfaces by polar polyhedra // Ж. вычисл. матем. и матем. физ. 2010. Т.50. 1. С.71-98.