метод конечных объемов: неструктурированная сетка против адаптации октодерева + разрезание клеток


12

Я работаю с библиотекой вычислительной механики континуума OpenFOAM C ++ (она может иметь дело с взаимодействием жидкость-твердое тело, потоки МГД ...), которая использует произвольные неструктурированные сетки. Это было обусловлено идеей использования преимущества быстрой генерации (обычно автоматической) неструктурированных сеток для моделирования задач сложной геометрии.

Однако недавно я столкнулся с другим подходом: адаптивными сетчами октри с клеточной «обрезкой», где агрессивное уточнение сетки используется для описания сложной геометрии.

С точки зрения чисел, картеанские сетки гораздо точнее, поэтому мой вопрос: есть ли у кого-нибудь опыт использования / реализации одного или обоих этих подходов? Как они сравнивают друг с другом?

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


Другая альтернатива: декартово-клеточные методы. Есть большая литература; эта статья может быть хорошей отправной точкой: dx.doi.org/10.1016/S0378-4754(02)00107-6 .
Дэвид Кетчон

Ответы:


5

Я думаю, что все более современные библиотеки FEM (например, deal.II, libmesh, ...) используют схему на основе октри (или, если быть более точным: октавные леса, с одним деревом, начинающимся с каждой ячейки неструктурированной грубой сетки) ). В этом есть много преимуществ, в первую очередь потому, что вы знаете иерархию ячеек сетки. Это подразумевает, что вы можете легко выполнить грубое, геометрическое многосеточное и т. Д., Что невероятно сложно, если вы начнете с мелкой неструктурированной сетки. Кроме того, разбиение становится почти тривиальной проблемой. Недостатком подхода является то, что если у вас сложная геометрия, ранее вам нужно было только описать ее генератору сетки, тогда как теперь вам также нужно описать ее в коде FEM, потому что вам нужна геометрия при уточнении ячейки, расположенной на граница.

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


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

Я думал, что уже принял этот ответ .. :) Извините за задержку.
tmaric

4

h2:1

hh106r является хорошим ресурсом) можно использовать для выравнивания движущихся анизотропных объектов.

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

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


2

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.