Softwarová pomůcka pro 2D generaci sítě konečných prvků



Podobné dokumenty
Algoritmizace a programování

Nástroje produktivity

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

Seriál: Management projektů 7. rámcového programu

účetních informací státu při přenosu účetního záznamu,

NÁVRHOVÝ PROGRAM VÝMĚNÍKŮ TEPLA FIRMY SECESPOL CAIRO PŘÍRUČKA UŽIVATELE

Kótování na strojnických výkresech 1.část

Bude nás sledovat inteligentní prach? Ing. Bibiána Buková, PhD. ( )

PŘÍLOHA 1.6 SMLOUVY O PŘÍSTUPU K VEŘEJNÉ PEVNÉ KOMUNIKAČNÍ SÍTI LOGISTIKA KONCOVÝCH ZAŘÍZENÍ

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

SAUT 3.1. program pro vyhodnocení výsledků zkoušení impulzní odrazovou metodou

Analýza oběžného kola

Výsledky přijímacích zkoušek

Vzor pro poskytnutí dotace na vodohospodářskou infrastrukturu

Seznámení s možnostmi Autodesk Inventoru 2012

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jana Kalinová [ÚLOHA 01 ÚVOD DO PROSTŘEDÍ OBJEMOVÁ SOUČÁST; PŘÍKAZ SKICA A JEJÍ VAZBENÍ]

Pracovní návrh. VYHLÁŠKA Ministerstva práce a sociálních věcí. ze dne o hygienických požadavcích na prostory a provoz dětské skupiny do 12 dětí

Pokyny České pošty pro označování Doporučených zásilek čárovými kódy

Zadání. Založení projektu

VYUŽITÍ NEURONOVÝCH SÍTÍ PROSTŘEDÍ MATLAB K PREDIKCI HODNOT NÁKLADŮ PRO ELEKTRICKÉ OBLOUKOVÉ PECE

Ploché výrobky z konstrukčních ocelí s vyšší mezí kluzu po zušlechťování technické dodací podmínky

Vyhlášení opakované veřejné soutěže 1/6

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jiří Haňáček [ÚLOHA 03 VYSUNUTÍ TAŽENÍM A SPOJENÍM PROFILŮ.]

STŘEDOŠKOLSKÁ ODBORNÁ ČINNOST. Chemické výpočty. Aleš Kajzar Martin Honka

Specifikace pravidel hodnocení pro vzdělávací obor: český jazyk a literatura

WEBMAP Mapový server PŘÍRUČKA PRO WWW UŽIVATELE Hydrosoft Veleslavín, s.r.o., U Sadu 13, Praha 6

c sin Příklad 2 : v trojúhelníku ABC platí : a = 11,6 dm, c = 9 dm, α = Vypočtěte stranu b a zbývající úhly.

TECHNICKÁ DOKUMENTACE NA PC

Pokyny k instalaci FRIATRACE Verze 5.3

TRANSFORMACE. Verze 4.0

ODBOR DOPRAVY Velké náměstí 114/3 pracoviště Budovcova Písek

Matematický model malířského robota

SYLABUS PŘEDNÁŠKY 6b Z INŽENÝRSKÉ GEODÉZIE (Polohové vytyčování) 4. ročník bakalářského studia studijní program G studijní obor G

Memoria Mundi Series Bohemica z trezoru na Internet

čj. ČŠI-510/09-07 Charakteristika školy

ZADÁVACÍ DOKUMENTACE K VEŘEJNÉ ZAKÁZCE ZADÁVANÉ DLE ZÁKONA Č. 137/2006 SB., O VEŘEJNÝCH ZAKÁZKÁCH, VE ZNĚNÍ POZDĚJŠÍCH PŘEDPISŮ (DÁLE JEN ZÁKON )

VÝZVA. Česká republika-ministerstvo školství, mládeže a tělovýchovy (dále jen zadavatel) se sídlem Karmelitská 7, Praha 1, IČ

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

Česká zemědělská univerzita v Praze Fakulta provozně ekonomická. Obor veřejná správa a regionální rozvoj. Diplomová práce

Šicí stroje NX-400 NX-200

Služby Knihovny AV ČR v oblasti zveřejnění vědeckých publikací (nejen) pro ústavy AV ČR

Výuka algoritmizace patří především do informatiky

Algoritmus (nebo dřívějším pravopisem algorithmus)

Miroslav Kunt. Srovnávací přehled terminologie archivních standardů ISAD(G), ISAAR(CPF) a české archivní legislativy

Česká školní inspekce Středočeský inspektorát INSPEKČNÍ ZPRÁVA. Čj.: ČŠIS-128/11-S. Mateřská škola Červený Újezd, okres Praha-západ

Orientační průvodce mateřstvím a rodičovstvím v zadávacích dokumentacích poskytovatele

Měření prostorové průchodnosti tratí

OBEC MIKULČICE. O Z N Á M E N Í o vydání opatření obecné povahy č. 2/2008 V E Ř E J N O U V Y H L Á Š K O U. svým usnesením č. 5 ze dne 6.5.

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY CVIČENÍ 8

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.

LANOVÁ STŘECHA NAD ELIPTICKÝM PŮDORYSEM

Pokyny k vyplnění Průběžné zprávy

OBEC HORNÍ BOJANOVICE obecně závazná vyhláška č. 05/2005

KLÍČE KE KVALITĚ (METODIKA II)

V Černošicích dne Výzva k podání nabídky na veřejnou zakázku malého rozsahu s názvem: Nákup a pokládka koberců OŽÚ.

Jihočeský vodárenský svaz S. K. Neumanna 19, České Budějovice

Vyvažování tuhého rotoru v jedné rovině přístrojem Adash Vibrio

PALETOVÉ REGÁLY SUPERBUILD NÁVOD NA MONTÁŽ

Perspektivy financování vysokoškolského studia v České republice se spoluúčastí studentů Jan Lamser

ODŮVODNĚNÍ VEŘEJNÉ ZAKÁZKY

Školní kolo soutěže Mladý programátor 2016, kategorie A, B

GEOMETRICKÁ TĚLESA. Mnohostěny

Podrobný postup pro doplnění Žádosti o dotaci prostřednictvím Portálu Farmáře. 1. kolo příjmu žádostí Programu rozvoje venkova ( )

Prostorová akustika. Akce: Akustické úpravy nové učebny č.01 ZŠ Líbeznice, Měšická 322, Líbeznice. akustická studie. Datum: prosinec 2013

Základy sálavého vytápění ( ) 6. Stropní vytápění Ing. Jindřich Boháč

Program pro poskytování dotací z rozpočtu města Moravská Třebová Číslo předpisu: 6/2015 Výtisk č.: 01

Co najdete v ASPI? (pro uživatele SVI FSE UJEP)

rozlišení obrazovky 1024 x 768 pixelů operační systém Windows 2000, Windows XP, Windows Vista 1 volný sériový port (volitelný) přístup na internet

téma: Formuláře v MS Access

Odůvodnění veřejné zakázky dle 156 zákona. Odůvodnění účelnosti veřejné zakázky dle 156 odst. 1 písm. a) zákona; 2 Vyhlášky 232/2012 Sb.

mísy na koření akční pole prostor pro karty koření 1 mlýnek na pepř

Jak pracovat s kalkulačním programem HELUZ komín

SMLOUVA O PODMÍNKÁCH A PRAVIDLECH ÚČASTI NA ELEKTRONICKÝCH AUKCÍCH DŘÍVÍ

ZADÁVACÍ DOKUMENTACE

SVĚTELNĚ-TECHNICKÁ STUDIE

Pokyn D Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

ICT plán školy 2015/2016

1 - Prostředí programu WORD 2007

Regenerace zahrady MŠ Neděliště

Soutěž o návrh. dle ustanovení 103 a násl. zákona č. 137/2006 Sb., o veřejných zakázkách (dále jen ZVZ )

Instrukce Měření umělého osvětlení

4 Část II Základy práce v systému. 6 Část III Úvodní obrazovka. 8 Část IV Práce s přehledy. 13 Část V Kontakty. 19 Část VI Operativa

Využití EduBase ve výuce 10

Autorský popis objektu

Z OBRAZOVÉHO ZÁZNAMU. Jan HAVLÍK. Katedra teorie obvodů, Fakulta elektrotechnická

DATABÁZE DŮLEŽITÉ: Před načtením nové databáze do vaší databáze si prosím přečtěte následující informace, které vám umožní:

Úprava fotografií hledání detailu, zvětšování (pracovní list)

Pravidla. používání Národního elektronického nástroje při realizaci zadávacích postupů prostřednictvím národního elektronického nástroje

Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ

ZADÁVACÍ DOKUMENTACE. Pořízení a provoz konsolidované IT infrastruktury

Fraktální analýza tiskových struktur

POZVÁNKA NA MIMOŘÁDNOU VALNOU HROMADU

7. Stropní chlazení, Sálavé panely a pasy - 1. část

AMC/IEM HLAVA B PŘÍKLAD OZNAČENÍ PŘÍMOČARÉHO POHYBU K OTEVÍRÁNÍ

ZADÁVACÍ DOKUMENTACE K VEŘEJNÉ ZAKÁZCE ZADÁVANÉ PODLE ZÁKONA Č. 137/2006 SB., O VEŘEJNÝCH ZAKÁZKÁCH, VE ZNĚNÍ POZDĚJŠÍCH PŘEDPISŮ (DÁLE JEN ZÁKON )

Kategorizace zákazníků

ROZCVIČKY. (v nižší verzi může být posunuta grafika a špatně funkční některé odkazy).

Bod, přímka a rovina. bezrozměrnost, jeden rozměr a dva rozměry

Transkript:

Softwarová pomůcka pro 2D generaci sítě konečných prvků Ing. Filip Hejnic*, doc.ing. Petr Štemberk, Ph.D.** *České Vysoké Učení Technické v Praze, Thákurova 7, 166 29 Prague 6, E-mail: filip.hejnic@fsv.cvut.cz ** České Vysoké Učení Technické v Praze, Thákurova 7, 166 29 Prague 6 Abstrakt V inženýrské praxi je v dnešní době nejvíce používanou metodou pro výpočet vnitřních sil Metoda konečných prvků (MKP). Pro využití této metody je nezbytné rozdělení potřebné oblasti na konečné prvky. Všechny komerční programy si chrání svoje vlastnictví autorskými právy a je těžké využít jejich kód pro generování sítě zdarma. Na internetu lze najít různé knihovny napsané v programovacích jazycích, ale pro jejich použití je nutné umět je použít. Tento článek se snaží vyhnout těmto úskalím a poskytnout nástroj pro generování sítě zdarma. Uložení souřadnic sítě do textového souboru je samozřejmostí. V programu je zahrnuto zjemňování a vyhlazování sítě Klíčová slova: generace sítě, metoda konečných prvků, trojúhelníky, síť 1. Úvod Jak již bylo řečeno v abstraktu článku tak dnes ve všech technických odvětví při numerickém modelování je nejvíce rozšířenou metodou metoda konečných prvků. Obzvláště ve stavebnictví je tato metoda široce využívána, jak v praxi, tak i při vědeckých výzkumech. Základem této metody je rozdělení zkoumané oblast na konečný počet částí tak, aby dobře pokrývaly uvažovanou oblast. Zkoumaný prvek může být například táhlo (1D prvek), železobetonová deska (2D prvek) nebo ostatní prvky zkoumané ve třech rozměrech. Článek se zabývá druhou oblastí těles 2D prvky. Do této skupiny se zahrnují většinou prvky, které lze výpočetně zjednodušit z trojrozměrného prostoru, jako jsou desky, skořepiny a další podobné typy. Rozdělení dvojrozměrné oblasti na konečné prvky je závislé na druhu prvků, které při výpočtu budeme chtít využít. Mezi dnes používané 2D prvky patří trojúhelníky, čtyřúhelníky (Obr. 1) a jejich kombinace. Obrázek 1. Typy používaných 2D prvků [3] Jednotlivé druhy prvků jsou spojeny s typem metody, kterou lze použít pro automatické vytvoření celé sítě konečných prvků. Pokud chceme rozdělit danou oblast na prvky, je snadnější využít trojúhelníku, jakožto základního prvku. Trojúhelníkové sítě se snáze vytvářejí z důvodu jednoduššího matematického popisu trojúhelníku. Při použití trojúhelníkových prvků je nutné k pokrytí téže oblasti větší množství prvků než při použití čtyřúhelníkových, jak je vidět z obrázku 1. Při použití čtyřúhelníkových prvků dostáváme lepší řešení než u trojúhelníkových z důvodu většího počtu vrcholů. Jelikož při potřebě vygenerování sítě, pro universitní projekt, nebyl k dispozici žádný nástroj, který by bylo možno použít zdarma, vznikl nápad naprogramovat aplikaci, která umožní vygenerování sítě a bude dostupná na internetu. Hlavním cílem bylo vytvořit jednoduchý program, ve které bude možno zadat polygon a vygenerovat síť s možností uložení vrcholů sítě do souboru.

2. Základní metody generování sítí Základním dělením sítí konečných prvků jsou sítě strukturované a nestrukturované. Strukturované jsou takové, jejichž prvky jsou pravidelně uspořádány (pravidelná obdélníková síť). Nestrukturované sítě jsou složeny převážně z trojúhelníkových, ve vyšších dimenzích pak ze čtyřstěnných prvků, nepravidelného vzoru. Tento článek se dále zabývá vytvářením druhého typu sítí. Pro vytváření nestrukturovaných sítí existují tři základní metody. Metoda Quad/Octree je založena na postupném dělení dané oblasti a uchovávání informací o těchto částech ve struktuře stromu (Obr. 2a). Každá část, která je rozdělena na menší části z důvodu zjemnění sítě je uložena, jako podoblast své nadřazené oblasti. Oblast je dělena pravidelně na obdélníkové nebo, v případě prostorového útvaru, na hranolové části. Zjemňování probíhá, dokud není dosaženo požadované jemnosti v místech, které jsou pro to určené. Po takto připravené síti je možné do každého pravidelného obrazce vložit šablonu trojúhelníků, popř. čtyřstěnů, které nám danou oblast vyplní sítí. Při 2D rozměru je počet šablon, které je možné použít 16 (Obr. 2b). Na obrázku jsou zobrazeny pouze šablony, které jsou jiného typu. Pro obecný 3D prostor narůstá počet šablon na počet 4096. Výhodou této metody je rychlost, lze ji použít pro jakoukoliv oblast a vytváří dobrou kvalitu sítě. Nevýhodou je převážně opakující se velikost prvků. Sít lze rozdělit pouze na násobky jednotlivých prvků. Obrázek 2.(a) Struktura dat metody Quad/Octree; (b) Šablony pro 2D síť Další metodou pro tvorbu sítí je metoda postupující fronty. Metoda je založena, jak sám název napovídá, na postupném doplňování trojúhelníkových obrazců od zvoleného počátečního bodu. Základem je rovnoměrné rozdělení hranice oblasti na úseky. Tyto části poté slouží jako strany rovnostranných trojúhelníků, které jsou v první fázi generovány. Problém vzniká převážně v rozích, kde se potkávají dva obrazce. Toto lze řešit tak, že pokud v rohu již jeden obrazec je, tak zde nevznikne nový, ale využije se stávajícího již vloženého vrcholu. Zbývající část, která ještě není pokryta elementy, lze doplnit stejným způsobem pomocí vytváření rovnostranných obrazců. Velkou výhodou metody postupující fronty je velká kvalita a spolehlivost 2D sítě (nejkvalitnější prvky kolem hranice). K nevýhodám patří zejména rychlost algoritmu a možnost tvorby prvků malých objemů. Obrázek 3. Postup tvorby sítě metodou postupující fronty Poslední ze základních typů metod je Delaunayho triangulace. Metoda byla vynalezena ruským matematikem a fyzikem B. N. Delaunay. Principem postupu je vytvořit síť (Obr. 4a), která bude složena pouze z takových trojúhelníku, jejichž kružnice opsané nebudou obsahovat žádný jiný bod sítě (pouze vrcholy daného prvku). Pokud toto pravidlo nebude splněno, nejedná se o Delaunayho triangulaci (Obr. 4b). Prvním krokem tvorby sítě je vytvoření ohraničující obálky (tzv. bounding box) kolem dané oblasti a rovnoměrné rozdělení hranice. Následuje vytvoření počáteční sítě, která splňuje víše popsané podmínky. Dalším krokem je vkládání vnitřních bodů. Pro tento postup existuje několik

možností jak tento problém vyřešit. Zaprvé je možné vkládat uzly do těžišť již vzniklých trojúhelníků. Tento způsob není moc vhodný, protože vytváří obrazce s malým vnitřním úhlem, ale je snadno použitelný. Za druhé je možné strany obrazců rozdělit na poloviny a získat tak čtyři trojúhelníky v jednom obrazci. Nejrozšířenějším postupem je použití iterativního Bowyer-Watsonova algoritmu. Základním principem je vložení bodu do sítě (např. do těžiště největšího obrazce) a zjištění, jestli tento bod neporušuje zásadu triangulace. Pokud ano, všechny obrazce, jejichž opsaná kružnice obsahuje daný bod, jsou smazány a vytvoří se nové, které začlení tento bod jako vrchol sítě. Proces se opakuje, dokud velikost největšího útvaru není přijatelná (např. plocha všech trojúhelníku je v rozmezí zadaných hodnot). Hlavními výhodami této triangulace je malá výpočetní náročnost algoritmu, dobrá kvalita sítě (dle vkládání bodů) a velmi silný matematický popis, který dovoluje metodu rozšířit jak ve 2D, tak i do 3D. Nevýhodou je především obtížné vyjmutí hranice, z ohraničující obálky, pokud je složitého tvaru. Delaunayho triangulace byla zvolena jako vhodná metoda pro implementaci do vyvíjeného programu. 3. Postup vytvoření sítě zadaného obrazce Obrázek 4. (a) Delaunayho triangulace, (b) Rozdíl mezi triangulacemi Základním vstupním požadavkem před samotným procesem je nutné určit polygon nebo čtvercovou oblast, kterou budeme chtít pokrýt sítí. Dochází pouze k určení x-ových a y-ových souřadných bodů zadávané oblasti. Tyto souřadnice jsou uloženy a dále vstupují do výpočtu. V prvním kroku výpočtu je určena obálka, která obklopuje celý obrazec. Obálka je tvaru obdélníka a jeho vrcholy jsou vypočteny z již dostupných souřadnic a přidány do seznamu bodů. S tímto vstupním seznamem začíná první triangulace. Obálka je následně rozdělena na dva stejné trojúhelníky, tím začíná proces generování sítě. Algoritmus procesu triangulace je uveden v (1.1) Výstupními hodnotami je seznam, kde každý řádek odpovídá vytvořenému trojúhelníku. Každý řádek obsahuje tři čísla, která označují pozici souřadnice v seznamu souřadnic. Vytvoření prázdného seznamu trojúhelníků a zařazení dvou počátečních trojúhelníků Pro každý bod v seznamu Vytvoření vyrovnávacího seznamu Pro každý trojúhelník v seznamu Spočti střed a poloměr kružnice opsané Když bod leží uvnitř kružnice Přidej hrany trojúhelníku do vyrovnávacího seznamu Odstraň trojúhelník ze seznamu trojúhelníků Odstraň všechny zdvojené okraje z vyrovnávacího seznamu Přidej do seznamu všechny trojúhelníky vytvořené mezi bodem a okrajem polygonu Odstraň trojúhelníky a vrcholy, které jsou mimo obrazec (1.1)

Po vytvoření základní sítě dochází k postupnému zjemňování. V závislosti na velikosti obrazce dojde k rovnoměrnému rozdělení hranice a tím přidání bodů. Následným přidáváním bodů do těžišť trojúhelníků dojde ke zjemnění. Po každém novém vložení bodů dojde k novému přetransformování seznamu trojúhelníku podle víše uvedeného postupu (1.1). 3.1. Vyhlazování sítě Pro lepší kvalitu sítě byl použit algoritmus změny tvaru jednotlivých trojúhelníku neboli vyhlazovací algoritmus známí jako Lapalceovo vyhlazování. Před uvedením postupu vyhlazovacího algoritmu je vhodné se zmínit, co znamená kvalita trojúhelníku. V tomto kontextu je kvalita považována jako změna polohy vrcholů trojúhelníka, tak aby došlo ke změně vnitřních úhlů, pro zlepšení poměru mezi těmito úhly. Pro hodnocení kvality byla použita rovnice (1.2). 4A 3 q= h 2 1 + h 2 (1.2) 2 2 + h 3 kde A je plocha trojúhelníka, h 1, h 2, h 3 jsou délky stran trojúhelníka a q je výsledná hodnota kvality. Pokud q > 0,6 má daný trojúhelník vyhovující tvar. Nejlepší tvar je pokud q = 1, tj. budou všechny stany stejně dlouhé, jedná se tedy o rovnostranný trojúhelník, a tento tvar bude považován za optimální. Základním principem vyhlazování je vzít uzel uvnitř sítě. Vybrat všechny trojúhelníky, které mají tento uzel jako svůj vrchol a zhotovit polygon, který ohraničuje původní vnitřní uzel. Nová souřadnice vybraného uzlu sítě se poté spočítá jako souřadnice těžiště polygonu vytvořeného sousedními body (1.2; 1.3;1.4). n 1 1 C x = 6A (x i + x i+1 )(x i y i+1 x i+1 y i ) (1.3) C y = i=0 n 1 1 6A (y i + y i+1 )(x i y i+1 x i+1 y i ) i=0 n 1 A = 1 2 (x iy i+1 x i+1 y i ) i=0 Kde C x, C y jsou nové souřadnice uzlu; A je plocha polygonu; n je počet uzlů tvořících polygon; x,y jsou jednotlivé souřadnice vymezující polygon. Souřadnice polygonu musejí být seřazeny podle postupu vzniku polygonu. Nesmějí být uloženy v přeházeném pořadí. Pro zajištění této skutečnosti byl implementován algoritmus Konvexní obálky. Konvexní obálka je jediný konvexní polygon, jehož vrcholy obsahují všechny body, které jsou v dané množině zadány. Tento problém byl nejvíce studován v počítačové geometrii. Nejvíce se používá v různých aplikacích, jako je detekce kolizí ve hrách, geografických informačních systémech a v robotice. Algoritmus výpočtu je ukázán v rovnici (1.5) Nahrání všech čar mezi danými body for i= 0 to i < celkový počet čar for j=0 to j< celkový počet bodů Získá body, které nejsou v aktuální čáře end if Zkontroluje, zda je čára na okraji konvexní obálky tak, že některý z bodů se nachází na jeho levé straně. Pokud ne odebere čáru ze seznamu, nastaví i a pokračuje else Zvýší i a pokračuje end end Pokud se výše popsaný proces provede pro všechny uzly konečně prvkové sítě, tak dojde k vyhlazení. Rozdíl mezi vyhlazenou a nevyhlazenou sítí je patrný z obrázku 5. Všechny trojúhelníky se posunou blíže k optimálnímu výsledku. Tento proces lze opakovat, dokud není dosaženo (1.4) (1.5) (1.6)

přijatelného výsledku. Bylo vypozorováno, že po 15 iteračních cyklech je posun vrcholů již zanedbatelně malý a další vyhlazování již není efektivní. 4. Použité prostředí Obrázek 5. Rozdíl mezi vyhlazenou (tmavá) a nevyhlazenou (světlá) sítí Pro provedení výše zmíněných myšlenek byla zvolena platforma.net Framework (Obr. 6) od společnosti Microsoft. Pod platformou.net se skrývá mnoho možností jaký programovací jazyk využít. Pro tento projekt byl zvolen programovací jazyk C#, který se objevil počátkem roku 2006. Jazyk C# byl vytvořen zcela nově jako moderní, jednoduchý, objektově orientovaný a typově bezpečný programovací jazyk odvozen od C a C++.Relativní jednoduchost vytvoření uživatelského prostředí dělá z tohoto prostředí velmi silný nástroj. Platforma.NET je bohužel zatím spustitelná pouze pod operačními systémy Windows. Jelikož tento systém je využíván 95% počítačů neměl by být problém tento projekt spustit na jakékoliv dnešním počítači či notebooku s operačním systémem Windows XP či novějším, kde.net Framework je nainstalován. 4.1. Modul CLR Obrázek 6. Schéma platformy.net Jádrem platformy je její běhové prostředí, které se označuje jako modul CLR (Common Language Runtime). Kód spuštěný pod kontrolou modulu CLR se označuje jako řízený kód (Manage code). Než tento modul může spustit námi napsaný program je nutné zdrojový kód přeložit do jazyka IL (Intermediate Language) a poté z jazyka IL do kódu pro cílovou platformu. Jazyk IL se překládá metodou Just-In-Time (JIT). Tento postup poskytuje dvě základní výhody. Zvýšení výkonu a budoucí přenositelnost aplikace na různé platformy. 4.2. Jazyk C# Pro vytvoření uživatelského prostředí je možné použít dvě možnosti. Starší, ale o to rozšířenější grafické rozhraní Windows Forms (Application Programming Interface) nebo novější rozhraní Windows Presentation Foundation (Rich User Interface) založeného na XAML (Extensible Application Markup Language). Pro tento projekt byla zvolena druhá z možností. Předpokládá se, že tento jazyk se bude velice rychle rozvíjet a vzniknout další obdobné projekty, které by bylo možné jednoduše spojit. Další důvodem je relativní jednoduchost vytvoření uživatelsky přátelského prostředí.

5. Program Uživatelské prostředí programu se skládá z nabídky, kde lze najít základní příkazy pro vytvoření sítě, jimiž jsou možnosti vytvořit, vyhladit a smazat síť. Dále je zde možnost zavřít program a uložit souřadnice jednotlivých obrazců sítě do textového souboru. Pod kontextovou nabídkou je umístěn panel, na kterém jsou umístěny příkazy pro vkládání 2D geometrie (bod, vícenásobná čára, obdélník). Geometrii lze zadávat pomocí myši, ale i pomocí příkazového řádku, kde lze zadat potřebnou hranici v souřadném systému. Jako počátek souřadnicového systému byl zvolen pravý horní roh kreslící plochy. Největšími přednostmi zmíněného programu je jednoduchost a dostupnost zdarma bez jakýchkoliv omezení. Na obrázku 6 lze vidět základní rozhraní programu a názorný příklad při postupu generování sítě. V pravém horním rohu je zobrazen základní obrazec pro vytvoření sítě. V levé dolní části je zobrazena počáteční síť, která je vytvořena prvotně a poté je z ní vytvořena finální síť (vpravo dole). Obrázek 7. Postup generování sítě v prostředí FEMSoftware Program je možné zdarma stáhnout z osobních stránek autora na Katedře betonových a zděných konstrukcí Fakulty stavební ČVUT v Praze (http://concrete.fsv.cvut.cz/~hejnic). Program není vázán žádnou licencí pro použití. 6. Závěr Článek ukazuje na možnost využití, dnes zdarma dostupných prostředků, pro vytvoření užitečných programů pro zjednodušení řešení inženýrských problémů. Byly zde popsány základní metody pro generování sítí konečných prvků a jejich základní vlastnosti. Je zde ukázáno zpracované řešení daného problému s využitím moderního programovacího jazyka C#, které je dostupné široké veřejnosti. Podrobněji jsou rozebrány detaily realizace vytvoření sítě konečných prvků při zadání libovolného polygonu. Dalším krokem, pro zlepšení funkčnosti programu, bude vylepšená implementace pro vkládání vnitřních bodů do sítě. Poděkování Článek vznikl za finanční podpory grantu Studentské grantové soutěže číslo SGS11/107/OHK1/2T/11 na fakultě stavební ČVUT v Praze. Literatura [1] P.J. Frey, P-L. George, Mesh Generation, HERMES Science Europe Ltd, 2000 [2] P-L. George, H. Borouchaku, Delaunay Triangulation and Meshing, Editions HERMES, Paris, 1998 [3] GAMBIT 2.3 Documentation,{http://my.fit.edu/itresources/manuals/gambit2.3/help/index.htm } [4] MATLAB Online Help Library, {http://mathworks.com } [5] Microsoft Online Help Library, {http://msdn.microsoft.com }

Seznam obrázků: Obrázek 8. Typy používaných 2D prvků [3] Obrázek 9.(a) Struktura dat metody Quad/Octree; (b) Šablony pro 2D síť Obrázek 10. Postup tvorby sítě metodou postupující fronty Obrázek 11. (a) Delaunayho triangulace, (b) Rozdíl mezi triangulacemi Obrázek 12. Rozdíl mezi vyhlazenou (tmavá) a nevyhlazenou (světlá) sítí Obrázek 13. Schéma platformy.net Obrázek 14. Postup generování sítě v prostředí FEMSoftware