УДК 519.688:519.6:514.752
А.О.Л1СНЯК
Запорiзький нацюнальний ушверситет
ПРОГРАМНА СИСТЕМА ДЛЯ ПОБУДОВИ ДИСКРЕТНИХ МОДЕЛЕЙ ГЕОМЕТРИЧНИХ ОБ'еКТ1В
Актуальною практичною проблемою е побудова дискретних моделей геометричних o6'eKmie, заданих у аналтичному виглядi. У сmаmmi описано модель автоматизованог програмног системи, що дозоляе будувати дискретш моделi функцюнально визначених геометричних об'екmiв. Приведено моделi структур даних, що використовуються для збереження та перетворення сктченно-елементног стки. Приведено результати перевiрки обчислювальног mочносmi.
Ключовi слова: дискретизащя, генеращя сток, математична модель, автоматизована система.
A.A.LISNYAK
Zaporozhe national university
SOFTWARE SYSTEM FOR CONSTRUCTING DISCRETE MODELS OF GEOMETRIC OBJECTS
Annotation
In this paper is considered a model of the software system for the automatic discrete models construction of geometrical objects defined by V.L. Rvachov's functions. The aim is to describe the basic structure of the software, data structures for storage and conversion of the finite element mesh in the computer memory, evaluation of computational complexity and accuracy of the results.
In this paper is proposed a data structure for representing finite element mesh. These structures can be used to represent the plane and the spatial mesh with elements of a triangular shape. Furthermore, each element of the mesh (node, rib, triangle) provided the possibility of storing additional information. It may be useful to perform a variety of optimization procedures.
Computational complexity of the discrete model construction of a geometrical object is linearly depend on the number of nodes for obtained mesh. Accuracy of the results is significantly improved when using optimization procedures and in most cases does not exceed a few percent.
Presented model can be used as for independent software system construction, as well as for preprocessors construction for existing analysis systems of stress-strain state with use of FEM.
Keywords: R-function, visualization, geometrical model, mesh, finite elements.
Вступ. Одним з перспективних метод1в опису форми 1нженерних конструкцш або геометричних об'екпв е використання аналггичних функцш В.Л. Рвачова. Теоретично такий шдх1д дозволяе описувати об'екти довшьно! складносп [12]. Основна проблема такого тдходу полягае в складносп побудови дискретно! апроксимаци, яка у подальшому може биту використана для в1зуал1зацп або як вхвдш даш для анал1зу з використанням обчислювальних метод1в. Таким чином, розробка програмно! системи, яка дозволяе автоматично будувати дискретш модел1 аналтгачно визначених геометричних об'екпв, е досить актуальною проблемою.
Побудов1 сшнченно-елементних сггок 1з сшнченними елементами у форм1 трикутника присвячена довол1 широка шльшсть публжацш [3, 4, 14, 15]. Можливосп та перспективи опису форми геометричних об'екпв з використанням R-функцш детально дослщжеш представниками школи академ1ка В.Л. Рвачева [9, 10, 11, 12]. Автоматизована генеращя сггок реал1зована у таких системах сшнченно-елементного анал1зу як COSMOS, FORTU-3, ANSYS, та шших [12, 5, 6]. В1зуал1зувати аналпично визначеш геометричш об'екти можливо з використанням системи РАНОК [13]. Методи та шдходи, яю стали базою для створення програмно! системи, описано в роботах [7, 8].
Модель системи та структур даних. Функцюнальна схема, яку реал1зуе програмна система автоматично! побудови сшнченно-елементно! атки (рис. 1), е результатом попередшх дослщжень [7, 8]. Вш е основою функцюнування системи та щкавий з науково! точки зору.
Рис. 1. Функцюнальна схема роботи програми
Одшею з найпоширешших на сьогодшшнш день е парадигма об'ектно-opicHTOBaHoro програмування, при використаннi яко! програмна система розглядаеться як система взаемодшчих об'екпв рiзних типiв (сутностей, класiв), характерних для предметно! областi.
Аналiзуючи методи й щдходи побудови математичних моделей та функцюнальну схему побудови геометричних об'ектiв, можна побачити, що словник предметно! области становлять так1 поняття як сiтка, вузол (вершина), ребро, трикутник, координати точок. Найбiльш загальним i емним, у контекстi термшв предметно! областi виступае поняття сшнченно-елементно! сiтки (клас TMesh на рис. 2). Сггка знаходитися у ввдношенш композицi! з об'ектом, що е абстракщею поняття трикутник (Triangle). Аналiзуючи кратнiсть такого ввдношення, можна побачити, що трикутник може належати тшьки однiй сiтцi, а сiтка, у свою чергу, повинна складатися мшмум з одного трикутника.
Рис. 2. ,Щаграма структури с1тки
Кожний трикутник складаеться iз трьох ребер (е !хньою агрегацieю). При цьому кожне ребро може бути або сумiжним для двох трикутник1в (внутрiшнi ребра), або належати одному трикутнику (граничш ребра на площинi).
Кожне ребро складаеться з двох вершин, при цьому з вершиною сумiжними е мшмум два ребра. Кожна вершина мае (асощативно зв'язана) координати.
З метою спрощення навiгацi! мiж елементами топологi! сiтки й доступу до деяких модельно-специфiчних властивостей перерахованих абстракцiй у модель можна ввести сутносп, призначенi для зберiгання атрибупв вiдповiдних елементiв: VertexАttribute - властивосп вершини, EdgeAttribute -властивостi ребер, Тпа^кАйпЬШе - властивостi трикутника.
Слушним доповненням наведено! вище моделi обчислювального блоку програмно! системи, е набiр сутностей, що забезпечують зв'язок з уведенням-виведенням iнформацi!' та графiчним штерфейсом користувача (рис. 3): TMainForm - абстракщя головно! форми iнтерфейсу користувача (основш операцi!' та параметри програмно! системи); TGobjectModeLForm - абстракцiя, вщповвдальна за введення та виведення властивостей i параметрiв а також вiзуалiзацiю моделi геометричного об'екта; TPropertiesForm
Рис. 3. Зв'язок обчислювального блоку та штерфейсу користувача
Оцшка обчислювальноТ складность Для оцшки обчислювально! складностi розглянемо загальний алгоритм дискретизацп (рис. 1). Необх1дно врахувати, що при побудовi дискретно! модел1, самою вибагливою операцieю е обчислення значения функцi!, що вiдповiдаe моделi геометричного об'екта.
Незалежно ввд розмiрностi моделi, першим кроком роботи методу е побудова регулярно! атки, яка повшстю покривае поверхню об'екта, що моделюеться. Якщо к1льк1сть вузлiв вихвдно! регулярно! сiтки N, тодi к1льк1сть вузлiв на границi гарантовано буде меншою, або рiвною N (N = п х т х к, де п, т, к - як правило, вибирае користувач, з огляду на модельнi обмеження).
Для формування початково! сiтки необх1дно у вах вузлах вихвдно!' сiтки обчислити значення функцп, що вiдповiдае моделi геометричного об'екта, та, потiм, уточнити !хне положення. Операщя уточнення зводиться до пошуку точок перетинання ребра регулярно! атки iз границею геометричного об'екта, i може бути виконана, наприклад, методом золотого перетину. При цьому якщо потрiбно
к
досягнення точностi 8, то квдьшсть обчислень значення функцi!' не буде перевищувати —, де к -
28
довжина ребра. При цьому максимальна довжина ребра не буде перевищувати значення
=
' \2 / 7 \2 / а 1 ( Ь 1 ( с
—J + ^—J + J , де а, Ь, с - розмiри сторш прямокутного паралелепiпеда, на основi
якого будуеться регулярна сита.
Таким чином, к1льк1сть операцiй обчислення R-функцi! можна оцiнити величиною к
N + тах . Отже, к1льк1сть операцiй обчислення R-функцi! даного кроку можна оцiнити величиною
28
0( N).
При визначенш диференцiальних характеристик атки необхвдно знати координати векторiв нормалi до вузлiв сiтки геометричного об'екта. Для !х визначення використаннi рiзницевi методи. Отже, операц1я визначення нормалей екшвалентна величинi 0(N) .
При ошгашзаци сiтки обчислення значень вихвдно! функцi! потрiбно пльки при операцi! проектування вузлiв атки на границю геометричного об'екта, яка аналопчна пошуку точок перетинання ребра регулярно! атки iз границею геометричного об'екта. Виконання операцiй локально! ошгашзаци (згладжування, пошук особливих точок, додавання нових вузлiв) еквiвалентно виконанню О(N) арифметичних операцiй й операцш запиту до пам'ятi для одержання координат потрiбних вузлiв i зв'язшв мiж ними.
Таким чином, обчислювальна складнiсть основних етапiв алгоритму оцшена величиною 0(N) кiлькостi операцш обчислення значень функци, що ввдповвдае геометричному об'екту.
Оц1мка точностi. Побудова дискретно! моделi геометричного об'екта виконуеться з певною точнiстю, яка залежить в1д двох основних параметрiв: 1) шлькосп елементiв у вихiднiй атцц 2) точностi розташування вузлiв атки щодо гранищ вихiдного геометричного об'екта.
Дов№на точнiсть, зг1дно сформульованих у попередньому роздiлi теорем, може бути досягнута шляхом здрiбнювання сiтки, що з одного боку буде полшшувати апроксимацш шляхом покращення спiввiдношення розмiрiв нелiнiйних елементiв границi до розмiрiв апроксимуючих лiнiйних елементiв, а з шшого - буде збiльшувати квдьшсть необхвдно! пам'ятi й машинного часу для обробки результуючих дискретних моделей. При цьому на точнють моделi також буде впливати накопичення обчислювально! похибки.
Використання неявних функцiй для математичного моделювання геометричних об'ектiв не дае можливосл отримати едину аналiтичну оцшку точностi вiдповiдних дискретних моделей. Тому для загально! оцiнки точностi дискретних моделей можна використати порiвняння площ^ що утворена дискретною апроксимацiею, з !! точним значенням. При цьому для плоских геометричних об'екпв можна порiвнювати площу областi, що обмежена границею об'екта, а в тривимiрному випадку - площу поверхнi.
Оцшка точносп апроксимацi!' деяких розповсюджених геометричних об'екпв наведена в
(табл.1).
Крiм того, розглянемо геометричний об'ект креслення якого представлений на (рис. 4), для якого встановимо наступнi значення розмiрних параметрiв: = 3 , Я2 = 2, Я3 = 1, = 4, d2 = 1, й 3 = 2.
Для побудови дискретно! моделi на основi методу кубiв, що марширують, використовуемо регулярну сiтку з розмiром комiрки — 0,35 умовних одиниць (рис. 5 а). У данш сiтцi загублеш дiлянки
2
rpa™^ й cпocтepiгaeтьcя вeликa шлькють eлeмeнтiв «пoгaнoï» фopми.
Зacтocoвyючи мeтoди вiднoвлeння дiлянoк гpaницi й лoкaльнi пepeтвopeння ciтки, oдepжимo oптимiзoвaнy диcкpeтнy cкiнчeннo-eлeмeнтнy ciткy гeoмeтpичнoгo oб'eктa, пpeдcтaвлeнy нa (pиc.5 б).
Рoзпoдiл htoctí eлeмeнтiв диcкpeтнoï мoдeлi дo й пюля oптимiзaцiï (pиc.б), пoкaзye явш пiдвищeння якocтi eлeмeнтiв пicля витогання oптимiзaцiï. Тoчнicть aпpoкcимaцiï мoдeлi 3po^a вiд пoxибки в б.5 %, ви^ш!' aпpoкcимaцiï, дo 0,18 % пюля oптимiзaцiï. Kpiм тoгo, шлькють тpикyтникiв пicля oптимiзaцiï cкopoтилocя з 1б48 дo 102б, щo вщшвдае бiльш нiж 30 % eкoнoмiï пaм'ятi для збepiгaння мoдeлi.
Тaблиця 1
Oцiнкa тoчнocтi_
Гeoмeтpичний oб'eкт Диcкpeтнa мoдeль
Тoчнe знaчeння, УМ. oдиниць Oптимiзaцiя Диcкpeтнa мoдeль
Kiлькicть eлeмeнтiв Плoщa, ум. oдиниць s, %
Kpy^ oбмeжeний oдиничним кoлoм 3.141593 Hi 56 3,063125 2,5
Тaк 200 3,133959 0,24
Enmc, niboci: a = 2, b = 3 18,849556 Hi 42 18,50953 1,8
Тaк 141 18,7657 0,44
Kвaдpaт 3i cтopoнoю a = 1 1 Hi 20 0,944444 5,56
Тaк 23 1 0
Kвaдpaт 3i cтopoнoю a = 4,5 i ^углим oтвopoм paдiyca r = 1 17,10840734 Hi 100 17,12435 0,09
Тaк 382 17,10436 0,05
Kyля, oбмeжeнa oдиничнoю cфepoю 12,56637061 Hi 380 12,2719 2,34
Тaк 1520 12,5103 0,43
Цилiндp виcoти h = 2, y ocнoвi яюш кoлo paдiyca r = 1 18,84955592 Hi 412 17,4453 7,45
Тaк 1132 18,7351 0.61
d2
Рис. 4. Kpеслення геoметpичнoгo oб'eктa
Рис. 6 . Розподш якосп елементтв с1тки
Висновки. Розроблена й описана модель автоматизовано! системи для математичного моделювання геометричних об'eкгiв. Представлена модель може бути використана як для побудови самоспйно! програмно! системи, так i для побудови препроцесорiв для iснуючих програмних комплексiв аналiзу напружено-деформованого стану c використанням МСЕ, наприклад, системи FORTU-FEM.
Дослвджено основш практичнi аспекти, пов'язанi з обчислювальною складнiстю й точнiстю при побудовi дискретних моделей нетривiальних геометричних об'екпв. Зокрема, показано, що обчислювальна складшсть розроблених методiв i пiдходiв мае величину порядку O(N), а ввдносна похибка результатiв моделювання не перевищуе 1%.
Л1тература
1. Басов К. А. ANSYS в примерах и задачах / К. А. Басов. - М. : КомпьютерПресс, 2002. - 224 с.
2. Бувайло Д. П. FORTU - мова опису схем розв'язання задач математично! фiзики / Д. П. Бувайло, С. I. Гоменюк, В. О. Толок // Вюник Запорiзького державного ушверситету. - 2000. - № 1. -С. 19-25.
3. Галанин М. П. Разработка и реализация алгоритмов трехмерной триангуляции сложных пространственных областей: итерационные методы / М. П. Галанин, И. А. Щеглов. - М. : ИПМ им. М.В. Келдыша РАН, 2006. - № 9. - 32 с. - (Препринт / ИПМ им. М. В. Келдыша РАН).
4. Галанин М. П. Разработка и реализация алгоритмов трехмерной триангуляции сложных пространственных областей: прямые методы / М. П. Галанин, И. А Щеглов. - М. : ИПМ им. М.В. Келдыша РАН, 2006. - № 10. - 32 с. - (Препринт / ИПМ им. М. В. Келдыша РАН).
5. Гоменюк С. И. Применение инструментальной системы FORTU для исследования задач механики композитов / С. И. Гоменюк // Тезисы докладов международной конференции «Dynamical system modeling and stability investigation». - К. : Вестник Киевского национального университета им. Тараса Шевченко, 2003. - С. 295.
6. Девятов С. Программы семейства COSMOS - универсальный инструмент конечно-элементного анализа (серия вторая) / Сергей Девятов // CADmaster. - 2002. - № 1. - С. 17-23
7. Лисняк А. А. Дискретизация границы трехмерных моделей геометрических объектов, заданных с помощью R-функций / А.А. Лисняк // Радюелектрошка, шформатика, управлыння. - 2014. -№1(30). - С. 82-89.
8. Лисняк А. А. Способ построения дискретных математических моделей геометрических объектов,
заданных с помощью R-функций / А.А. Лисняк // Вюник 3anopi3bKoro нацюнального унiверситету: Збiрник наукових статей. Фiзико-мaтемaтичнi науки. - 2013. - №1. - С. 59-70
9. Максименко-Шейко К. В. R-функции в математическом моделировании геометрических объектов в 3D по информации в 2D / К. В Максименко-Шейко , Т. И. Шейко // Вюник Зaпорiзького нацюнального ушверситету : Збiрник наукових статей. Фiзико-мaтемaтичнi науки. - 2010. - №1. -С. 98-104
10. Максименко-Шейко К. В. R-функции в математическом моделировании объектов, обладающих симметрией / К. В. Максименко-Шейко, Т. И. Шейко // Кибернетика и системный анализ. - 2008. -№ 6. - С. 75-83.
11. Максименко-Шейко К. В. R-функции и аналитическое описание поверхностей геометрических объектов в трехмерном пространстве / К. В. Максименко-Шейко, А. М. Мацевитый, Т. И. Шейко // Проблемы машиностроения. - 2007. - Т. 10. - № 2. - С. 59-67.
12. Рвачев В. Л. Теория R-функций и некоторые ее приложения / В. Л. Рвачев. - К. : Наукова думка, 1982. - 106 с.
13. Толок А. В. Графические образы-модели в информационных технологиях / А. В. Толок // Прикладная информатика. - 2009. - № 4(22). - С. 31-37.
14. George P. Delaunay Triangulation and Meshing. Application to Finite / P. George, H. Borouchaki. -Hermes Science Publications, 1998. - 413 р.
15. Rebay S. Efficient Unstructured Mesh Generation by Means of Delaunay Triangulation and Bowyer-Watson Algorithm // Journal Of Computational Physics. - 1993. - № 106. - P. 125-138.