Научная статья на тему 'Разработка программного продукта для интеграции САПР catia V5 и CAE-системы Geant4'

Разработка программного продукта для интеграции САПР catia V5 и CAE-системы Geant4 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
136
37
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ФИЗИКА / CATIA / GEANT / МОДЕЛИРОВАНИЕ / VBA / STL / GDML

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Ошкина Елена Владимировна

В данной работе представлено краткое описание методики обмена триангулированной геометрической информацией между системами CATIA и GEANT4. Приводится описание способа конвертирования конструктивной твердотельной геометрии (CSG) в твердое тело, описанное с помощью границ (BREP).

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Ошкина Елена Владимировна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Разработка программного продукта для интеграции САПР catia V5 и CAE-системы Geant4»

РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА ДЛЯ ИНТЕГРАЦИИ САПР CATIA V5 И САЕ-СИСТЕМЫ GEANT4 Ошкина Е.В.

Ошкина Елена Владимировна - студент, кафедра систем автоматизированного проектирования, Московский государственный технический университет им. Н.Э. Баумана, г. Москва

Аннотация: в данной работе представлено краткое описание методики обмена триангулированной геометрической информацией между системами CATIA и GEANT4. Приводится описание способа конвертирования конструктивной твердотельной геометрии (CSG) в твердое тело, описанное с помощью границ (BREP). Ключевые слова: физика, catia, geant, моделирование, vba, stl, gdml.

Введение

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

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

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

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

Формулировка задачи

Исходя из вопросов и проблем, возникающих при использовании систем CAD и CAE в исследованиях и экспериментах физики высоких энергий, потребовалось разработать методику представления триангулированной геометрии, используемой в системе GEANT4 с помощью стандартных средств САПР CATIA, а также разработать программные средства для работы системы CATIA с форматом GDML.

Проблема проектирования и выбор алгоритма

Кроме BREP и CSG существует способ представления геометрических моделей в виде тесселированных тел. Особое внимание в работе будет отведено именно этому методу. Триангуляция - это аппроксимация поверхности моделируемого объекта с помощью треугольных пластин [1]. В данном представлении накладывается требование на состыковку треугольных вершин между собой. Как результат, вершины находятся на поверхности модели (рисунок 1).

Рис. 1. Модель триангулированной призмы в системе CATIA

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

Разработанная методика опирается на использование формата STL в системе CATIA и формата GDML в системе GEANT4. STL расшифровывается как Stereolithographic (объемная литография). Компания Albert Consulting Group выдвинула на рынок первое описание алгоритма обработки по слоям [2]. STL является «мозаичным» форматом, в нем для отображения формы объемной модели используется последовательность треугольников, так называемых фасетов.

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

GDML - Geometry Description Markup Language, язык используется для описания геометрии и материалов в файлах XML, что является достаточно удобным способом представления [3]. Данный формат также позволяет изменять модели деталей и установок без перекомпиляции программы.

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

Описание методики конвертирования

Перед использованием программы необходимо подготовить данные в формате STL, используя CAD систему. В САПР CATIA есть возможность выбора количества узлов, что позволяет в зависимости от необходимости и постановки задач получать модели с той или иной точностью. Пример STL файла представлен на рисунке 2.

facet normal 0.000000e+000 0.000000e+000 1.000000e+000

vertex P9.053075e+001 5.919615e+001 0.000000e+000 vertex 8.485281e+001 8.485281e+001 0.000000e+000 vertex 8.773519e+001 5.555291e+001 0.000000e+000

facet normal 0.000000e+000 0.000000e+000 1.000000e+000

vertex 9.053075e+001 5.919615e+001 0.000000e+000 vertex 9.508366e+001 5.979556e+001 0.000000e+000 vertex 8.485281e+001 8.485281e+001 0.000090e+000

facet normal -8.857022e-018 -6.727561e-017 1.000000e+000 vertex 9.053075e+001 -5.919615e+001 1.776357e-015

Рис. 2. Фрагмент файла в формате STL

На вход разработанной программе поступает файл формата STL, полученный в системе CATIA. Считываемые строки разбиваются на лексемы, среди которых находятся координаты вершин фасетов.

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

Далее обработанные данные, согласно строгому регламенту представления формата GDML организуются и отправляются на вывод в файл.

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

Tircul - -vi«" vtiieii - vertexl - /

<tilingiili[ verteil - verteil • verteil - -vlii* У

<Eri*ngul*r verteil - "V151- vette« - -vtJil- vemejti - /

verteil - vertex! - **v610" verteil - /

ar,g"jlar verteil - -iMli" mttt: - T4»' - /

< t r L ar.gMl л г verteil - "vtil" verteil - "TilS" vertex3 - -Т61Й" /

verteil - *v6S?p vertex! - -Tibi* verteil - -TlfiS' /

rianauiar vettexl - "V969" vette*J - - /

i^nar.fiilai verteil - vertex! - verteil - **T6Ü* /

vcitcul - -4-6J2- wnit! - ш*Л22ш v*rt«3 - "Tili" /

verteil - -VtHC" verteil - verteil - /

iirilMJjlil verteil - 'тЗ1!«' verteil - *7(M" verteil - -TlTT" /

verteil - "rtOi" verteii - •vili- - -VI 10' /

itrur.ijjUr verteil - *v<lö» veiteii - verteil - "TtJf* /

itrLififful** VtrtCMl - *vtlü> v«rttM! - vtl!«} - «rill' /

<trltngulir verteil - verteil - verteil - •Yl(3* /

c.rl.ir.g-jlii' vtltf*1 ■ • -viis- verteil * /

cdir.g-jjit verteil - -41Ü- nitnl - -v«S" verteil - /

<t[lingiili[ verteil * verteil - 4v3?S* verteil - /

verteil - -vit-J- verteij - -V3TS- verteil - •vilf /

</teis«ll*ted>

Рис. 3. Фрагмент файла в формате GDML

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

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

Рис. 4. Геометрическая модель в системе CATIA

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

Рис. 5. Модель, полученная в системе GEANT4

При финальном тестировании программы была использована реальная часть физической установки, содержащая 5531 вершину. Деталь представлена на рисунке 6.

Рис. 6. Деталь, построенная в системе CATIA

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

Рис. 7. Тесселированный солид, построенный системой GEANT4

Создание исполняемой программы моделирования установки в системе GEANT4 -задача конечного пользователя. В самом простом случае от него достаточно описания геометрии детектора, списка физических процессов, учитываемых в моделировании и генерации первичной вершины.

Работа осуществляется на основе базового механизма: описания геометрии, описания физических процессов, визуализации и интерфейса пользователя.

Заключение

Разработана объектно-ориентированная программа для конвертации в геометрию, распознаваемую системой GEANT4 с помощью стандартных средств САПР CATIA, в качестве языка был использован C++.

Реализована автоматизация геометрического моделирования сложных поверхностей для физического моделирования.

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

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

Список литературы

1. Голованов Н.Н. Геометрическое моделирование. М.: Академия, 2011. 272 с.

2. Басов К.А. CATIA V5. Геометрическое моделирование М.: ДМК Пресс, 2008. 268 с.

3. Маклахлин Б. Java и XML М.: Символ-Плюс, 2002. 544 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.