Rychlé výpočetní metody pro Maxwellovy rovnice VŠB TU Ostrava, 14. dubna 2005 D. Lukáš Katedra aplikované matematiky, Centrum pokročilých a inovačních technologií, VŠB Technická univerzita Ostrava email: dalibor.lukas@vsb.cz
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Maxwellovy rovnice Popisují elektromagnetické pole v prostoru a čase. B(x, t), H(x, t)... magnetické indukce, intenzita; B(x, t) = µ(x)h(x, t) D(x, t), E(x, t)... elektrická indukce, intenzita; D(x, t) = ε(x)e(x, t) J (x, t)... hustota elektrického proudu vnucená vnějším zdrojem; divj (x, t) = 0 ρ(x)... hustota elektrického náboje σ(x)... elektrická vodivost v R 3 (0, ): roth(x, t) = J (x, t) + σ(x)e(x, t) + B(x, t) rote(x, t) = t dive(x, t) = ρ(x) divb(x, t) = 0 D(x, t) t Navíc: B(x, t) 0, E(x, t) 0 pro x a B(x, t) = B 0 (x), E(x, t) = E 0 (x)
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Maxwellovy rovnice: nízko-frekvenční případ Necht ω > 0 je úhlová frekvence a necht Pak také J (x, t) = Re { J(x)e iωt}, J(x) : Ω C 3 B(x, t) = Re { B(x)e iωt}, B(x) : Ω C 3 E(x, t) = Re { E(x)e iωt}, E(x) : Ω C 3 Je-li ω malé, zanedbáme Maxwellovy posuvné proudy ω 2 ε(x) a máme nízko-frekvenční semidefinitní případ: ( ) 1 rot µ(x) rote(x) + iωσ(x)e(x) = iωj(x) v Ω R 3 Magnetické pole: B(x) = i ω rote(x) Vířivé proudy: J eddy (x) = iωσ(x)e(x) div (ε(x)e(x)) = ρ(x) v Ω E(x) n(x) = 0 na Ω
Maxwellovy rovnice: nízko-frekvenční případ Geometrie: cívka a vodivý plát
Maxwellovy rovnice: nízko-frekvenční případ Magnetické pole
Maxwellovy rovnice: nízko-frekvenční případ Magnetické pole
Elektrické pole Maxwellovy rovnice: nízko-frekvenční případ
Elektrické pole Maxwellovy rovnice: nízko-frekvenční případ
Maxwellovy rovnice: nízko-frekvenční případ Vířiové proudy ve vodivém plátu
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Maxwellovy rovnice: elektrostatika Je-li ω = 0, pak E(x) = gradφ(x), kde Φ je skalární elektrický potenciál (napětí). Máme úlohu elektrostatiky: div (ε(x)gradφ(x)) = ρ(x) v Ω R 3 Φ(x) = 0 na Ω
Maxwellovy rovnice: elektrostatika Geometrie: desky kondenzátoru
Elektrické pole Maxwellovy rovnice: elektrostatika
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Maxwellovy rovnice: magnetostatika Zaved me magnetický vektorový potenciál u: B(x) = rotu(x), divu(x) = 0 a máme úlohu magnetostatiky: ( ) 1 rot µ(x) rotu(x) = J(x) v Ω R 3 divu(x) = 0 u(x) n(x) = 0 v Ω na Ω
Maxwellovy rovnice: magnetostatika Geometrie: cívka protékaná proudem
Magnetické pole Maxwellovy rovnice: magnetostatika
Magnetické pole Maxwellovy rovnice: magnetostatika
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Multigrid pro 1D úlohu struny Mějme příčně zatíženou strunu, jejíž průhyb je popsán eliptickou (parciální) diferenciální rovnicí Au(x) = b, A + I, na duálu k Hilbertově prostoru (V,.,. ). 0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Diskretizujme úlohu na hierarchii sítí: T 0 := {0, 1/2, 1}: A 0 u 0 = b 0, T 1 := {0, 1/4, 1/2, 3/4, 1}: A 1 u 1 = b 1 atd. Necht (V l,.,. l ) jsou příslušné diskretizace Hilbertova prostoru V a necht E L l, kde l < L, je operátor rozšíření z V l do V L. Označme dále N l := dimv l, h l := 1 N l 1.
Multigrid pro 1D úlohu struny Hrubé řešení A 0 u 0 = b 0 0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Multigrid pro 1D úlohu struny Dekompozice A 0 u 0 = b 0 0 0.002 0.004 0.006 0.008 A 1 u 1 = b 1 0.01 0.012 0.014 0 0.002 0.016 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.004 0.006 0.008 0.01 w 1 := u 1 E 1 0u 0 0.012 0.014 0.016 0 x 10 3 1 0.018 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 3 4 5 6 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Multigrid pro 1D úlohu struny Vyhlazení chyby A 0 u 0 = b 0 0 0.002 0.004 A 1 u 1 = b 1 0.008 0.01 0.006 u 1 1 := E 1 0u 0 + w 1 1 0.014 0.016 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.012 0 0.002 0.004 0.006 0.008 w 1 w 1 1 := (diaga 1 ) 1 (b 1 A 1 E 1 0u 0 ) 0.01 0.012 0.014 0.016 0.018 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 3 x 10 3 2 1 0 1 2 3 4 5 6 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Opakované vyhlazení chyby Multigrid pro 1D úlohu struny 0 0.002 A 0 u 0 = b 0 0.004 A 1 u 1 = b 1 0.008 0.01 0.006 0 0.002 0.004 0.006 0.008 u 1 1 := E 1 0u 0 + w 1 1 u 2 1 := u 1 1 + w 2 1 u 3 1 := u 2 1 + w 3 1 0.012 0.014 0.016 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 w 1 1 := (diaga 1 ) 1 (b 1 A 1 E 1 0u 0 ) w 2 1 := (diaga 1 ) 1 (b 1 A 1 E 1 0u 0 +w 1 1) w 1 w 3 1 := (diaga 1 ) 1 (b 1 A 1 E 1 0u 0 +w 1 1+w 2 1) 0.01 0.012 0.014 0.016 3 x 10 3 2 1 0 0.018 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1 2 3 4 5 6 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Multigrid pro 1D úlohu struny Více úrovní 0 0.002 0.004 0.006 0.008 0.01 0.012 A 0 u 0 = b 0 A 2 u 2 = b 2 0.016 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.014 0 0.002 0.004 u 1 1 := E 1 0u 1 0 + w 1 1 u 1 2 := E 2 1u 1 1 + w 1 2 2 1 0 1 2 3 4 5 6 w 1 w 1 1 := (diaga 1 ) 1 (b 1 A 1 E 1 0u 0 ) 3 x 10 3 0.006 0.008 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.01 0.012 0.014 0.016 0.018 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 x 10 3 1.5 1 0.5 0 0.5 1 w 2 := u 2 E 2 1u 1 w 1 2 := (diaga 2 ) 1 (b 2 A 2 u 1 1) 1.5 2 2.5 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Dekompozice operátoru Multigrid pro 1D úlohu struny A 1 = E 1 0A 0 (E 1 0) T + [ A 1 E 1 0A 0 (E 1 0) T] Multigridový předpodmiňovač = multiplikativní Schwarzova metoda (A 1 ) 1 ( ) C MG 1 1 := E 1 0 (A 0 ) 1 (E 1 0) T + (diaga 1 ) [ 1 I 1 A 1 E 1 0(A 0 ) 1 (E 1 0) T] Aditivní Schwarzova metoda (A 1 ) 1 ( ) C ASM 1 1 := E 1 0 (A 0 ) 1 (E 1 0) T + (diaga 1 ) 1 Aditivní rozklad operátoru může být také indukován rozkladem výpočetní oblasti. Pak získáváme předpodmínění metodou rozložení oblasti.
Multigrid pro 1D úlohu struny Dekompozice spektra operátoru σ(a l ) σ((diaga l ) 1 A l ) σ((c MG l ) 1 A l ) 18000 16000 14000 12000 10000 8000 6000 4000 2000 0 0 1 2 3 4 5 6 7 8 9 10 2 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0 1 2 3 4 5 6 7 8 9 10 2 1.8 1.6 1.4 1.2 1 0.8 0 1 2 3 4 5 6 7 8 9 10 min σ(a l ) cond((diaga l ) 1 A l ) cond((c MG l ) 1 A l ) 3.5 18 x 105 2.5 3 2.5 2 16 14 12 10 2 1.5 1 0.5 8 6 4 2 1.5 0 0 1 2 3 4 5 6 7 8 9 10 0 0 1 2 3 4 5 6 7 8 9 10 1 0 1 2 3 4 5 6 7 8 9 10
Multigrid pro 1D úlohu struny Dekompozice spektra operátoru σ(a l ) σ((c MG l ) 1 A l ) σ((c ASM l ) 1 A l ) 18000 2 6 16000 14000 1.8 5 12000 1.6 4 10000 8000 1.4 3 6000 1.2 2 4000 2000 1 1 0 0 1 2 3 4 5 6 7 8 9 10 0.8 0 1 2 3 4 5 6 7 8 9 10 0 0 1 2 3 4 5 6 7 8 9 10 min σ(a l ) cond((c MG l ) 1 A l ) cond((c ASM l ) 1 A l ) 3.5 3 2.5 2 1.5 1 0.5 0 0 1 2 3 4 5 6 7 8 9 10 2.5 2 1.5 1 0 1 2 3 4 5 6 7 8 9 10 6 5.5 5 4.5 4 3.5 3 2.5 2 1.5 1 0 1 2 3 4 5 6 7 8 9 10
Multigrid pro 1D úlohu struny Matlabovské soubory můžete najít na http://lukas.am.vsb.cz/teaching/1d multigrid/
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Elektromagnet: geometrie Porovnání metod na reálné úloze
Porovnání metod na reálné úloze Elektromagnet: rozložení magnetického pole
Porovnání metod na reálné úloze doba výpočtu [s] (PCG iterace/čas [s]) předpodmiňovač N 0 = 10805 N 1 = 19889 N 2 = 59242 N 3 = 193436 N 4 = 723357 12.71 30.42 224.75 (A l ) 1 (1/0.04) (1/0.08) (1/0.42) nedostatek paměti 7.78 13.08 37.95 128.62 529.16 (diaga l ) 1 (38/0.15) (53/0.39) (70/2.08) (98/11.64) (160/78.96) 11.84 13.7 37.14 125.95 495.34 (C MG l ) 1 (1/0.03) (5/0.42) (6/2.13) (6/8.42) (6/35.97)
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Multigrid: analýza optimální konvergence MG(l) if l = 0 then u 0 := (A 0 ) 1 b 0 else u l 1 := MG(l 1) [Coarse solution] w l := S l (u l 1 ) [Postsmoothing] u l := E l l 1 u l 1 + w l end if Jacobiho smoother: S l (u l 1 ) := (diaga l ) [ 1 b l A l E l l 1 u ] l 1 Optimální výpočetní složitost CPU(MG(0)) C 0 N 0 CPU(MG(l)) CPU(MG(l 1)) + C l N l N l c l β l CPU(MG(l)) Tedy l i=1 c i C i β i C βl 1 β 1 CPU(MG(l)) = O(N l )
Multigrid: analýza optimální konvergence Stejnoměrně omezený počet iterací Počet iterací je úměrný číslu podmíněnosti Ukážeme, že C MG l i C AMS l cond((c MG l ) 1 A l ) = λ max((c MG l ) 1 A l ) λ min ((C MG l ) 1 A l ). jsou stejnoměrně spektrálně ekvivalentní s A, tj. ( c, C, k, K > 0) ( l {0, 1, 2,... }) ( u l V l ) : c C MG l u l, u l l k C ASM l u l, u l l A lu l, u l l K C ASM l u l, u l l C C MG l u l, u l l. Aditivní Schwarzovo lemma Pro u l V l platí: u l 2 l,asm := C ASM l u l, u l l = inf v i V i :u l = l i=0 E l i v i kde v našem případě C 0 := A 0, C i := diaga i pro i {1, 2,... }. l C i v i, v i i, i=0
Multigrid: analýza optimální konvergence Zesílená Cauchy-Schwarzova nerovnost ( C ort > 0) ( γ (0, 1)) ( u i V i ) ( v j V j ) : Al E l iu i, E l jv j C l ortγ i j u i Ci v j Cj Důkaz využívá tzv. inverzní nerovnost: v h (x) L2 ch 1 v h (x) L2. Pak pro libovolné u l V l a pro jeho dekompozici dle aditivní Schwarzovy teorie u l = l i=0 El iv i platí: l l A l u l, u l l = Al E l iv i, E l jv j C l ort γ i j v i Ci v j Cj i,j=0 C ort max i C ort 2 1 γ i,j=0 l γ i j v i Ci v j Cj C ort j=0 C ASM l u l, u l l j Z γ i j l v k 2 C k k=0
Multigrid: analýza optimální konvergence Stabilita dekompozice Zbývá dokázat, že ( C stab > 0) ( u l V l ) : l inf v i V i :u l = C i v i, v i l i C stab A l u l, u l l. i=0 E l i v i i=0 Necht I l : L 2 V l je kvazi-interpolační operátor. Pak platí: l l u l 2 l,asm (h i ) 2 (I i I i 1 )u i 2 L 2 h 2 i u i v 2 L 2 + (h i ) 4 v H 2 i=0 Zaved me K(h 2, u) := inf v H 2{ u v 2 L 2 + h 2 v 2 }, měří hladkost u ve škále h. Fourierovým rozkladem u l (x) v R zjistíme, že H 2 u l 2 l,asm i Z (h i) 2 K((h i ) 2, u i (x)) u l (x) 2 L 2 A l u l, u l l, přičemž pro Lipschitzovskou oblast Ω je u l spojitě rozšiřitelné do R, což bude zahrnuto do C stab. i=0
Multigrid: analýza optimální konvergence Spektrální ekvivalence C MG l s C ASM l je (pouze) dalším technickým oříškem.
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Multigrid pro Maxwellovy rovnice Chceme předpodmínit operátor Au, v (rotu, rotv) L2 + (u, v) L2. Nédélec 1980, Hiptmair 1998 Vše je založeno na Helmholtzově dekompozici H 0 (rot) = Ker 0 (rot) Ker 0 (rot), kde Ker 0 (rot) = {v H 0 (rot) : divu = 0} a Ker 0 (rot) = H 1 0. Multigridová dekompozice pak vyhlazuje každou složku jinak: l V l = V 0 + span(ξ e ) + span(gradϕ x ), i=1 e je hrana v T i x je uzel v T i kde ξ e je lineární Nédélecova hranová FE-bázová funkce, ϕ x je lineární Lagrangeova uzlová FE-bázová funkce a V 0 je lineární Nédélecův prostor na hrubé diskretizaci T 0.
Multigrid pro Maxwellovy rovnice Multigridová dekompozice l V l = V 0 + span(ξ e ) + span(gradϕ x ), i=1 e je hrana v T i x je uzel v T i kde ξ e je lineární Nédélecova hranová FE-bázová funkce, ϕ x je lineární Lagrangeova uzlová FE-bázová funkce a V 0 je lineární Nédélecův prostor na hrubé diskretizaci T 0. Označme Z l diskretizaci (přes T l ) prostoru H0 1 pomocí lineárních uzlových FE-funkcí. Hiptmairův smoother u l+1/2 := u l + (diaga l+1 ) 1 [b l+1 A l+1 u l ] u l+1 := u l+1/2 + T l+1 (diag l+1 ) 1 (T l+1 ) T [b l+1 A l+1 u l+1/2 ] T l+1 : Z l+1 V l+1... transformace z Lagrangeovského do Nédélecova prostoru, l+1 je Laplaceův operátor diskretizovaný v Z l+1.
Smíšená úloha Multigrid pro Maxwellovy rovnice Častěji potřebujeme řešit úlohu (rotu, rotv) L2 = (J, v) L2 na prostoru Ker 0 (rot) = {v H 0 (rot) : divu = 0}. To vede na následující smíšenou (sedlobodovou) úlohu: Hledáme (u, p) H 0 (rot) H0: 1 (rotu, rotv) L2 +( p, v) L2 = (J, v) v H 0 (rot) (u, q) L2 = 0 q H0 1
Smíšená úloha Multigrid pro Maxwellovy rovnice Hledáme (u, p) H 0 (rot) H 1 0: (rotu, rotv) L2 +( p, v) L2 = (J, v) v H 0 (rot) (u, q) L2 = 0 q H0 1 Diskretizace A l u l + (B l ) T p l = b B l u l = 0 Prostor H 0 (rot) jsme nahradili V l, H 1 0 jsme nahradili Z l. A l není pozitivně definitní!
Multigrid pro Maxwellovy rovnice Zou 2003 Zou modifikuje operátor A l následovně: A l u l + (B l ) T p l = b B l u l = 0 Â l := A l + (B l ) T (Ĉl) 1 B l, kde Ĉl : Z l Z l je předpodmiňovač pro Laplaceův operátor. Pak definitní a následující systém dává stejné řešení: Â l u l + (B l ) T p l = b B l u l = 0 Â už je pozitivně Â je navíc spektrálně ekvivalentní se skalárním součinem v H 0 (rot)! Při použití Uzawova algoritmu pak v každé iteraci řešíme jeden systém s Âl použijeme Hiptmairův multigrid a jednu Laplaceovu úlohu. Umíme zkonstruovat optimální řešič!
Multigrid pro Maxwellovy rovnice Úloha s rozšířenými Lagrangiány Au + B p = b Bu = 0 Kromě Uzawova algoritmu můžeme k řešení smíšené úlohy použít algoritmus rozšířených Lagrangiánů, který minimalizuje funkcionál L(u, p, ρ) := 1 2 Au, u + p, Bu + ρ 2 ι 1 Bu, Bu, kde A : V V, B : V Z a ι : V V je Rieszův izomorfismus. To vede na systém (A + ρb ι 1 B)u + B p = b Bu = 0
Multigrid pro Maxwellovy rovnice Úloha s rozšířenými Lagrangiány (A + ρb ι 1 B)u + B p = b Bu = 0 Hiptmair 1996 řeší smíšenou úlohu, která je duální k Laplaceově s pravou stranou f, s Neumannovou podmínkou g na Γ N a s homogenní Dirichletovou podmínkou na Γ D. Hledáme (u, p) H 0,ΓN (div) L 2 : (u, v) L2 +(p, divv) L2 = g(v) v H 0,ΓN (div) (divu, p) L2 = f(w) w L 2 kde p je tentokrát řešení původní Laplaceovy úlohy a u = p je tok. Hiptmair konstruuje předpodmiňovač ( C ρ pro A ρ := A + ρb ι 1 B tak, že pro malé ρ cond((c ρ ) 1 A ρ ) = O nezávisle na jemnosti diskretizace (pro velké ρ: O(1)). ) 1 ρ 3/2
Multigrid pro Maxwellovy rovnice Úloha s rozšířenými Lagrangiány (A + ρb ι 1 B)u + B p = b Bu = 0 Dostál 2005 prezentuje nový typ analýzy pro algoritmus rozšířených Lagrangiánů s adaptivní kontrolou přesnosti. Ukazuje mimo jiné, že penalizační parametr ρ je ohraničen nezávisle na předpodmínění vazeb B. Náš cíl je vyvinout optimální řešič při použití Dostálova algoritmu rozšířených Lagrangiánů s adaptivní kontrolou přesnosti. Řešení: použijeme regularizaci  Maxwellova operátoru podle Zoua a předpodmíníme matici Âρ :=  + ρb ι 1 B podle Hiptmaira. Z analýzy Prof. Dostála snad vyplyne, že výsledný předpodmiňovač Ĉρ bude optimální nezávisle na ρ.
Osnova Maxwellovy rovnice: příklady úloh Vířivé proudy Elektrostatika Magnetostatika Více-úrovňové metody Multigrid pro 1D úlohu struny Porovnání metod na reálné úloze Analýza optimální konvergence Multigrid pro Maxwellovy rovnice Závěr
Závěr Chceme vyvinout a analyzovat rychlé Maxwellovy řešiče pro měnící se penalizaci ρ perturbace operátoru při tvarové optimalizaci perturbace operátoru při topologické optimalizaci smíšené úlohy plynoucí z all-at-once přístupu v optimalizaci
Závěr Chceme vyvinout a analyzovat rychlé Maxwellovy řešiče pro měnící se penalizaci ρ perturbace operátoru při tvarové optimalizaci perturbace operátoru při topologické optimalizaci smíšené úlohy plynoucí z all-at-once přístupu v optimalizaci Děkuji za pozornost!