Импорт графических данных в программе расчёта конструкций методом конечных

элементов “Зенит-95”

Е.И. Артамонов,

д.т.н., проф., зав. лаб. №18,

ИПУ РАН, г. Москва

С.В. Курков,

ген. дир. ООО “НТП “ДИП”, к.т.н., с.н.с., г.  Санкт-Петербург,

А.С.  Курков,

инженер-программист

ООО “НТП “ДИП”,   Санкт-Петербург,

А.И. Разумовский,

н.с.,

ИПУ РАН, г. Москва

Импорт графических данных в программы, предназначенные для расчёта, является одной из важнейших операций в процессе автоматизированного проектирования сложных конструкций. Разработке и развитию  алгоритмов обмена данными между графическими и расчётными подсистемами САПР уделялось и уделяется значительное внимание [1, 2 и др.].

Целью работы, некоторые результаты которой изложены далее, являлось создание универсального с точки зрения используемой графической системы программного средства, позволяющего импортировать графические данные в форме,  пригодной для дальнейшего построения математической модели в программе расчёта динамики и прочности конструкций “Зенит-95”.

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

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

Программы для реализации передачи графических данных в соответствии с указанным алгоритмом, были выполнены вначале  с использованием программ библиотеки Open Cascadе, предназначенной для работы с данными  в IGES-  и STEP-форматах, а затем с программой, созданной в лаборатории 18 ИПУ РАН. Одним из важных преимуществ последней является компактный код: программа, выполняющая те же функции,  занимает в 15 раз меньше места на диске, чем созданная средствами Open Cascade.

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

·          наличие нестыковок участков поверхностей;

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

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

В то же время, для генерации сетки конечных элементов объёмной области, к описанию поверхности предъявляются следующие требования:

·           поверхность должна быть замкнутой;

·           соотношения сторон треугольников должно находится в определённых пределах;

·           одинаковая ориентация нормалей поверхности  треугольников.

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

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

·           соединение несостыкованных участков поверхностей;

·           ввод новых элементарных треугольников;

·           разбиение и коррекция формы треугольников;

·           разрежение сетки с  удалением лишних узлов и поверхностей.

 

Рис.1. Импорт графических данных.

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

 

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

Первым этапом анализа является выделение границ несостыкованных поверхностей. Для этого необходим анализ топологии области. Вначале строится матрица связи пар узлов |T|, состоящая из номеров связываемых каждым треугольником узлов. Размерность матрицы – 3Nх2, где N – число треугольников, описывающих поверхность. Так, треугольник ijk, с порядковым номером L  заполнит строки u, v и w, где   w  = 3L, v = w -1,  и

 u = v -1. При этом Tu1 = I; Tu2 = j;   Tv1 = j; Tv2 = k;   Tw1 = k; Tw2 = i.

 Очевидно, что в описании замкнутой поверхности по любому ребру стыкуются два элементарных треугольника (Рис.2а). Следовательно, в матрице связи пар узлов элементарными треугольниками для связанных элементов должны присутствовать две строки i-j   и j-i.  Отсутствие пары для ребра i-j указывает на то, что по данному ребру поверхность незамкнута (Рис.2б), т. е. данное ребро определяет границу одной из поверхностей. Так выделяются границы поверхностей.

 

 

Рис.2. Варианты стыковки смежных элементов.

а – нормально состыкованные треугольники, б – разрыв поверхности,

в – стыковка треугольников с противоположным направлением векторов нормалей поверхности.

 

Кроме того, анализ топологии необходим для определения ориентации нормалей треугольников. При правильной ориентации нормалей по каждой стороне любого треугольника в матрице связей должны присутствовать строки с взаимно обратными номерами i - j   и jI(Рис.2в, стыкуются треугольники ijk и ilj). Наличие пар с одинаковой нумерацией (Рис.2в, стыкуются треугольники ijk и ijl) указывает на наличие соединений треугольников с  противоположным направлением векторов нормалей поверхности и на необходимость перенумерации треугольников. Эта операция выполняется итерационным путём.

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

,

где

  - суммарный вектор нормалей в узле,

n – число треугольников, стыкующихся в узле.

Так как     ,     то         .

Очевидно, что если в узле стыкуются параллельные  элементы, то S будет равно единице. Для ребра принимается  0.5<S<0,7. Для вершины    0.5<=S.

 

 

 

Рис.3. Выделение рёбер и вершин.

а –узел на плоской поверхности, б – узел на ребре, в – узел на вершине.

 

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

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

Другим, очевидным топологическим признаком наличия вершины в узле является стыковка более чем 2 рёбер или границ поверхностей в рассматриваемом узле. Следует заметить, что на первом этапе анализа топологии использование этого признака приводит к выделению в качестве вершин узлов, лежащих на несостыкованных границах поверхностей. Так, узлы I  и  j  для случая, представленного на рис.  2б , будут выделены как вершины. Однако это оказывается скорее полезным, так как в большинстве случаев приводит к положительным результатам при стыковке поверхностей с сильно отличающимися размерами элементов.

Далее, имея в распоряжении замкнутую поверхность, описанную совокупностью элементарных треугольников разделённую выделенными рёбрами на участки,  для получения сетки с требуемыми параметрами можно использовать различные методы, изложенные, например в /1/.  В данном случае используется итерационный метод, заключающийся в последовательном  разбиении рёбер, превышающих допустимый размер, и объёдинении близких узлов. При этом учитываются приведенные выше ограничения. На рис.4 представлена последовательность получения сетки для участка поверхности (рис.4а), представленного графической программой совокупностью треугольников (рис.4б). После разбиения на треугольники с заданным максимальным размером рёбер сетка примет вид, представленный на рис.4в. Затем, после выделения границ и соединения узлов, расположенных ближе заданного минимального размера элемента с учётом ограничений,  накладываемых требованиями сохранения границ поверхности, сетка приобретает вид, представленный на рис. 4д.

 

Рис.4. Преобразование описания поверхности.

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

 

Результат работы этого алгоритма для детали представлен на рис.1д.

Таким образом, процедура подготовки импортированной графической информации к генерации объёмной конечно-элементной модели заключается в выполнении следующих операций:

·           выделение границ поверхностей;

·           соединение поверхностей по границам;

·           разбиение поверхностей до заданного максимального размера элементов;

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

Эти операции, необходимые для реализации данного алгоритма, введены в графический редактор программы “Зенит-95”. В совокупности с имеющимися операциями, обеспечивающими редактирование координат узлов, удаление и разбиение элементов, а также выполнение операций для выделенной части области позволяют подготовить сетку, пригодную для генерации конечных элементов с требуемыми параметрами.

Представление поверхности элементов треугольниками позволяет сгенерировать объёмную конечно-элементную модель, состоящую из тетраэдров. На сегодня это единственный надёжный алгоритм, позволяющий построить модель практически любой сложности. Однако известно, что тетраэдры (симплекс элементы) обладают крайне низкой точностью решения задач. В качестве примера, иллюстрирующего проблему, на рис.5 представлены результаты решения простейшей тестовой задачи изгиба консольной балки, прямоугольного сечения.

Рис.5. Тестовая задача изгиба консольной балки.

а –расчётная схема, б – аналитическое решение, в – решение на модели из гексаэдров, г – решение на модели из тетраэдров.

 

Балка (рис.5а) длиной 1000 мм и сечением 100х100 мм, жёстко закрепленная на одном конце, испытывает действие сосредоточенных перерезывающих   сил в перпендикулярном оси направлении. Суммарная сила равна 1Н. Аналитическое решение для максимальных нормальных напряжений,  действующих вдоль оси балки в плоскости закрепления, даёт значение, равное 0.006 МПа. Модель, представленная совокупностью 10 гексаэдров соединённых в 44 узлах (рис.5б) даёт практически точное решение. Модель из тетраэдров, объединяющая более 3200 элементов и 1025 узлов, даёт погрешность более 10%. Аналогичные погрешности имеют место и в других приложениях метода.

Это обстоятельство заставляет искать пути автоматизированного построения модели из элементов более высокого порядка – гексаэдров.

Здесь возможно несколько вариантов. Простейший из них – разбиение каждого тетраэдра на четыре гексаэдра – описан ещё в работе [2] и ряде других более ранних работ. Однако, при этом практически не используется возможность снижения размерности модели за счёт использования элементов более высокого порядка, а наоборот: число узлов и элементов увеличивается.

Другим вариантом является объединение треугольников в четырёхугольники и генерация гексаэдров. Однако на сегодня, этот алгоритм не всегда надёжен, особенно для сложных форм.

Третий вариант – объёдинение тетраэдров в гексаэдры. Недостатком его является часто неудачная форма элементов, получаемых в результате объединения.

Альтернативой это способам может служить изменение способа формирования матриц, описывающих свойства тетраэдров уже на этапе вычислений. Т.е., практически, создание конечных элементов нового типа. Сущность способа заключается в том, что, для каждого тетраэдра функции формы строятся как для гексаэдра, в который входят смежные с рассматриваемым тетраэдры, а интегрирование ведётся только по объёму тетраэдра. Иллюстрация подхода представлена для наглядности на плоской сетке на рис.6.

 

Рис.6. К вопросу построения матриц элементов.

а и б – схемы построения матриц смежных элементов.

1 – элемент для которого вычисляются матрицы, 2 – объединяемые для построения функций формы элементы.

 

 

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

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

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

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

 

Литература.

1.    Ли К. Основы САПР (CAD/CAM/CAE). – СПб.: Питер, 2004. – 560 с.: ил. ISBN 5-94723-770-9.

2.      Математика и САПР : В 2-х кн. Пер. с франц./ М33 ШененП., Коснар М, Гардан И. и др.– М.: Мир, 1988. – 204с.: ил. ISBN 5-03-000417-3.

статистика