Сетка сложных геометрических областей


16

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

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

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

Редактировать: я недавно нашел частичный ответ на этот вопрос: изогеометрический анализ (IGA). IGA можно рассматривать как расширение метода конечных элементов для решения проблемы генерации сетки путем создания сетки непосредственно из САПР. Он использует сплайновое описание геометрии САПР для автоматического построения как сетки, так и пространства конечных элементов.

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

Этот метод, по-видимому, действительно интересен, но не получил широкого распространения, поскольку является относительно новым (10 лет).


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

1
Это кажется слишком широким для меня в его нынешнем виде. Есть целые книги, написанные на сетке. Можно ли еще больше сузить суть вопроса?
Пол Гесслер

Не эксперт, но считаю, что 90% + это автоматически. Ручная настройка выполняется, если симуляции показывают нереальные результаты или не сходятся. В противном случае я предварительно согласен с @PaulGessler здесь, хотя я думаю, что немного вопрос мог бы работать очень хорошо. Это интересное поле. Вероятно, последняя часть является слишком широкой для меня «тенденциями в ближайшие годы», и проблема может быть изложена более конкретно, например, на конкретном примере.
Пандита

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

@pandita К сожалению, у меня нет такого конкретного примера. Может быть, 90% автоматическое, а может даже 99%. Но оставшиеся 10% или 1% - большая проблема из того, что я слышал.
Беренгер

Ответы:


8

Существует несколько методов построения сложных областей для анализа методом конечных элементов. Они обычно делятся на две категории: структурированные и неструктурированные. Для структурированных сеток в основном вся сетка может быть отображена непосредственно в трехмерный массив координат XYZ, тогда как неструктурированные сетки не могут. Хорошее описание классификаций с картинками здесь: http://en.wikipedia.org/wiki/Grid_classification

В структурированной сетке есть два конкретных типа:

Структурированные сетки:

  • Декартова сетка - это в основном использование шестигранных кубов для представления элементов. Хорошо известным пакетом, использующим декартову сетку, будет Cart3D. Это не очень сложно, но сложность состоит в том, чтобы определить, где кубы пересекают поверхность.

  • Подгонка к телу - в криволинейных сетках с подгонкой к телу их можно разделить на: алгебраические сетки или эллиптические сетки. В любом случае пользователь должен определить точки на границах домена. Для генерации точек внутри области алгебраические сетки обычно используют некоторую вариацию метода, называемого интерполяцией Эрмита, для генерации внутренних точек. Эллиптические сетки могут создавать криволинейные сетки, где в основном все линии сетки являются ортогональными, и, как правило, они используются, когда речь идет о сетчатых сетках. Внутренние точки здесь в основном вычисляются путем решения эллиптического уравнения в частных производных. Учебник defacto для этих типов приспособлений для тела доступен в Интернете здесь: http://www.erc.msstate.edu/publications/gridbook/, Автор этой книги, по сути, считается «отцом генерации сетки», потому что он придумал эллиптическую сетку для генерации сетки.

Неструктурированные сетки

  • Поскольку неструктурированные сетки не могут быть сопоставлены с трехмерным массивом, они также должны указывать сопоставление связности, которое может указывать, какие элементы связаны с другими элементами. Основной алгоритм, который используется, называется «триангуляция Делоне», которая подробно обсуждается здесь: http://en.wikipedia.org/wiki/Delaunay_triangulation . Одна из популярных книг, которая освещает эту тему, называется «Руководство по созданию сетки».

  • Основной алгоритм здесь, учитывая начальный набор точек на границе: (1) Вычислить начальную триангуляцию, (2) Выполнить проверку качества на основе алгоритма уточнения Рупперта ( http://en.wikipedia.org/wiki/Ruppert % 27s_algorithm ), (3) Вставьте или удалите точки на основе алгоритма Рупперта так, чтобы генерируемые тетраэдры имели минимальный угол (например, 24 градуса).

Чтобы ответить на ваш вопрос о критериях, что делает хорошую сетку связанной с рядом факторов, но пара наиболее важных факторов: (1) разрешение сетки (достаточно ли точек сетки, чтобы получить требуемое разрешение) и ( 2) геометрия элементов (перекос, минимальный угол, соотношение сторон и т. Д.). Это обсуждается здесь: http://en.wikipedia.org/wiki/Types_of_mesh. Они оба будут влиять на качество решения конечного элемента. Есть еще один аспект неструктурированной сетки сетки, называемый «Фронт продвижения», который используется для получения точек вблизи границы в случае динамики жидкости.

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

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

Я не думаю, что эти коды сетки когда-либо будут полностью автоматическими, потому что для задания геометрии требуется некоторый уровень ввода, который обычно включает очистку модели САПР. Совсем недавно были разработаны методы для автоматизации многих из этих задач. Генерация внутренних точек домена в наши дни практически полностью автоматизирована. Эти современные системы генерации сетки в наши дни становятся достаточно зрелыми с точки зрения производства высококачественных сеток. Одно из направлений исследований в последнее десятилетие было в области ускорения генерации сетки с помощью параллельной обработки, а в последние несколько лет параллельной генерации сетки с использованием нескольких графических процессоров (GPU).

Здесь представлен полный список программного обеспечения для создания сеток: http://www.robertschneiders.de/meshgeneration/software.html Они должны быть отнесены к одной из трех указанных выше категорий.


Я думаю, что существует возможность для «случайной выборки ядовитых дисков» в домене в виде псевдоструктурированной автоматической сетки. Интересно, можно ли улучшить диаметр диска, рассчитав решение чего-то вроде уравнения теплопроводности и сделав радиус пропорциональным тепловому потоку или тому подобному. youtube.com/watch?v=G94y3YRqSHk sandia.gov/~samitch/papers/SIGGRAPH-MPS-for-posting.pdf stackoverflow.com/questions/14313916/…
EngrStudent - восстановить Монику

5

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

Давайте сначала разберемся, как делается меширование:

Сетки для структурных доменов бывают трех типов: 1D-сетка, 2D-сетка и 3D-сетка, основанные на типе элементов, используемых для построения сетки.

  • 1D-сетка: линейный элемент

  • 2D-сетка: элемент quad / tria

  • 3D-сетка: гекса (кирпич) / пента / тетра элементы.

Какую сетку использовать, т.е. 1D, 2D или 3D, в первую очередь зависит от требуемой точности вычислений, вычислительных затрат (времени, необходимого для решения проблемы) и соотношения сторон домена . Наибольшее соотношение сторон должно быть больше 10 (как правило большого пальца), чтобы пренебречь размером и перейти к сетке с низким размером.

Позволь мне объяснить.

  • Домен 100X50X80 имеет все сопоставимые размеры, а самое высокое соотношение сторон составляет 100/50 = 3. Следовательно, трехмерные элементы будут использоваться для создания сетки этой части.

  • Домен 100X50X8 имеет одно незначительное измерение, а самое высокое соотношение сторон составляет 100/8 = 12. Поэтому будут использованы 2D элементы. Деталь из листового металла является прекрасным примером этого.

  • Домен 100X5X8 имеет два незначительных измерения, а самое высокое соотношение сторон составляет 100/5 = 20. Поэтому будут использованы 1D элементы. Сборка фермы служит примером.

Как только вы определитесь с типом элементов, которые вы будете использовать, качество элемента станет очевидным. Чтобы сохранить качество, сетка должна быть сделана вручную .

Все программное обеспечение для создания сетки поставляется с опцией автоматической сетки, которая работает только с отображаемыми деталями и прямыми гранями / блоками. Большинство объяснений в других ответах (особенно ответ @ Wes) связаны с тем, что делается в фоновом режиме для работы automesh.

Идея состоит в том, чтобы разделить ваш домен на несколько патчей и автоматически объединять их патч за патчем и постоянно обеспечивать связь между патчами . Обеспечение связи в основном автоматическое на основе проверки на основе допусков. 1D-сетка проще в этих аспектах.

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

Все вышеперечисленные пункты помогут сохранить качество сетки. Тем не менее, программное обеспечение для создания сетки обычно имеет возможность проверять качество сетки, используя несколько параметров, которые можно регулировать в соответствии с требованиями. Окончательная проверка качества и возможности подключения имеет важное значение для обеспечения качественных результатов FEA.

Некоторые качества ожидаются от хорошей сетки:

из 1D сетки

  • Нет проблем с подключением узлов
  • Нет повторяющихся элементов
  • Поддерживать минимальную и максимальную длину

из 2D / 3D сетки

  • Угол деформации менее 5 градусов {рассчитывается путем разбиения четырехугольника на два триаса и нахождения угла между двумя плоскостями, которые образуют триас}
  • Соотношение сторон менее 5 {деление стороны максимальной длины элемента на сторону минимальной длины элемента.}
  • Угол перекоса более 60 градусов {минимальный угол между вектором от каждого узла к противоположной средней стороне и вектором между двумя смежными средними сторонами в каждом узле элемента. Девяносто градусов минус минимальный найденный угол сообщается.}
  • Якобиан больше, чем 0,7 {Коэффициент Якобиана является мерой отклонения данного элемента от элемента идеальной формы. Значение Якобиана колеблется от -1,0 до 1,0, где 1,0 представляет элемент идеальной формы. Идеальная форма для элемента зависит от типа элемента.}
  • Триа элементы с углом от 20 до 120 градусов
  • Квадратные элементы с углом от 45 до 135 градусов
  • Поддерживать минимальную и максимальную длину
  • Элемент связи
  • Менее 10% триа элементов в 2D сетке
  • 2D нормали элементов ориентированы в одном направлении для определенных частей.
  • Тет-коллапс для тетраэлементов {Определяется как расстояние узла от противоположной грани, деленное на площадь грани, умноженную на 1,24}

из всей сетки

  • Нумерация узлов и элементов в определенных диапазонах
  • Минимальное отклонение от геометрии и отклонение подтверждается обоснованным инженерным решением.
  • Специальные связи между различными типами (1D / 2D / 3D) элементов правильно определены.

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

Почему эти вещи не автоматизированы:

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

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

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

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

Например, Hypermesh является очень популярным коммерческим пакетом создания сетки от Altair Engineering, в котором есть приложение Batchmesher, которое выполняет создание сетки для вас. Тем не менее, он не в состоянии поддерживать правильные геометрические отклонения и связи между элементами для сложных деталей.

ТЛ; др:

Вот как меширование делается профессионально

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

PS: я новичок в этом форуме, и это один из моих первых нескольких ответов, которые я приложил много усилий. Я был бы очень признателен, если бы я получил некоторые отзывы. У меня есть несколько ответов Quora по Mesh и FEA, где эти моменты объясняются более подробно с помощью графики. [Практический анализ методом конечных элементов]


1

(1) Это частично автоматически?

Да, это так. И это может быть полностью автоматическим.

(2) Должны ли вы в некоторых случаях определять точки и соединения вручную?

Нет, кроме домашней работы в классе. Кстати, это называется узел и элемент.

(3) Каковы наиболее часто используемые критерии для обеспечения соответствия сетки ожиданиям клиента?

Это может быть книга.

(4) Каковы тенденции: следует ли ожидать, что он будет полностью автоматическим в ближайшие годы?

Да, это уже автоматически, но все еще нуждается в улучшении.


0

Сетка тела с 2D-треугольниками или 3D-тэтами может быть выполнена автоматически, но эти элементы не дают наилучших результатов: квадраты и кубики, как правило, лучше. Тем не менее, объединение тела целиком с квадратами / кирпичами не может быть выполнено автоматически, и вы должны вручную разбить его на блоки, которые могут быть автоматически объединены. Это не тривиально.

Кроме того, сетка, хорошо подходящая для термического анализа, обычно не подходит, например, для анализа вибрации.

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

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


0

Да, есть программы для создания сетки, позволяющие полностью автоматически создавать сетки. Если вас интересует сетка плоских или изогнутых поверхностей, есть несколько продуктов, которые обеспечивают полностью автоматическую сетку, обеспечивая 100% четырехугольную сетку на поверхностях любой степени сложности. Я бы посоветовал вам посетить следующую веб-страницу и выбрать одну из программ, которая максимально соответствует вашим потребностям (некоторые из этих программ лучше всего подходят для структурно-инженерных приложений, другие - для моделирования печатных плат и т. Д.) Http: / /members.ozemail.com.au/~comecau/products.htm

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