Поиск по документации
Введите не менее 2 символов
Введите не менее 2 символов
![]() |
CAE Fidesys 9.0 Руководство пользователя |
Параметры Sculpt для задания адаптивной сетки. Sculpt использует исходную перекрывающую декартову сетку, которая служит основой для всей гексаэдральной сетки. Размер сетки по умолчанию будет примерно соответствовать ячейкам постоянного размера перекрывающих линий (grid). Параметр адаптивности позволяет пользователю автоматически разбивать ячейки декартовой сетки на основе геометрических критериев, что приводит к уменьшению ячеек в областях с более мелкими деталями. Адаптированная сетка затем используется в качестве основы для процедуры Sculpt.

Адаптивная сетка начинается с крупной декартовой сетки постоянного размера. Ячейки рекурсивно разделяются на основе геометрических критериев и переходов между уровнями. Проекции и сглаживание выполняются для улучшения качества элементов.
Для управления адаптивностью в Sculpt используются три параметра: adap_type, adap_levels и adap_threshold. Параметр Adapt_type управляет методом и геометрическими критериями, используемыми для принятия решения о том, какие ячейки следует разделить в сетке, а параметр adap_levels определяет максимальное количество раз, которое может быть разделена одна ячейка. В зависимости от выбранного параметра adap_type, значение параметра adap_threshold используется как конкретное геометрическое пороговое значение, при котором принимается решение разделить любую заданную ячейку.

Первоначальный разрез адаптированной сетки из модели дракона перед выполнением операций Sculpt

Итоговая сетка модели дракона и вид сетки в разрезе показаны с 4 уровнями адаптивного улучшения
Adaptive Meshing --adapt -adp --adapt_type -A <arg> Adaptive meshing type --adapt_threshold -AT <arg> Threshold for adaptive meshing --adapt_levels -AL <arg> Number of levels of adaptive refinement --adapt_export -AE Export exodus mesh of refined grid --adapt_non_manifold -ANM Refine at non-manifold conditions Sculpt Command Summary
Command: adapt_type Adaptive meshing type Input file command: adapt_type <arg> Command line options: -A <arg> Argument Type: integer (0, 1, 2, 3, 4, 5) Input arguments: off (0) facet_to_surface (1) surface_to_facet (2) surface_to_surface (3) vfrac_average (4) coarsen (5) vfrac_diff (6) vfrac_difference (6)
Описание команды:
Эта опция автоматически улучшает сетку в соответствии с заданными пользователем критериями. Без этой опции везде в модели будет предполагаться постоянный размер ячейки. Для построения сетки Sculpt использует приближение к точной геометрии модели САПР путем интерполяции поверхностей сетки из выборок Volume Fraction в каждой ячейке декартовой сетки. В общем, чем выше разрешение декартовой сетки, тем больше выполняется выборка и тем точнее сетка представляет исходную геометрию. Выбранный параметр adap_type будет управлять критериями, используемыми для уточнения сетки. Если критерии не удовлетворены, уточнение будет продолжаться до тех пор, пока пороговое значение, указанное параметром Adapt_threshold не будет удовлетворено повсюду, или пока не будет достигнуто максимальное количество уровней (adap_levels). Доступны следующие критерии для улучшения:

Расстояние от фасета STL до приближенной геометрии. Расстояние d измеряется между гранями (зеленые), где они пересекают края линий сетки, до ближайшей точки на интерполированной геометрии. Если d > Adapt_threshold, тогда ячейка разбивается.
surface_to_facet (2): Этот критерий аналогичен facet_to_surface (1), за исключением того, что места, определенные для выборки, набираются из вершин, представляющих аппроксимированные поверхности. Ближайшее расстояние, измеренное до любого из аспектов в модели STL, используется в качестве критерия для улучшения сетки. Те ячейки в вершинах, где измеренное расстояние превышает Adapt_threshold, идентифицируются для уточнения. Этот параметр обычно быстрее, чем 1, но может пропускать функции, если исходное разрешение сетки слишком грубое. Этот параметр также можно использовать только в том случае, если входная геометрия поступает из файла STL. Опции microstructure и diatom в настоящее время не поддерживаются.

Расстояние от приближенной геометрии до фасета STL. Расстояние d измеряется между точками на интерполированной геометрии, соответствующими спроецированной точке на сетке, до ее ближайшей точки на одном из фасетов STL. Если d > Adapt_threshold, тогда ячейка разбивается.
surface_to_surface (3): Этот критерий будет проверять каждую ячейку для вычисления локальной интерполированной поверхности для ячейки и сравнения с поверхностью, интерполированной для ее восьми подразделенных дочерних ячеек. Если расстояние между этими двумя аппроксимированными поверхностями больше заданного пользователем adap_threshold, то ячейка будет равномерно уточнена. Эта опция может использоваться с исходной геометрией STL и опцией diatom, но не с microstructures.

Расстояние между примерной зависимой и главной геометрией. После вычисления интерполированной геометрии для уровня n и уровня n + 1, d - это расстояние между двумя представлениями геометрии. Ячейки, где d > Adapt_threshold, разделяются.
vfrac_average (4): Каждая ячейка декартовой сетки проверяется, чтобы определить, следует ли ее разделить на восемь ячеек. Объемная доля главной (родительской) ячейки сравнивается со средней объемной долей ее восьми дочерних ячеек. Если абсолютная разница между средней долей дочернего объема и его долей родительского объема больше, чем заданный пользователем Adapt_threshold, то ячейка равномерно уточняется (улучшается). Adapt_threshold для этого случая должен быть числом от 0 до 1. Меньшее число будет более чувствительным к изменениям в геометрии, что обычно приводит к большему мельчению внешних поверхностей.

Разница в ячейках для объемных долей (Volume fractions). Объемные доли (Volume fractions) оцениваются для 8 дочерних ячеек ячейки на уровне n. В этом примере показано, где одна или несколько долей объема на уровне n + 1 нижних левых ячеек не отличаются более чем на пороговое значение d, поэтому они остаются неразделенными.
coarsen (5): Учитывая плотный набор данных в декартовой сетке, Sculpt начнет с грубого разрешения и уточнит, чтобы зафиксировать изменения в данных. Он использует параметр adap_levels для определения грубости исходной сетки. Например, плотная сетка из ячеек LxMxN будет начинаться с начального разрешения L / 2 ^ a x M / 2 ^ a x N / 2 ^ a, где a - значение, определяемое пользователем adap_levels. Ячейки будут идентифицированы для уточнения, если объемная доля (volume fractions) любого материала в ячейке больше, чем заданный пользователем adap_threshold, и меньше, чем 1.0-adap_threshold. Этот параметр доступен только для форматов input_spn и input_micro. Это наиболее полезно для случаев, когда изначально предоставляются очень плотные данные, которых было бы слишком много для использования в качестве сетки FEA. Этот метод эффективно увеличивает сетку внутри и снаружи твердых тел, но сохраняет высокое разрешение на геометрических границах.

Уточнить до плотных данных (укрупнение). Исходная сетка с разрешением N X M увеличивается до N0 X M0 на основе значения adap_levels. Затем грубые ячейки разделяются аналогично критериям в adap_type = 4.
vfrac_difference (6): Каждая ячейка декартовой сетки проверяется, чтобы определить, следует ли ее разделить на восемь ячеек. Объемная доля родительской ячейки сравнивается с каждой из объемных долей ее восьми дочерних ячеек. Если абсолютная разница между любой из дочерних объемных долей и ее родительской объемной долей больше, чем заданный пользователем Adapt_threshold, то ячейка равномерно уточняется. Adapt_threshold для этого случая должен быть числом от 0 до 1. Меньшее число будет более чувствительно к изменениям в геометрии, что обычно приводит к большему измельчению сетки на поверхностях.
Чтобы поддерживать соответствие сетки, переходные элементы будут вставлены для перехода между меньшими и большими размерами элементов. По умолчанию для параметра adap_type установлено значение off (0) (либо адаптивное уточнение не выполняется).
Во всех случаях определяется исходная декартова сетка. по xint, yint и zint или значение cell_size будет использоваться в качестве основы для уточнения и будет определять приблизительный наибольший размер элемента в сетке.
Command: adapt_threshold Threshold for adaptive meshing Input file command: adapt_threshold <arg> Command line options: -AT <arg> Argument Type: floating point value >= 0.0
Описание команды:
Это значение контролирует чувствительность адаптивности. Используемое значение должно быть основано на adap_type:
Для этих параметров выбранный adap_type представляет собой абсолютное расстояние между поверхностями или гранями. Если расстояние превышает adap_threshold, ближайшая ячейка или ячейки будут идентифицированы для уточнения. Чем меньше это число, тем более чувствительной будет адаптация и больше результирующее количество элементов. Если не указано иное, Adapt_threshold будет определяться следующим образом:
adapt_threshold = 0.25 * cell_size / adapt_levels^2
Значение adap_threshold в этом случае представляет собой максимальную разницу в доле объема между родительской ячейкой и средним значением ее восьми дочерних ячеек. Это значение должно быть от 0.0 до 1.0. Чем меньше число, тем более чувствительной будет адаптация и тем больше будет количество результирующих элементов. Если не указано иное, используется значение по умолчанию Adapt_threshold, равное 0.01.
Обратите внимание, что пользовательский параметр adap_threshold может не удовлетворяться повсюду в сетке, если значение, определенное для adap_levels, превышено.
Command: adapt_levels Number of levels of adaptive refinement Input file command: adapt_levels <arg> Command line options: -AL <arg> Argument Type: integer >= 0
Описание команды:
Максимальное количество выполняемых уровней адаптивного уточнения. Один уровень уточнения разделит каждую ячейку декартовой сетки, идентифицированную для единообразного уточнения, на восемь дочерних ячеек. Два уровня уточнения снова разделят каждую ячейку на восемь, в результате чего будет шестьдесят четыре дочерних ячейки, три уровня - на 256 и так далее. Максимальное количество подразделений на ячейку определяется как:
number of cells = 8^adapt_levels
Минимальная длина ребра для любой ячейки будет равна:
min cell edge length = cell_size / adapt_levels^2
Фактическое количество используемых уровней уточнения будет определяться тем, соответствуют ли все ячейки Adapt_threshold или превышено значение adap_levels. По умолчанию значение Adapt_levels равно 2. Обратите внимание, что установка Adapt_levels более 4 или 5 может привести к увеличению времени вычислений.
Command: adapt_export Export exodus mesh of refined grid Input file command: adapt_export Command line options: -AE
Описание команды:
Экспортирует сетку exodus, содержащую уточненную декартову сетку. Реконструкция интерфейса, вставка пограничного слоя и сглаживание еще не применялись к этой сетке. Это базовая сетка, используемая в качестве входных данных для Sculpt. Один файл на процессор будет экспортирован в форме «vfrac_adapt.e.x.x». Созданная сетка exodus также будет содержать вычисленные объемные доли (volume fraction) для каждого материала, присутствующего в модели, представленного как переменные элемента.
Этот параметр в основном используется для отладки параметра уточнения. Однако сетка, созданная с помощью этой опции, может использоваться в качестве базовой сетки при использовании с опцией input_mesh. Например, вместо параметров декартовой сетки входная сетка может быть указана как input_mesh = vfrac_adapt.e.1.0. Sculpt будет использовать уточненную сетку и переменные элемента объемной доли для построения окончательной сетки.
Command: adapt_non_manifold Refine at non-manifold conditions Input file command: adapt_non_manifold Command line options: -ANM
Описание команды:
Если уточнение приводит к неоднородному состоянию в узле, окружающие ячейки будут идентифицированы для уточнения. В некоторых случаях использование этого параметра приведет к более точному соответствию геометрии тонких слоев или мелких элементов. Использование этой опции обычно приводит к появлению большего количества элементов на границах раздела материалов. Обратите внимание, что во всех случаях условия, не относящиеся к многообразию, будут разрешены даже без этой опции на следующем шаге, однако без этой опции результирующее решение может не соответствовать геометрии так точно.
Параметр adap_non_manifold по умолчанию отключен. В настоящее время он реализован только для adap_type, которые используют определение геометрии STL. (Adaptor_type = 1,2,3).