Перейти к статье

 

Укрупнение разбиения на треугольники

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

set developer commands {on|off}

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

Coarsen {Node|Edge|Tri} <range> {factor|Size <double> [Bias <double>]} [Depth <int>|Radius <double>] [Sizing_Function] [no_smooth]

Coarsen {Vertex|Curve|Surface} <range> {Factor|Size<double> [Bias<double>]} [Depth<int>|Radius<double>] [Sizing_Function] [no_smooth]

Важно: В настоящее время эти команды реализованы только для элементов в форме треугольника.

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

Ниже приводится описание каждого из вариантов укрупнения:

Factor

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

coarsen_tri.gifcoarsen_tri2.gif

Рис. 1 Пример укрупнения всех треугольников с коэффициентом 2

Size

Параметры размера и смещения полезны, когда требуется определенный размер элемента в известном местоположении. Это может быть использовано для локального огрубения вокруг вершины или кривой. Аргумент смещения можно использовать с параметром Size для определения скорости, с которой размеры элементов будут изменяться в соответствии существующие размеры элементов в модели. Допустимые входные значения для смещения больше 1,0 и представляют максимальное изменение размера элемента от одного элемента к следующему. Поскольку огрубление является дискретной операцией, то Параметры размера и смещения могут только приблизительно соответствовать желаемым входным значениям. Это может привести к очевидным различиям в размерах элементов. Использование параметра сглаживания по умолчанию может уменьшить этот эффект. Следует также отметить, что Параметр размера не зависит от параметра Фактора. Можно указать либо коэффициент, либо размер, но не оба сразу.

Depth

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

tri_coarsen_depth0.giftri_coarsen_depth1.gif

Рис. 2 Укрупнение, выполненное в узле с коэффициентом = 3 и глубиной = 3

Radius

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

Sizing Function

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

No_Smooth

Режим по умолчанию для операций огрубления заключается в выполнении сглаживания после огрубления элементов. Это, как правило, обеспечивает элементы более высокого качества. В некоторых случаях может потребоваться сохранить исходное расположение узлов после укрупнения. Опция no_smooth предоставляет эту возможность.