Prohlášení o autorství

Podobné dokumenty
Geometrická zobrazení

Úlohy domácího kola kategorie B

Buckinghamův Π-teorém (viz Barenblatt, Scaling, 2003)

1 Gaussova kvadratura

7.3.9 Směrnicový tvar rovnice přímky

(iv) D - vybíráme 2 koule a ty mají různou barvu.

7.3.9 Směrnicový tvar rovnice přímky

Příklady: - počet členů dané domácnosti - počet zákazníků ve frontě - počet pokusů do padnutí čísla šest - životnost televizoru - věk člověka

1 Linearní prostory nad komplexními čísly

MATEMATIKA II V PŘÍKLADECH

5. Lokální, vázané a globální extrémy

4. Přednáška: Kvazi-Newtonovské metody:

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

P. Rozhodni, zda bod P leží uvnitř, vně nebo na kružnici k. Pokud existují, najdi tečny kružnice procházející bodem P.

0.1 Úvod do lineární algebry

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová.

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

Metoda konjugovaných gradientů

Nejdřív spočítáme jeden příklad na variaci konstant pro lineární diferenciální rovnici 2. řádu s kostantními koeficienty. y + y = 4 sin t.

0.1 Úvod do lineární algebry

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

β 180 α úhel ve stupních β úhel v radiánech β = GONIOMETRIE = = 7π 6 5π 6 3 3π 2 π 11π 6 Velikost úhlu v obloukové a stupňové míře: Stupňová míra:

Soustavy linea rnı ch rovnic

Soustavy lineárních rovnic

3. Mocninné a Taylorovy řady

1 Řešení soustav lineárních rovnic

Numerická matematika 1

1 Soustavy lineárních rovnic

1.1 Existence a jednoznačnost řešení. Příklad 1.1: [M2-P1] diferenciální rovnice (DR) řádu n: speciálně nás budou zajímat rovnice typu

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

Aplikovaná numerická matematika - ANM

4 všechny koeficienty jsou záporné, nedochází k žádné změně. Rovnice tedy záporné reálné kořeny nemá.

1 Determinanty a inverzní matice

3.3.4 Thaletova věta. Předpoklady:

Dnešní látka: Literatura: Kapitoly 3 a 4 ze skript Karel Rektorys: Matematika 43, ČVUT, Praha, Text přednášky na webové stránce přednášejícího.

Mocnost bodu ke kružnici

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

1 Projekce a projektory

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

f (k) (x 0 ) (x x 0 ) k, x (x 0 r, x 0 + r). k! f(x) = k=1 Řada se nazývá Taylorovou řadou funkce f v bodě x 0. Přehled některých Taylorových řad.

Co jsme udělali: Au = f, u D(A)

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

(Cramerovo pravidlo, determinanty, inverzní matice)

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Literatura: Kapitoly 3, 4 a 2 d) ze skript Karel Rektorys: Matematika 43, ČVUT, Praha, Text přednášky na webové stránce přednášejícího.

( ) Příklady na otočení. Předpoklady: Př. 1: Je dána kružnice k ( S ;5cm)

FREDHOLMOVA ALTERNATIVA

1 Báze a dimenze vektorového prostoru 1

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Greenova funkce pro dvoubodové okrajové úlohy pro obyčejné diferenciální rovnice

3.2.9 Věta o středovém a obvodovém úhlu

Mocnost bodu ke kružnici

Součin matice A a čísla α definujeme jako matici αa = (d ij ) typu m n, kde d ij = αa ij pro libovolné indexy i, j.

Determinanty. Obsah. Aplikovaná matematika I. Pierre Simon de Laplace. Definice determinantu. Laplaceův rozvoj Vlastnosti determinantu.

Budeme hledat řešení y(x) okrajové úlohy pro diferenciální rovnici druhého řádu v samoadjungovaném tvaru na intervalu a, b : 2 ) y i p i+ 1

Lineární zobrazení. 1. A(x y) = A(x) A(y) (vlastnost aditivity) 2. A(α x) = α A(x) (vlastnost homogenity)

Výběr báze. u n. a 1 u 1

Řešení 1b Máme najít body, v nichž má funkce (, ) vázané extrémy, případně vázané lokální extrémy s podmínkou (, )=0, je-li: (, )= +,

2. Určete jádro KerL zobrazení L, tj. nalezněte alespoň jednu jeho bázi a určete jeho dimenzi.

1.5.7 Prvočísla a složená čísla

Fakt. Každou soustavu n lineárních ODR řádů n i lze eliminací převést ekvivalentně na jednu lineární ODR

LDF MENDELU. Simona Fišnarová (MENDELU) LDR druhého řádu VMAT, IMT 1 / 22

Aplikovaná numerická matematika

IB112 Základy matematiky

9 Kolmost vektorových podprostorů

Godunovovy metody pro 1D-Eulerovy rovnice

3.2.9 Věta o středovém a obvodovém úhlu

Definice globální minimum (absolutní minimum) v bodě A D f, jestliže X D f

Úvod do lineární algebry

Rovnice přímky vypsané příklady. Parametrické vyjádření přímky

MĚŘENÍ MOMENTU SETRVAČNOSTI Z DOBY KYVU

ANALYTICKÁ GEOMETRIE V ROVINĚ

19 Eukleidovský bodový prostor

MATEMATIKA 1 4 A B C D. didaktický test. Zadání neotvírejte, počkejte na pokyn! MA1ACZMZ07DT. Pokyny pro vyplňování záznamového archu

9. přednáška 26. listopadu f(a)h < 0 a pro h (0, δ) máme f(a 1 + h, a 2,..., a m ) f(a) > 1 2 x 1

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s

9 Stupně vrcholů, Věta Havla-Hakimiho

Operace s maticemi. 19. února 2018

Obsah. Lineární rovnice. Definice 7.9. a i x i = a 1 x a n x n = b,

V této sekci zobecníme vnější kalkulus z kapitoly 4 operaci vnějšího. se sice na zde zavedené operace budeme odvolávat, vždy ale jen jako

Věta 12.3 : Věta 12.4 (princip superpozice) : [MA1-18:P12.7] rovnice typu y (n) + p n 1 (x)y (n 1) p 1 (x)y + p 0 (x)y = q(x) (6)

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení.

Matematika 1 MA1. 1 Analytická geometrie v prostoru - základní pojmy. 4 Vzdálenosti. 12. přednáška ( ) Matematika 1 1 / 32

EUKLIDOVSKÉ PROSTORY

Diskrétní řešení vzpěru prutu

Soustavy lineárních rovnic a determinanty

verze 1.3 x j (a) g k 2. Platí-li vztahy v předchozím bodu a mají-li f, g 1,..., g s v a diferenciál K = f + j=1

Hledáme lokální extrémy funkce vzhledem k množině, která je popsána jednou či několika rovnicemi, vazebními podmínkami. Pokud jsou podmínky

6 Samodružné body a směry afinity

Interpolace, ortogonální polynomy, Gaussova kvadratura

Průvodce studiem. do bodu B se snažíme najít nejkratší cestu. Ve firmách je snaha minimalizovat

Matematika I, část I. Rovnici (1) nazýváme vektorovou rovnicí roviny ABC. Rovina ABC prochází bodem A a říkáme, že má zaměření u, v. X=A+r.u+s.

Soustavy lineárních rovnic

Učební texty k státní bakalářské zkoušce Matematika Diferenciální rovnice. študenti MFF 15. augusta 2008


Vlastní čísla a vlastní vektory

Transkript:

Prohlášení o autorství Prohlašuji, že jsem tuto diplomovou práci vypracoval samostatně. Uvedl jsem všechny literární prameny a publiace, ze terých jsem čerpal. V Ostravě dne 4. větna 2010

Poděování Na tomto místě bych rád poděoval za posytnutí zajímavého tématu diplomové práce, terý navazoval na téma mé baalářsé práce, příslušných materiálů, všech potřebných rad, návodů a v neposlední řadě za vstřícné vedení při tvorbě mé diplomové práce svému vedoucímu Ing. Daliboru Luáši, Ph.D. Dále bych rád poděoval své rodině, své přítelyni, svým blízým a přátelům za dostate prostoru a pochopení při tvorbě práce. Dále bych rád poděoval Vysoé šole báňsé, zvláště pa celé Katedře apliované matematiy, že mi umožnili velice zajímavé a do budoucna prospěšné studium.

Abstrat Většinu praticých úloh, teré vedou matematicému modelování pomocí parciálních diferenciálních rovnic (PDR), nelze řešit analyticy, ale musí se využít numericých metod. Jedním z líčových problémů při numericém řešení PDR je aproximace orajových podmíne. Disretizační síť musí věrně opírovat hranici oblasti, což pro praticé úlohy znamená rozsáhlé soustavy lineárních rovnic. Alternativní postup, tzv. ompozitní onečné prvy, byl navržen v [1], dy se disretizují oblasti s velmi jemnými geometricými detaily pomocí hierarchicého zjemňování neonformní sítě [2]. Navržené onečně-prvové bázové funce pa mají velé nosiče, tedy výsledné soustavy mají hustěji zaplněné matice, teré se vša umí efetivně řešit. Tato práce se zabývá onstrucí a řešením úloh touto metodou. Klíčová slova: ompozitní metoda onečných prvů, metoda onečných prvů, disretizace sítě, hierarchicá triangulace, Poissonova úloha Abstract Most practical problems that lead to mathematical modelling using partial differential equations (PDE) cannot be solved analytically, instead numerical methods should be applied. One of the main problems for numerical solution of PDE is an approximation of boundary conditions. Discretisation grid must properly represent border of the domain, which leads to large systems of linear equations for practical problems. An alternative method, so called composite finite elements, was proposed in [1]. This method leads to construction of hierarchy of non-conforming grids, which cover the domain with small geometric details [2]. Composite finite element basis functions have bigger supports and the resulting system matrices are more dense, but these systems can be solved efficiently. The aim of this thesis is to construct and solve problems using this method. Key words: composite finite elements, finite elements method, domain discretisation, hierarchical triangulation, Poisson's equation

Seznam použitých symbolů a zrate PDR Parciální diferenciální rovnice MKP Metoda onečných prvů CFE Composite finite elements A Matice tuhosti úlohy F Vetor pravé stany u h Aproximace řešení Oblast úlohy Hranice oblasti K Element triangulace Disretizační síť Bázová funce

Obsah 1. Úvod 3 2. Metoda onečných prvů 6 2.1. Princip metody onečných prvů 6 2.2. Slabé řešení 6 2.3. Aproximace řešení 9 2.4. Výpočet a onstruce matic 12 3. Kompozitní metoda onečných prvů (CFE Composite finite elements) 16 3.1. Disretizace (triangulace) oblasti a hierarchie sítí 16 3.2. Tvorba bázových funcí 20 3.3. Sestavení matice tuhosti a vetoru pravé strany úlohy 22 4. Použité algoritmy a přílady 26 4.1. Algoritmy 26 4.2. Přílad řešení Poissonovy úlohy na oblasti se třemi výřezy 30 4.3. Přílad řešení Poissonovy úlohy na oblasti s pěti výřezy 34 5. Závěr 35 Seznam použité literatury 36 Seznam příloh 37 1

Seznam obrázů Obráze 1.1: Vizualizace nárazového testu vozidla 3 Obráze 1.2: Model auta metodou onečných prvů 4 Obráze 2.1: Rozdělení oblasti 10 Obráze 2.2: Typicá bázová funce 11 Obráze 2.3: Referenční trojúhelní a souřadnice 14 Obráze 2.4: Přílad disretizace 1-dimenzionální úlohy 15 Obráze 2.5: Přílad triangulace 2-dimenzionální úlohy 15 Obráze 2.6: Přílad disretizace na čtyřúhelníy 2-dimenzionální úlohy 15 Obráze 2.7: Přílad disretizace 3-dimenzionální úlohy 15 Obráze 3.1: Počáteční dělení oblasti 16 Obráze 3.2: Síť l min, de l min = 2 17 Obráze 3.3: Přílad hraniční sítě l max, de l max = 7 18 CFE Obráze 3.4: Přílad sítě l max 19 Obráze 3.5: Bázové funce z různých hladin 20 Obráze 3.6: Nosiče bázových funcí 21 Obráze 3.7: Hranice oblasti 22 Obráze 3.8: Uázová triangulace a onstruce matice tuhosti 25 Obráze 4.1: Počáteční porytí podle h 27 Obráze 4.2: Triangulace olem hranice 30 Obráze 4.3: Oblast a počáteční porytí 31 Obráze 4.4: CFE síť uázového příladu 31 Obráze 4.5: Řídost matice tuhosti úlohy 32 Obráze 4.6: Řešení a stupnice hodnot 32 Obráze 4.7: Hladé stínování řešení 33 Obráze 4.8: 3-D uáza řešení 33 Obráze 4.9: Hladé barevné stínování řešení 34 Obráze 4.10: Prohnutí membrány ve 3D pohledu 34 2

1 Úvod: V dnešní době jsou ladeny vysoé požadavy na bezpečnost, valitu a cenu. Napřílad nároy na onstruce všech typů vozidel, onstruce nosníů, nebo napřílad spojů ropných potrubí jsou podstatně vyšší, než tomu bývávalo dříve. Všechny tyto a mnoho dalších objetů musí splňovat nejvyšší možné bezpečnostní požadavy, musí mít maximální odolnost vůči nepříznivým vlivům oolí, musí mít co nejlepší parametry pro plnění své funce. Toho je docíleno prováděním množství testů a měření na prototypech jednotlivých onstrucí. Pro mnoho případů je vša většina testů pro prototyp fatální. Po proběhnutí testu zůstanou na prototypu nevratné změny a pošození (napřílad nárazové testy automobilů, viz Obr. 1.1), nebo je prototyp naprosto zničen (např. zátěžové testy podpěr a nosníů). Obr. 1.1: Vizualizace nárazových testů modelu vozidla použitý z [5] Proto se hledají jiné možnosti optimalizace požadovaných parametrů, než testy sutečných prototypů. Napřílad testování vesmírných stanic nebo letadel je jistě velice náladné, ne-li nemožné. Začaly se proto vytvářet virtuální modely a testy se prováděly pomocí počítačů a různých simulačních softwarů virtuálně. To zapříčinilo zvýšení požadavů na numericé techniy řešení, vznilo mnoho nových a speciální modifiace starých metod zaměřené na onrétní testy a technicé problémy. Vytvoření modelů a použití vhodné numericé techniy umožnilo optimalizovat vešeré parametry testovaného objetu ještě před tím, než první reálný prototyp spatřil světlo světa. 3

Velé množství praticých technicých a vědecých problémů se popisuje parciálními diferenciálními rovnicemi (PDR). Nalézt řešení analyticou cestou je vša již pro 2-dimenzionální úlohy mnohdy nemožné, proto je třeba původní úlohu aproximovat a úlohu řešit numericy. V této práci, zejména v apitole 2, se budeme zabývat popisem numericé techniy vhodné řešení mnoha technicých problémů, a to metodou onečných prvů (MKP). MKP je založena na objemové disretizaci zoumaného objetu. To znamená, že se model objetu rozdělí na onečně mnoho elementů neboli prvů, teré pa aproximují sutečný objem modelu. V dnešní době se metoda onečných prvů stala jedním ze záladních amenů numericých techni, využívá ji velé množství softwarů simulování fyziálních, technicých či vědecých problémů. Již při výuce se studenti vysoých šol mohou s touto metodou setat. Stala se součástí osnov mnoha technicý oborů. Já se s touto metodou setal poprvé v předmětu Numericé metody a studiem metody jsme se zabývali i v dalších navazujících předmětech. Již má baalářsá práce [2] se zabývá jednou z částí MKP, onrétně disretizací oblasti. Metoda onečných prvů je vhodná pro použití u těch úloh, de požadave na přesnost řešení se liší v různých částech zoumané oblasti. Napřílad u nárazových testů vozidel můžeme zvýšit přesnost v přední části vozidla a na důležitých součástách, naopa v zadní části vozu můžeme přesnost snížit, čímž snížíme i výpočetní nároy na samotnou úlohu. Viz Obr. 1.2. Obr. 1.2: Modelace auta metodou onečných prvů (Obráze je z [6]) 4

Dále je metoda onečných prvů vhodná u úloh, de se může oblast měnit, dyž očeávané řešení není hladé, nebo zoumaná oblast obsahuje nějaé ompliované tvary či geometricé detaily. Dimenze úlohy řešené pomocí MKP silně závisí na geometrii zoumaného objetu. To může být problém u oblastí s velmi malými geometricými detaily. Kvůli dosažení požadované přesnosti musíme rozdělit celý objet na mnoho elementů, veliostí odpovídající geometricým detailům oblasti. To může zapříčinit, že vůli drobnému geometricému detailu rozdělíme na velmi malé elementy i tu část objemu objetu, de to ani zdalea není zapotřebí. To nám podstatně zvedá dimenzi úlohy, což značně zvyšuje časové i technicé nároy na samotný výpočet a limituje použití napřílad multi-gridní metody nalezení řešení. Na problém s drobnými geometricými detaily (např. oblasti s výřezy tvaru ružnice, terými se zabývá [2] i tato práce) je právě zaměřena speciální modifiace lasicé MKP, tzv. ompozitní metoda onečných prvů, je hlavní částí této práce a terou se budeme zabývat v apitole 3. Výhodou této metody je to, že zachytí drobné geometricé detaily nejen v disretizaci oblasti, ale i v onstruci bázových funcích prostoru řešení. Tato metoda je detailně popsána včetně rigorózní analýzy v článcích [1] a [3] od autorů W. Hacbusche a S.A. Sautera, ze terých jsem čerpal nejvíce. V těchto článcích je dále uvedena i numericá studie a něoli vhodných metod řešení, napřílad multi-gridní metoda vhodná pro nalezení řešení této speciální metody. 5

2 Metoda onečných prvů(mkp) 2.1 Princip metody onečných prvů Metoda onečných prvů je založena na objemové, resp. obsahové disretizaci zoumaného objetu na onečný počet elementů reprezentujících tento objet. Namísto hledání přesného řešení analyticou cestou, aproximujeme úlohu pomocí těchto elementů, nad těmito elementy vytvoříme bázové funce a prostory, de budeme hledat přibližné řešení. Pomocí elementů pa převedeme úlohu na lineární systém rovnic, jehož řešením nalezneme požadovanou aproximaci sutečného řešení. Různými metodami dělení objetu a tvary použitých elementů pa můžeme origovat přesnost řešení. Obecně je metoda onečných prvů charaterizována následujícími roy: Rozdělení oblasti na elementy, tzv. disretizace. Nejčastěji se používá dělení na trojúhelníy, čtyřúhelníy, ale lze použít i další typy onvexních polygonů. Určení bázových funcí. V tomto textu využijeme po částech lineární funce, ale často se používají i po částech polynomiální bázové funce. Aproximace úlohy s požadovanou přesností. Sestavení matice a pravé strany, soustavy lineárních rovnic. Apliace orajových podmíne. Řešení soustavy rovnic. V následujícím textu apitoly čerpáme hlavně z článu [4] od autora Endre Süliho, ve terém je popsána teorie metody onečných prvů pro parciální diferenciální rovnice. Ke studiu této apitoly je taé potřeba znát záladní pojmy funcionální analýzy. 2.2 Slabé řešení K ilustraci metody onečných prvů použijeme jao uázový přílad orajovou úlohu elipticé parciální diferenciální rovnice. Elipticé úlohy reprezentuje nehomogenní analogie Poissonova rovnice u= f, de užíváme Laplaceův operátor Δ, označující n = i=1 2 x i 2. 6

Nechť je lipschitzovsá oblast na R n druhého řádu n i, j =1 x j a ij x u x i de oeficienty a ij, b i, c a f splňují následující podmíny: a ij C 1, i, j=1,...,n ; b i C, i=1,..., n; c C, f C, a taé n i, j=1 a uvažujme lineární parciální diferenciální rovnici n b i x u c x u= f x, x, (2.1) i=1 x i n a ij x i j c 2 i, = 1,..., n R n, x ; (2.2) i=1 zde je c ladná onstanta nezávislá na x a ξ. Podmína (2.2) je označována jao stejnoměrná elipticita a (2.1) proto nazýváme elipticou rovnicí. Existuje něoli typů orajových podmíne, zde uvedeme dvě záladní: (a) u = g na 1 (Dirichletova orajová podmína), de g udává funci definovanou na 1 ; (b) u =h na 2 (Neumannova orajová podmína), de ν udává jednotový vnější normálový vetor e 2 a de h je salární funce definovaná na 2, de 1 2 = a 1 2 =. Začneme s Dirichletovou orajovou úlohou n i, j=1 x j a ij u n x i i=1 de a ij, b i, c a f jsou stejné jao ve (2.2). b i x u x i c x u= f x, x, u=0 na, Funce u C 2 C splňující (2.3) se nazývá lasicé řešení úlohy. Teorie parciálních diferenciálních rovnic říá, že existuje jediné lasicé řešení rovnice, poud jsou a ij, b i, c, f a dostatečně hladé. Nicméně v mnoha praticých úlohách jsou tyto podmíny porušeny a zde je použití lasicé teorie nevhodné. Vezměme si napřílad Poissonovu rovnici s nulovou Dirichletovou orajovou podmínou na oblasti = 1,1 n na R n [4]: u=sgn 1 2 x, x u=0, x. } (2.3) (Λ) Tato úloha nemá lasicé řešení, hledané řešení by mělo být spojité na, což není možné, protože sgn 1/2 x není spojitá funce na. 7

Abychom doázali vyřešit parciální diferenciální rovnici s nehladými daty a přeonali limity lasicé teorie, zobecníme představu řešení oslabením podmíne diferencovatelnosti u. Definice 1 Nechť a ij L, i, j=1,...,n, b i L, i=1,...,n, c L a nechť f L 2. Funce u H 0 1 splňující n i, j=1 a ij x u x i n i=1 v dx x j b i x u x i v dx c x uv dx= f x v x dx v H 1 0 (2.4) nazýváme slabým řešením rovnice (2.3). Všechny parciální derivace v (2.4) musíme chápat ve smyslu slabé derivace. Je zřejmé, že poud existuje lasicé řešení, pa existuje i slabé řešení. Naopa ale tvrzení neplatí. Jestliže má úloha slabé řešení, nemusí být dostatečně hladé, aby bylo zároveň lasicým řešením. Napřílad úloha (Λ) má jednoznačné slabé řešení u H 0 1, přesto nemá lasicé řešení. Pro zjednodušení zavedeme následující značení: n a w,v = i, j=1 a ij x w x i n i=1 v dx x j l v = S tímto značením můžeme přepsat úlohu (2.4) následovně: nalezněte u H 0 1 ta, aby platilo a u, v =l v b i x w v dx c x uv dx (2.5) x i f x v x dx. (2.6) v H 0 1. Nebudeme doazovat existenci a jednoznačnost řešení, tomu jen využijeme větu z funcionální analýzy. Všechny předpolady jsou splněny. 8

Věta 2 (Laxova-Milgramova ) Předpoládejme, že V je reálný Hilbertův prostor s normou. V. Nechť a.,. je taová bilineární forma na V x V, aby platilo: (a) c 0 0 v V a v, v c 0 v 2 V, (b) c 1 0 v,w V a v,w c 1 w V v V, a nechť je l v V * lineární funcionál na V ta, že (c) c 2 0 v V l v c 2 v V. Pa existuje právě jedno u V ta, že a u, v =l v v V, navíc platí stabilita řešení u 1 l * c V. 0 2.3 Aproximace úlohy, disretizace oblasti V prvním rou onstruce MKP elipticého problému (2.3) převedeme úlohu na její slabou formulaci: nalezněte u V ta, aby platilo a u, v =l v v V, (P) de V je prostor řešení (napřílad H 1 0 pro homogenní Dirichletovu orajovou podmínu), a.,. je bilineární funcionál na V x V, a l(.) je lineární funcionál na V (napřílad (2.5) a (2.6)). Ve druhém rou onstruce nahradíme prostor V z problému (P) onečně-dimenzionálním podprostorem V h V, terý je složen ze spojitých, po částech lineárních funcí asociovaných s dělením zoumané oblasti. Uvažujme tedy následující aproximaci problému (P): nalezněte u h V h ta, aby platilo a u h,v h =l v h v h V h. (P h ) Předpoládejme napřílad, že dimv h =N a V h =span{ 1,..., N }, de mají lineárně nezávislé bázové funce i, i=1,..., N dostatečně malý nosič. Vyjádříme aproximované řešení u h z hledisa bázových funcí i : de zavedeme U i, i = 1,...,N(h). N u h x = U i i x, ( ) i=1 9

Obr. 2.1: Rozdělení (triangulace) oblasti. Obráze triangulace použit z [4]. Pa můžeme přepsat problém (P h ) tato: nalezněte U 1,...,U N R N ta, aby platilo N a i, j U i =l j, j=1,..., N. (P' h ) i=1 Dostaneme systém lineárních rovnic pro U = (U 1,...,U N ) T s maticí A= a j, i o rozměrech N x N. Protože funce i mají malý nosič, pa bude a j, i = 0 pro většinu dvojic i a j, taže matice A bude řídá. Tato vlastnost je zásadní, jeliož máme dispozici mnoho rychlých iteračních metod pro nalezení řešení pro velmi řídé matice. Jamile vyřešíme problém (P' h ) pro U = (U 1,...,U N ) T, rozložení ( ) nám posytne požadovanou aproximaci u. Dále uvedeme onstruci MKP na jednoduchém příladu. Nechť je ohraničená oblast v R 2 s polygonální hranicí ; pa můžeme oblast přesně porýt onečným počtem trojúhelníů. Předpoládáme, že aždá dvojice trojúhelníů triangulace mají společnou buď právě jednu celou hranou, vrchol, nebo jsou disjuntní, ja je znázorněno na Obr. 2.1. S aždým uzlem triangulace asociujeme bázovou funci, terá má hodnotu 1 v daném uzlu a má hodnotu 0 v ostatních uzlech. je spojitá funce na a je lineární nad aždým trojúhelníem, ja je znázorněno na Obr. 2.2. Všechny uzly triangulace oblasti očíslujme 1,2,...,N a nechť jsou 1 x, y,..., N x, y příslušně asociované bázové funce. Funce 1,..., N jsou lineárně nezávislé a jejich obal je N-dimenzionální lineární podprostor V h prostoru H 0 1. 10

Obr. 2.2: Typicá bázová funce onečných prvů. Obráze bázové funce použit z [4]. Uvažujme následující elipticou orajovou úlohu: u= f na, u=0 na. Začneme s uvážením slabé formulace (speciální případ z apitoly 2.2, dy n=2, a ij x 1 pro i= j a a ij x 0 v jiném případě,b i x 0 pro všechna i a c x 0 ): nalezněte u H 0 1 ta, aby platilo u v x x u v y y dx dy= f v dx dy v H 1 0. Aproximace této úlohy onečnými prvy: Zapsáním nalezněte u h V h ta, aby platilo u h v h x x u h v h y y dx dy= f v h dx dy v h V h. N u h x, y = U i i x, y, i=1 můžeme metodu onečných prvů přeformulovat následujícím způsobem: nalezněte U 1,...,U N T R N N U i=1 i[ i j x x i j y y ] dx dy = ta, aby platilo f j dx dy, pro j=1,..., N. 11

Nechť A = (a ij ), F = (F 1,...,F N ) T, a ij = a ji = i x F j = j x i j y y dx dy, f j dx dy, pa lze aproximaci onečných prvů napsat jao systém lineárních rovnic AU = F. Vyřešením této soustavy zísáme U = U 1,...,U N T, a proto i aproximaci řešení u h. 2.4 Výpočet a onstruce matic Původní úlohu tedy aproximujeme systémem lineárních rovnic AU = F, de A nazveme globální maticí tuhosti veliosti N x N s prvy a vetor F = F 1,... F N T a i, j = i, j = i x, y. j x, y dx dy, nazveme globální vetor pravé strany, de F i = f, i = f x, y i x, y dx dy. Sestavení matice A a vetoru pravé strany F provedeme sečtením loálních přírůstů příslušných bázových funcí aždého trojúhelníu K triangulace oblasti. Očíslujeme všechny uzly triangulace od 1 do N. Poté přiřadíme aždému trojúhelní K index = 1,...,M. Každý trojúhelní identifiuje index a trojice vrcholů, terou seřadíme proti směru hodinových ručiče. Loální matice tuhosti A trojúhelníu K s indexem a vrcholy a=(x a, y a ), b=(x b, y b ), c=(x c, y c ), terým odpovídají asociované bázové funce a, b, c budou vypadat tato: aa A =[a a ba a ca a ab a bb a cb a ac a bc a cc ], de a ij = K i x, y. j x, y dx dy de i,j = a, b, c a loální vetor pravé strany F : de i = a, b, c. F =[ f a f b f c ], de f i = K f x, y i x, y dx dy, 12

Zavedeme funce g : R 3 3 R N N, teré zobrazí matici A na matici A *.... a... b... c... [* * * * * * * * a aa * a ab * a ac * A * = * * * * * * * * a ba * a bb * a bc * * * * * * * * * a ca * a cb * a cc * * * * * * * *], de na místech * budou nuly. Výsledná globální matice tuhosti A pa bude: M A= g A. =1 Zavedeme funce h : R 3 R N, teré zobrazí vetor F na vetor F *.... a... b... c... F * = [* f a * f b * f c de místo * budou nuly. Výsledný vetor pravé strany F bude: M F = h F T. =1 Jamile máme sestavenou globální matici tuhosti A i vetor pravé strany F můžeme vyřešit úlohu AU = F a pomocí U = U 1,...,U N T *], zísáme hledanou aproximaci řešení u h. Samotný výpočet loálních matic tuhosti provedeme transformací elementu do referenčních souřadnic na referenční trojúhelní, viz Obr. 2.3. Matici A spočteme jao A =B T B ½ det R, de det R je změna objemu trojúhelníu při transformaci, ½ je obsah referenčního trojúhelníu a matice B je transformace gradientů funcí a, b, c do referenčních souřadnic. Matice R a B vypočteme následujícími vzorci: R =[ x x, x x b a c a y b y a, y c y a], B = R [ T 1 1 0 1 0 1]. Transformací do referenčních souřadnic řešíme i výpočet vetoru pravé strany F. Loální vetor pravé strany F vypočteme pomocí hodnoty funce f a hodnot funcí a, b, c v těžišti trojúhelníu K o souřadnicích x t, y t. Díy vhodné onstruci bázových funcí bude jejich hodnota v těžišti rovna 1/3. 13

Obr. 2.3: Referenční trojúhelní a loální souřadnice. Obráze použit z [4]. Vetor pravé strany F proto spočteme vzorcem F = f x t, y t ⅓,⅓,⅓ T ½ det R. Po sestavení matic úlohy je vhodné apliovat Dirichletovy podmíny. Máme zadány Dirichletovy podmíny u=0 na, jejich apliace se provádí vynulováním všech nediagonálním prvů matice A ve všech řádcích a sloupcích odpovídajícím uzlům triangulace oblasti, teré leží na hranici. Podobný postup jao výše zmíněný se dá apliovat na různé problémy. Ať už na odlišné typy rovnic, různé orajové podmíny, různé typy disretizací oblasti. Existují proto různé modifiace metody onečných prvů. Chyba metody je silně závislá na tvaru jednotlivých elementů disretizace zoumaného objetu. Obecně je potřeba, aby vnitřní úhly v rámci elementu nebyly příliš rozdílné, nevysytovaly se žádné příliš ostré úhly. Proto je nejvhodnější napřílad u triangulace použití rovnostranných, nebo pravoúhlých trojúhelníů, de déla všech stran nebude příliš rozdílná. Testování metody a algoritmů řešení popisované v této práci probíhalo na oblastech nazývaných pláte ementálu [3], což je obdélníová oblast obsahující výřezy ve tvaru ružnice. Pro disretizaci byl zvolen lineární pravoúhlý trojúhelní, de dély stran jsou si blízé a proto chyba metody je přijatelná. 14

Uvedeme zde něoli typů elementů používaných pro disretizace různých problémů (přílady použité z [7]): i) 1-Dimenzionální úlohy Obr. 2.4: V tomto obrázu jsou dvě možnosti disretizace v 1-D. Vlevo je použita lineární disretizace, na pravém obrázu pa vadraticé disretizace ii) 2-Dimenzionální úlohy Obr. 2.5: V tomto obrázu je uázáno něoli možností triangulací. Vlevo je použita lineární triangulace, na prostředním a pravém obrázu pa dva přílady vadraticé triangulace Obr. 2.6: Zde je uázána disretizace pomocí čtyřúhelníů. Lineární triangulace je na dvou příladech vlevo, na dvou příladech vpravo pa vadraticá triangulace iii) 3-Dimenzionální úlohy Obr. 2.7: V tomto obrázu jsou uázány tři přílady prostorové disretizace. Vlevo je disretizace pomocí čtyřstěnů, uprostřed pomocí pravoúhlých hranol, vpravo pa pomocí obecných šestistěnů. Uzly disretizací jsou v obrázcích zobrazeny jao. Tyto uzly budou sloužit pro onstruci bázových funcí a prostorů při onrétním použití disretizace. V následující apitole popíšeme ompozitní metodu onečných prvů. 15

Obr. 3.1: Na prvním obrázu je přílad, dy rozměry oblasti umožňují vytvořit počáteční porytí jednoduše rozdělením diagonálou na dva trojúhelníy. Ja vidíme u druhého obrázu, u této oblasti bychom dostali příliš ostrý úhel, což by vedlo e snížené přesnosti řešení. Na třetím obrázu pa vidíme vhodnější způsob počáteční triangulace oblasti. 3 Kompozitní metoda onečných prvů (CFE Composite finite elements) 3.1 Disretizace (triangulace) oblasti a hierarchie sítí V této apitole čerpáme z článů [1] a [3] a používáme stejné značení. Disretizaci oblasti a tvorbě hierarchie sítí se již věnovala má baalářsá práce [2], terou využijeme pro generaci něterých obrázů. Kvůli onstruci matice tuhosti a vetoru pravé strany úlohy vša potřebujeme romě disretizace uvedené v [2] ještě další informace. V této části textu proto zreapitulujeme triangulaci oblasti a vše, co budeme potřebovat pro sestavení rovnice úlohy. CFE je neonformní metoda onečných prvů, tj. V h V, proto nebudeme definovat standardní prostory onečných prvů, ale vhodným způsobem zahrneme geometricé detaily do definice bází prostorů. Předpoládejme, že R 2 má po částech hladou hranicí =. Hranice oblasti vša může obsahovat drobné geometricé detaily, mirostrutury. Prvním roem triangulace metody ompozitních onečných prvů je zoumanou oblast rozdělit pomocí počátečního porytí 0. Toto porytí může být napřílad původní obdélníová oblast rozdělená diagonálou na dva trojúhelníy, což je vhodné u čtvercových oblastí, nebo obdélníových oblastí blízých čtverci. Vzhledem tomu, že další roy triangulace zachovávají poměry stran trojúhelníů z počátečního porytí, není vhodné pro příliš vysoé či úzé oblasti tato postupovat. Mohli bychom dostat nevhodný poměr stran trojúhelníu. Proto rozdělíme oblast raději na více trojúhelníů ta, ať vytvoříme co nejlepší poměry stran, viz Obr. 3.1. 16

Obr. 3.2: Síť l min, de l min = 2. Počáteční porytí 0 nemůže být bráno jao aproximace hranice oblasti, ale splňuje pouze rovnost dom 0. Označením dom rozumíme vnitře oblasti poryté sítí : dom =int K K. V další fázi vytvoříme hierarchii sítí { l } 0 l l min ta, že budeme triangulovat oblast až na úroveň l min. zjemňováním trojúhelníů počátečního porytí 0 oblasti, teré leží uvnitř oblasti a taé těch trojúhelníů, teré protínají hranici. Tím mimo jiné dostaneme i síť l min, terá je zobrazena na Obr 3.2. Zjemňování trojúhelníu K probíhá ta, že jej rozdělíme pomocí středních příče (spojením středů stran) na 4 trojúhelníy (K 1-4 ), teré dědí tvar původního trojúhelníu a navíc platí: K = i=1,...,4 K i Dále pa vytvoříme hierarchii { l } lmin l l max, teré reprezentují hranici oblasti, a proto je budeme označovat jao hraniční sítě. Nejjemnější hraniční síť l max by měla reprezentovat hranici oblasti s dostatečnou přesností. To znamená, že můžeme hranici dostatečně přesně aproximovat užitím hran prvů ležících na této hranici, viz Obr. 3.3. Výše zmíněnou hierarchii hraničních sítí vytvoříme ta, že vždy budeme zjemňovat ty trojúhelníy sítě l max, teré protínají hranici a neleží vně oblasti. Použijeme stejný princip zjemňování jao u tvorby 17

Obr. 3.3: Přílad hraniční sítě l max, de l max = 7, reprezentace oraje je již velice přesná. sítě l min, ale u aždého zjemněného trojúhelníu si budeme pamatovat jeho potomy, tj. trojúhelníy vznilé jeho zjemněním. V algoritmu pa použijeme opačný postup, u aždého nově vznilého trojúhelníu si budeme pamatovat, ze terého trojúhelníu vznil. To je důležité při onstruci bázových funcí a pro výpočet a onstruci matic úlohy. Nyní sloučíme síť l min s hierarchií hraničních sítí ta, že z aždé sítě počínaje l min vybereme ty trojúhelníy K, teré neleží vně oblasti a teré nemají potomy. Tzn. neexistuje trojúhelní z vyšší sítě, terý by vznil dělením tohoto trojúhelníu, viz Obr. 3.4. Tuto CFE výslednou síť označíme l min a nazveme sítí ompozitních onečných prvů. Množinu všech uzlů sítě označme CFE lmin. Tato síť representuje přesné rozdělení oblasti, i dyž v obecném případě nemůže být považována za lasicou síť onečných prvů, protože se v síti objevují visící uzly a síť je vysoce nerovnoměrná. Zdůrazněme, že jemnější rozdělení oblasti poblíž hranice je potřebné definování bázových funcí a určení jejich nosičů. S aždým uzlem této výsledné sítě bude asociována jedna bázová funce. Ke onstruci těchto bázových funcí použitým algoritmem nám výše zmíněný postup nebude stačit. Bude nutné vytvořit ještě jednu hierarchii sítí { l } lmin l l max. Tuto hierarchii vytvoříme ta, že nebudeme dělit pouze ty trojúhelníy K sítě l min, teré neleží vně oblasti a protínají hranici, ale taé všechny trojúhelníy sousední. 18

Obr. 3.4: Přílad sítě l min CFE, de lmin = 2 a l max = 6. Sousedním trojúhelníem K' trojúhelníu K nazveme taový trojúhelní, terý je ze stejné sítě a splňuje K K ', tzn mají společný alespoň jeden vrchol. Je zřejmé, že { l } { l } pro aždé l, proto je efetivnější vytvořit nejdříve hierarchii sítí { l } a z té poté vyextrahovat { l }. To je v algoritmu řešeno ta, že si pro aždý trojúhelní K pamatujeme důvod zjemnění. Zda-li přímo protínal hranici, nebo hranici protínal jeho soused. Pomocí této informace snadno sestavíme z této sítě CFE síť. Stejným způsobem jao jsme tvořili síť l min CFE pa vytvoříme síť CFE l min. Množinu všech uzlů sítě označme lmin CFE. Pro onstruci ompozitních onečných prvů budeme ještě potřebovat jeden typ sítí. Podmnožiny sítí { l } lmin l l max, teré obsahují jen ty trojúhelníy, teré leží uvnitř oblasti označíme m a definujeme je jao m ={K m K nemá žádné potomy}. V následující seci se budeme zabývat definicí bázových funcí CFE, de osvětlíme, proč je třeba dělit i trojúhelníy sousední a dále se budeme zabývat onstrucí prostorů CFE. 19

Obr. 3.5: Uáza dvou bázových funcí z různých úrovní a jejich nosičů Tmavě šedá označuje nosič funce z vyšší úrovně, tmavě a světle šedá označuje nosič funce z nižší úrovně. 3.2 Tvorba bázových funcí U lasicé metody onečných prvů měla aždá bázová funce společnou část nosiče maximálně s tolia jinými bázovými funcemi, s olia uzly byl uzel asociovaný touto bázovou funcí spojen společnou hranou. U ompozitních onečných prvů toto neplatí. To sice znamená, že výsledná matice tuhosti A bude méně řídá, než u lasicé metody, ale to je cena za to, že snížíme dimenzi úlohy při stejné přesnosti na hranici i o něoli řádů. Ja tedy budou vypadat bázové funce u ompozitní metody onečných prvů popíšeme v tomto odstavci. Každá bázová funce bude na první pohled vypadat stejně jao u lasicé metody, tj. jao na Obr. 2.9. Rozdíl ale bude v tom, že funce asociované s uzly vznilých na různých úrovních budou mít různé veliosti nosičů, ja je zobrazeno na Obr. 3.5. Nosičem aždé bázové funce bude sjednocení všech potomů trojúhelníů, teré vznily na stejné úrovni jao uzel příslušný této funci, mimo trojúhelníy ležících vně oblasti. Na Obr. 3.6 je zobrazen přílad části sítě CFE l min (vlevo) a zobrazení příslušné části sítě l min nosiče bázových funcí asociovaných s uzly X a 8. Bázová funce X CFE CFE (vpravo). Barevně jsou zde zobrazeny bude lineární na aždém z trojúhelníů, bude nabývat hodnoty 1 na uzlu X a bude mít hodnotu 0 na uzlech 1-6. Hodnota na uzlech 7-13 se dá zjistit jednoduchou interpolací hodnot sousedních uzlů. Bázová funce 8 CFE bude nabývat hodnoty 1 na uzlu 8 20

Obr. 3.6: Uáza nosičů bázových funcí X CFE a 8 CFE na sítích. l min CFE (vlevo) a l min CFE (vpravo). a hodnoty 0 na ostatních uzlech. Bude taé lineární na aždém trojúhelníu sítě l min CFE a po částech lineární na aždém trojúhelníu sítě CFE l min. S uzly X a 1-9, teré jsou uzly obou sítí budou asociovány příslušné funce. Uzly 10-13 jsou uzly jen pomocné sítě CFE l min, s těmito uzly nebudou žádné bázové funce asociovány. Slouží určení nosiče bázových funcí asociovanými s uzly 7-9. Na Obr. 3.6 je nosič bázové funce X CFE zobrazen šedě (tmavě i světle šedá) a nosič bázové funce 8 CFE je zobrazen tmavě šedou barvou. Dva bílé trojúhelníy uvnitř červeného obdélníu značí elementy vně oblasti. Nad těmito elementy nebudou žádné bázové funce definovány. Nosič funce X CFE bude sjednocení trojúhelníů {1,2,X}, {2,3,X}, {X,3,4}, {X,5,6}, {X,7,8} a {7,4,9}. Nosič funce 8 CFE bude sjednocení trojúhelníů {X,7,8}, {X,8,11}, {8,10,11}, a {8,5,10} Průniem nosičů funcí X CFE a 8 CFE bude nosič 8 CFE. V předchozím části apitoly jsme vygenerovali hierarchii hraničních sítí { l } lmin l l max reprezentující hranici oblasti a hierarchii úplných sítí { l } 0 l l min, teré porývají oblast. Na těchto sítích onečných prvů (buď na hraničních, nebo úplných) můžeme definovat standardní prostory onečných prvů S S ={v R d dom K :v K je po částech lineární }. 21

Obr. 3.7: Část hranice 1 je zobrazena černou barvou a část 2 je zobrazena červenou barvou. 3.3 Sestavení matice tuhosti a vetoru pravé strany úlohy Sestavení systému rovnic uvedeme na příladu elipticé orajové úlohy s homogenními Dirichletovými podmínami na hranici. Nechť máme oblast tvaru plátu ementálu, viz [3]. To znamená, že je obdélníového tvaru a má ruhové výřezy. Mějme hranici rozdělenou na 1 a 2, de 1 odpovídá oraji obdélníu a 2 odpovídá orajům ruhových výřezů, ja je zobrazeno na Obr.3.7. Uvažujme následující elipticou orajovou úlohu s homogenními Dirichletovými podmínami: u= f na, u=0 na 1, Uvažujme CFE disretizaci oblasti. Máme síť CFE l min, terá obsahuje M elementů a množinu CFE lmin obsahující N uzlů, síť l min CFE, terá obsahuje M elementů a množinu lmin CFE obsahující N uzlů. Na síti l min CFE sestrojíme bázové funce i CFE, de i = 1,...,N. Mějme aproximaci slabého řešení u h zapsanou následujícím způsobem: N u h x, y = U i i x, y. i=1 22

Máme tedy nalézt U = U 1,... U N T R N ta, aby platilo de A= a ij, F= F 1,..., F N T, a ij = a ji = CFE i x F j = AU = F, j CFE x CFE CFE i j y y dx dy, f j CFE dx dy. V této části si popíšeme sestavení matice A o veliosti N x N a sestavení vetoru pravé strany F. CFE Pro aždý prve K sítě l min s indexem =1,..., M sestavíme loální matici tuhosti A a loální vetor pravé strany F. Pro sestavení matice A budeme potřebovat najít všechny bázové funce, teré nemají nad prvem K nulovou hodnotu. Tyto funce nalezneme ta, že postupně hledáme předy prvu K až po úroveň l min. Uzel předa prvu K sítě l min s indexem i bude asociován s bázovou funcí i CFE, poud uzel bude zároveň prvem množiny CFE lmin. Podle hladiny, na teré prve K vznil při triangulaci, a podle umístění uvnitř oblasti může taových uzlů být podstatně více, než jen tři, ja bylo u lasicé MKP. Seřaďme indexy tato nalezených uzlů a označme je i 1, i 2,. Těmto uzlům bude odpovídat X bázových funcí i CFE i = i 1, i 2,, i X, teré nabývají nenulové hodnoty nad prvem K. Matice A R X X pro prve K bude vypadat tato: Prvy matice spočítáme tímto vzorcem: a i1 i 2 a i2 i 2 i1 i A =[a 1... a i2 i 1.........], a ij = { CFE i x, y. CFE j x, y dx dy, de i, j=i 1,i 2,...,i X. K CFE Zavedeme funce g : R X X R N N, teré zobrazí matici A na matici A *.... i 1... i 2... [* * * * * A * = * a i1 i 1 * a i1 i 2 * * * * * * * a * a i2 i 1 i2 i 2 * * * * * *], de na místech * budou nuly. 23

Výslednou matici tuhosti A pa spočteme pomocí: Vetor F R X F =[ f i1 bude vypadat tato: f i2...], de f i = K M A= g A. =1 f x, y i CFE x, y dx dy, de i=i 1,i 2,...,i X. Zavedeme funce h : R X R N, teré zobrazí vetor F na vetor F * tato: F * = [* f i1... i 1... i 2... * f i2 *], de místo * budou nuly. Výsledný vetor pravé strany F pa bude: M F = h F T. =1 Jamile máme sestavenou globální matici tuhosti A i vetor pravé strany F můžeme vyřešit úlohu AU = F a pomocí U = U 1,...,U N T zísáme hledanou aproximaci řešení u h. Samotný výpočet loálních matic tuhosti provedeme transformací elementu do referenčních souřadnic na referenční trojúhelní, viz Obr. 2.3. Kromě transformace objemu elementu budeme ještě potřebovat transformace gradientů jednotlivých bázových funcí. Prvy matice A elementu K s uzly X=(x X, y X ), Y=(x Y, y Y ), Z=(x Z, y Z ) spočteme tato: a ij =b it b j ½ det R, de det R je změna objemu trojúhelníu při transformaci, ½ je obsah referenčního trojúhelníu a b i a b j jsou prvy matic B I a B J, což jsou transformační matice elementu I, resp. J, gradientu funce i, resp. j, de i,j = a,b,c,... do referenčních souřadnic. Element I, resp. J, je přede prvu K z hladiny, na teré vznil uzel i, resp. j. Přílad je zobrazen na Obr. 3.8. Matici R zísáme tato: Matici B I, resp. B J R =[ x Y x X spočteme tímto vzorcem: x Z x X y Y y X y Z y X]. de má element I uzly X I = x X I B I = R I T [ 1 1 0 1 0 1],, y X I,Y I = x Y I, y Y I, Z I = x Z I, y Z I. Vetor b i pa odpovídá příslušnému sloupci matice B I. 24

Obr. 3.8: Na obrázu je zobrazena uázová triangulace. Trojúhelníy {1,7,9}, {7,8,9}, {7,4,8} a {9,8,6} vznily zjemněním trojúhelníu {1,4,6}. Ten spolu s {4,2,5}, {4,5,6} a {6,5,3} vznil zjemněním trojúhelníu {1,2,3}. Máme spočítat matici tuhosti pro prve K s indexem. Nenulovou hodnotu na tomto prvu budou mít bázové funce 1, 2, 3, 4, 6, 8 a 9. Matice A proto bude mít rozměr 7 x 7, tomu odpovídají řády a sloupce matice s indexy 1,...,7. Prve matice A pro uzly 1 a 4 spočítáme pomocí vzorce a 14 =b J T b I ½ det R, de element I je trojúhelní {1,4,6} a element J je trojúhelní {1,2,3}. Matici R I vypočítáme tato: R I =[ x I I Y x X y I I Y y X x I I Z x X ] y I I Z y. X Transformací do referenčních souřadnice řešíme i výpočet vetoru F. Prve f i loálního vetoru pravé strany F vypočteme pomocí hodnoty funce f a hodnoty funce i v těžišti X t K = x t, y t trojúhelníu K. Hodnotu bázové funce i v těžišti X t K spočítáme jao průměrnou hodnotu funce i v uzlech X, Y a Z trojúhelníu K. Hodnoty funce i v uzlech X, Y a Z můžeme zísat napřílad jednoduchou interpolací. Prve f i proto spočteme vzorcem: f i = f x t, y t i X i Y i Z 3 ½ det R. 25

4 Použité algoritmy a přílady 4.1 Algoritmy Testovací algoritmus, terý slouží řešení zadané úlohy u=1 na, u=0 na 1, u v =0 na 2, se sládá z něolia záladních roů. Spouští se s parametry l min a l max. Tyto roy jsou: načtení oblasti, podmíny přesnosti ( h - vůli počátečnímu porytí) vytvoření počátečního porytí podle h vytvoření hierarchie úplných sítí { l } 0 l l min, po aždém rou zjemňování provedeme reduci sítě o elementy ležící mimo oblast (uvnitř ruhových výřezů) vytvoření hierarchie sítí { l } lmin l l max a opět prováděná reduce sestavení CFE sítě l min CFE sestavení l min CFE, abychom zísali bázové funce a mohli sestavit matice úlohy označení uzlů ležících na oraji vhodnými podmínami (Dirichlet, Neumann) výpočet matice úlohy A sečtením loálních matic pro všechny elementy sítě l min výpočet vetoru pravé strany F sečtením loálních vetorů elementů sítě l min (výpočet A a F probíhá v algoritmu jedné metodě) apliace orajových podmíne vyřešení soustavy AU=F výpočet řešení u h vyreslení řešení V této části textu se budeme zabývat uázou jednotlivých algoritmů. Pro formulaci něterých algoritmů použijeme pseudo-programátorsý jazy. Nejprve tedy popíšeme požadavy na zadání úlohy. Zoumaná oblast se načítá z textového souboru, de první hodnota je počet ruhových výřezů, další řády pa odpovídají těmto výřezům zadaným souřadnicí středu a poloměrem, což nám určí 2, další řáde odpovídá zadanému h a poslední dva pa odpovídají rohovým bodů, obdélníu určujícími 1. CFE CFE 26

Obr. 4.1: Na obrázu je zadaná oblast třirát širší než vyšší. Při nevhodně zadaném h bychom mohli zísat elementy nevyhovujícího tvaru, příliš ostré úhly. V tomto případě máme h zadané jao ratší ze stran obdélníu a proto počet dělení výšy(ny) bude 1 a šířy (nx) bude 3. Všimněte si, že máme mnohem lepší tvary elementů, než dybychom dělili oblast pouze diagonálou (nx = ny = 1). Dalším roem je vytvoření počátečního porytí podle zadaného h metoda init_grid(, h) nx = počet dělení šířy oblasti ny = počet dělení výšy oblasti, viz. Obr. 4.1. for i = 0 to ny for j = 0 to nx vytvoř_uzel vytvoří uzel odpovídající souřadnicím (i,j) na Obr. 4.1 a nastaví jeho úroveň na hodnotu 0 vytvoř_prvy vytvoří dva prvy, poud i,j > 0 vytvoř_hrany vytvoří příslušné hrany end for end for end V dalším rou tvoříme hierarchii úplných sítí { l } 0 l l min algoritmem: metoda refine_full(uzly, hrany, prvy, hladina) for i = 1 to počet_hran vytvoř_uzel vytvoří uzel uprostřed hrany i a nastaví jeho úroveň na hodnotu (hladina+1) vytvoř_hrany vytvoří dvě hrany rozpůlením hrany i end for for i = 1 to počet_prvů vytvoř_hrany vytvoří 3 hrany spojením středů stran, uzly již vznily v předchozím cylu vytvoř_prvy vytvoří 4 prvy spojením středů stran trojúhelníu i a nastaví, že vznily z prvu o indexu i end for end 27

Tento algoritmus voláme od 0 až do hladiny l min. Nyní vytvoříme hierarchii sítí { l } lmin l l max. Nejdříve voláme metodu určení, teré prvy dělit: metoda refine_setup(uzly, hrany, prvy, hladina, 2 ) for i = 1 to počet_prvů urči_dělení označí, zda prve i leží na hranici 2 a tedy jestli jej budeme dělit end for for i = 1 to počet prvů urči_sousedství označí, zda prve i sousedí s něterým prvem určeným dělení end for end Po této metodě zavoláme metodu dělení prvů: metoda refine(uzly, hrany, prvy, hladina) for i = 1 to počet_hran if dělit - poud je hrana součástí prvu určenému dělení vytvoř_uzel vytvoří uzel uprostřed hrany i a nastaví jeho úroveň na hodnotu (hladina+1) end if end for for i = 1 to počet prvů if dělit - poud je prve určeném dělení vytvoř_hrany vytvoří 3 hrany spojením středů stran vytvoř_prvy vytvoří 4 prvy a nastaví, že vznily z prvu i end if end for end Tento postup opaujeme od úrovně l min + 1 až po l max. Nyní sestavíme CFE síť l min CFE. Součástí této sítě budou všechny prvy, teré nemají potomy a ty, teré sice mají potomy, ale byly rozděleny vůli sousedství, nioliv, že by protínali hranici 2. Síť CFE l min bude obsahovat všechny prvy, teré nemají potomy. Nyní označíme uzly sítě l min CFE ležící na 1 jao D uzly a dále označíme uzly ležící na 2 jao N uzly. Vzhledem tomu, že máme zadány homogenní Neumannovy podmíny, ta neměníme výpočet matic úlohy. Apliace Dirichletových podmíne nám ovšem ušetří něoli výpočtů prvů matice úlohy. 28

Funce f bude vzhledem zadání vetor jedniče. Matici A a vetor pravé strany F sestavíme tímto algoritmem: metoda compute(uzly, prvy_ CFE l min, uzly_ CFE l min, f) CFE for i = 1 to počet_prvů_ l min připrav_indexy připraví indexy uzlů, e terým mají příslušné asociované bázové funce nenulovou hodnotu nad tímto prvem for j = počet_indexů urči_index_ i j index i j odpovídá j-tému indexu z připravených vypočti_ f i j i viz apitola 3.3 F( i j ) = F( i j ) + f i j i - přičte hodnotu příslušné hodnotě vetoru F for = počet_indexů if (j == ) nebo (j a nejsou D uzly) apliace Dirichletových podmíne urči_index_ i index i odpovídá -tému indexu z připravených vypočti_ a i j i i viz apitola 3.3 A( i j, i ) = A( i j, i ) + a i j i i end if end for end for end for end Nyní již stačí vyřešit soustavu AU=F. Dostaneme U = U 1,...,U N T a pomocí vyjádříme hledanou aproximaci řešení u h. N u h x, y = U i i x, y i=1 Nyní už zbývá jen vyreslit výsledné řešení. To provádíme vyreslováním jednotlivých CFE trojúhelníů sítě l min do jednoho grafu. Něoli onrétních příladů uážeme v následující části textu, včetně něolia vyreslení výsledných grafů. 29

Obr. 4.2: Na prvním řádu obrázu je zobrazena lasicá triangulace zevnitř, na druhém řádu je pa zobrazena triangulace z vnějšu ruhových výřezů, ja jsme použili v uázovém příladu. 4.2 Přílad řešení Poissonovy úlohy na oblasti se třemi výřezy V uázovém příladu je použita uáza, dy jsou sítě l min CFE a CFE l min tvořeny ta, abychom se části oraje 2 blížili volbou l max z vnějšu ruhových výřezů, viz Obr. 4.2, a ne zevnitř, ja je popsáno výše. Rozdíl je nepatrný a pro ilustraci je tento postup vhodnější. Uvedeme přílad pro následující Poissonovu orajovou úlohu s homogenními Dirichletovými a Neumannovými podmínami: u=1 na, u=0 na 1, u v =0 na 2 } ( ) Mějme oblast tvaru čtverce o straně 1 a obsahující něoli ruhových výřezů, viz. Obr 4.3. CFE disretizací oblasti, dy máme zadáno h=1, l min =5 a l max =8, viz. Obr 4.4, máme vytvořenou síť 5 CFE, terá obsahuje M = 3063 elementů a N = 1912 uzlů. Sestavíme bázové funce i CFE, de i = 1,...,N. Mějme aproximaci slabého řešení u h: N u h x, y = U i i x, y. i=1 Matice A má veliost 1912 x 1912, proto na Obr. 4.5 zobrazíme jen náhled na její nenulové prvy. 30

Obr. 4.3: Na obrázu je oblast, terá je definovaná jao, de ={0,1} {0,1} a je sjednocení tří ruhových oblastí. Na obrázu je zobrazeno počáteční porytí 0 (trojúhelníy {1,3,4} a {1,4,2}). Obr. 4.4: Na obrázu je zobrazena CFE síť 5 CFE. Je zřejmé, že je vnitře oblasti reprezentován s dostatečnou přesností, ale na přesnou reprezentaci části hranice 2 bylo vhodné disretizovat jemnějšími trojúhelníy. Výsledné řešení této úlohy uážeme na něolia obrázcích. Na Obr. 4.6 je zobrazeno řešení, de je interpolována barva jednotlivých elementů, podle rozsahu řešení a je zde zobrazena stupnice hodnot. Na Obr. 4.7 je zobrazeno řešení, teré je interpolováno postupně přes celou oblast. Na Obr. 4.8 je zobrazen 3D graf výsledného řešení vyreslen po jednotlivých elementech. Díy neonformnosti triangulace obsahuje 3D graf něoli otvorů, protože je vyreslován přes elementy. 31

Obr. 4.5: Na obrázu jsou zobrazeny nenulové prvy matice A. V matici, terá obsahuje přes 3 milióny prvů je jich nenulových jen 14428. Řídost matice je způsobena nejen onstrucí bázových funcí, ale i apliací Dirichletovy homogenní podmíny. Obr. 4.6: Jeden z příladů prezentace řešení. Je zde zobrazena stupnice hodnot řešení. Jednotlivé elementy mají barvu podle průměrné hodnoty vrcholů tohoto elementu. 32

Obr. 4.7: Zde je zobrazeno hladé stínování řešení. Černými ružnicemi je zobrazena sutečná hranice 2. Obr. 4.8: Na této dvojici obrázů je zobrazeno řešení včetně triangulace. V levé části je lasicé 2D zobrazení, vpravo je pa 3D zobrazení, de je v nejbližším rohu vidět něoli otvorů vznilých neonformností triangulace. 33

4.3 Přílad řešení Poissonovy úlohy na oblasti s pěti výřezy Zde uvedeme Poissonovu orajovou úlohu ( ) pro oblast se složitější hranicí 2 oproti příladu z apitoly 4.2. Oblast tohoto příladu je =, de ={0,1} {0,1} a je sjednocení tří větších ruhových výřezů a dvou menších. Tento přílad dobře ilustruje jaý má geometrie oblasti vliv na průhyb membrány a jaý vliv má homogenní Neumannova podmína na hranici 2. Při homogenní Neumannově podmínce musí být izolinie (vrstevnice) olmé na tuto hranici v aždém jejím bodě, což je nejlépe patrné z Obr. 4.9. Na Obr. 4.10 je pa 3D zobrazení průhybu membrány. Výsledné řešení je pro hodnoty h=1, l min =5 a l max =8. Obr. 4.9: Hladé barevné stínování řešení. Obr. 4.10: Prohnutí membrány ve 3D pohledu. 34

5 Závěr Studiem metody ompozitních onečných prvů jsem strávil a ještě strávím mnoho času. Tato metoda umožňuje řešení mnohých úloh s taovou přesností, terá není jinými metodami dosažitelná, ať už z hledisa výpočetní či časové náročnosti. Konstruce této metody ale není jednoduchá a je třeba najít vhodný ompromis volby l min a l max ta, aby metoda byla ještě efetivní pro aždou úlohu zvlášť. Při vysoém l min můžeme obdržet příliš mnoho neznámých, při nízém snižujeme přesnost na oblasti dále od oraje a sice snížíme počet neznámých, zvýšíme ale procentuální počet nenulových prvů matice úlohy. Mé studium této metody se týalo jen specificého problému, Poissonovy rovnice s homogenními Dirichletovými a Neumannovými podmínami. Navíc na oblasti s jasně definovanými geometricými detaily. Proto je přede mnou ještě spoustu práce při studiu této metody pro obecnější úlohy. Program metody jsem postavil ta, aby se dalo výměnou jednotlivých omponent algoritmu přizpůsobit program na jaouoliv úlohu. Napřílad hranice by mohla být mnohem ompliovanější a v programu by stačilo přepsat metodu pro určení, zda prve protíná hranici. Přizpůsobit program na oblasti, teré budou mít ompliovanější tvar než obdélní se dá taé jednoduše, jen úpravou metody tvorby počátečního porytí. Taé sestavení lineárního systému úlohy pro jiné než Poissonovy úlohy by znamenal pouze úpravu výpočtu loální matice a vetoru pravé strany pro daný element. Pro rozsáhlé úlohy a vysoé přesnosti l min a l max by bylo vhodné problém paralelizovat, napřílad rozdělením oblasti na něoli částí. Budu se proto zabývat studiem této metody i v budoucnu, ať už její apliací na ompliovanější problémy nebo na její 3-dimenzionální variantou. 35

Seznam použité literatury [1] W. Hacbusch, S.A. Sauter Composite finite elements for problems containing small geometrical details. Part II: Implementation and numerical results. Comp. Vis. Sci. 1, pp. 15-25, 1997 [2] A. Ronovsý Hierarchicá triangulace plátu ementálu. Baalářsá práce FEI VŠB-TU Ostrava, 2007 Práce dostupná na: http://am.vsb.cz/theses/baalari/2007/pdfs/ronovsy.pdf [3] W. Hacbusch, S.A. Sauter Composite finite elements for approximation of PDEs on domains with complicated micro-structures. Institut für Informati und Pratische Mathemati, Universität Kiel, 1995 [4] Endre Süli Finite Element Methods for Partial Differential Equations, 2007 Text dostupný z: http://web.comlab.ox.ac.u/people/endre.suli/fem.ps [5] Wiipedia - http://en.wiipedia.org/wii [6] http://www.msc.commas.uni-stuttgart.de/images/car_mesh.gif [7] http://amp.postech.ac.r/course/fem.html Introduction to Finite Element Method [8] Yousef SAAD - Iterative methods for sparse linear systems. Second edition with corrections, 2000 Text dostupný z: http://www-users.cs.umn.edu/~saad/ps/all_pdf.zip 36

Seznam příloh K diplomové práci je přiloženo CD, teré obsahuje: tuto práci ve formátu.pdf, tuto práci ve formátu.odt použité obrázy testovací soubory uvedených příladů 37