NUMERYCZNE METODY ROZWIĄZYWANIA RÓWNAŃ MHD Rafał
Transkrypt
NUMERYCZNE METODY ROZWIĄZYWANIA RÓWNAŃ MHD Rafał
NUMERYCZNE METODY ROZWIĄZYWANIA RÓWNAŃ MHD Rafał Ogrodowczyk *, Krzysztof Murawski **,* * Katedra Informatyki Państwowa Wyższa Szkoła Zawodowa w Chełmie ** Instytut Fizyki Uniwersytet Marii Curie-Skłodowskiej w Lublinie Streszczenie W artykule tym opisano podstawowe zagadnienia związane z teorią modelu magnetodhydroakustycznego oraz numerycznymi metodami rozwiązywania go. Wybrane aspekty teoretyczne omówiono na przykładzie ich realizacji w kodach numerycznym FLASH i Emily uwidaczniając zastosowane w nich schematy numeryczne. Abstract In this paper we describe basic issues that are associated with a theory of magnetohydrodynamic equations and numerical schemes for solving them. The Flash and Emily codes are used as an example to present the numerical algorithm and their results for solar plasma. Wstęp Plazma jest to zjonizowany gaz, który posiada specyficzne właściwości fizyczne, szczególnie ujawniające się w polu elektromagnetycznym. Istnieją dwa podstawowe sposoby opisu plazmy przenikniętej polem magnetycznym. Pierwszy z nich traktuje plazmę jako płyn. Jest to podejście makroskopowe, nieuwzględniające struktury molekularnej, w którym wykorzystuje się równania zachowania masy, pędu, energii. Z drugiej strony możemy potraktować plazmę jako zbiór jonów, przewodzących prąd elektryczny i opisywać jej własności przy pomocy równań Maxwella. Model magnetohydrodynamiczny (MHD) łączy dwa powyższe podejścia, traktując plazmę makroskopowo jak płyn, w którym występują oddziaływania elektromagnetyczne pomiędzy molekułami. Formalizm ten wykorzystuje, w najprostszym przypadku, równania Eulera wzbogacone o człony związane z polem elektromagnetycznym i dodatkowo uzupełnione równania Maxwella. Symulacje numeryczne zachowań plazmy opisywanej układem równaniami MHD, ze względu na ich skomplikowaną strukturę, wymagają stosowania założeń i uproszczeń pozwalających uniknąć niezgodności numerycznych z właściwościami modelu. Niniejsze opracowanie ma na celu przybliżenie teorii równań MHD i metod numerycznych wykorzystywanych przy ich rozwiązywania. W Rozdz. 1 przedstawiamy równania MHD. Numeryczne metody ich rozwiązywania dyskutowane są w Rozdz. 2. Wybrane programy stosowane w symulacjach numerycznych równań MHD scharakteryzowane są w Rozdz. 3, a ich przykładowe zastosowania ilustrujemy w Rozdz. 4. 1. Równania MHD i ich postać zachowawcza Równania magnetohydrodynamiki opisują gęstość masy plazmy, prędkość jej elementu, ciśnienie i pole magnetyczne w danym punkcie przestrzeni i określonej chwili. Równania te dają się zapisać następująco [10]: r ¶r + Ñ × ( rV ) = 0 ¶t r r r r r ¶ rV + r V × Ñ V = -Ñp + j ´ B ¶t ( ) ( ) ® ¶p æ ®ö + Ñ × ç p V ÷ = (1 - g ) pÑ × V - L ¶t è ø (1) (2) (3) ® ¶B æ® ®ö = Ñ ´ çV ´ B ÷ ¶t è ø r Ñ×B = 0 (4) (5) 140 ® ® Tutaj ρ jest gęstością masy, V prędkością przepływu plazmy, B indukcją pola magnetycznego, p ciśnieniem gazu, μ przenikalnością magnetyczną ośrodka, a g współczynnik adiabatyczym gazu. Równanie (1) zwane również równaniem ciągłości masy jest różniczkową postacią prawa zachowania masy. Wyrażenie (2) opisuje prawo zachowania pędu uzupełnione o człon pochodzący od siły Lorenza. Dopełnieniem równań (1) i (2) jest równanie (3) wyrażające zmiany ciśnienia. Związki (4) i (5) wynikają z własności pola elektromagnetycznego. Uwzględniają one fakt wytwarzania wirowego pola elektrycznego przez zmienny w czasie strumień pola magnetycznego przenikającego plazmę i brak monopoli magnetycznych w przyrodzie. Równania MHD można zapisać w postaci zachowawczej, która jest wykorzystywana w symulacjach numerycznych. Dla dwuwymiarowej przestrzeni równania (1)-(4) przyjmują postać równań hiperbolicznych: rV1 rV 2 ù é ù é ér ù ú ê ú ê 2 2 ê rV ú ~ rV1V2 - B1 B 2 rV1 + p - B1 ú ê ú ê ê 1ú ú ê ú ê ê rV 2 ú rV1V 2 - B1 B2 rV22 + ~ p - B22 ú ê ú ê ú ê rV1V3 - B1 B3 rV 2V3 - B2 B3 (6) ¶ ê rV 3 ú ¶ ê ú ú ¶ ê + ê r rú+ ê r rú=0 ~ ~ ú ê ¶x V1 ( E + p ) - B1 (V × B ) ¶y V2 ( E + p ) - B 2 (V × B ) ¶t E ú ê ú ê ú ê ú ê ú ê 0 V 2 B1 - V1 B2 ê B1 ú ú ê ú ê êB ú V1 B2 - V2 B1 0 ú ê ú ê ê 2 ú ú ê ú ê êë B3 úû V B V B V B V B 1 3 3 1 2 3 3 2 û ë û ë ® W powyższym równaniu B zostało znormalizowane przez 1 ® ® BÞB m , czyli ® ® m . Vi , Bi stanowią odpowiednie składowe wektorów V i B , ®2 ciśnienie całkowite opisano wyrażeniem pc = p + B / 2 . Główne trudności związane z numerycznym rozwiązywaniem układu równań MHD spowodowane są równaniem (5). Miejscowe zaburzenia tego warunku skutkuje pojawieniem się monopoli magnetycznych oraz strumieni magnetycznym w rozpatrywanym obszarze. Tak powstałe błędy numeryczne mogą doprowadzić do przerwana symulacji. Zachowanie tego warunku jest bardzo trudne i wiąże się z wykorzystaniem kosztownych numerycznie algorytmów. 2. Numeryczne metody rozwiązywania równań MHD Równania (1)-(4) możemy zapisać w postaci quasi-liniowej, która w przypadku jednowymiarowym przyjmuje następującą postać: ® ® ut + A×u x = 0. (7) 141 ® Tutaj u ( x, t ) oznacza n-elementowy wektor stanu, a A jest macierzą o wymiarach n ´ n . W przypadku, gdy macierz A daje się zdiagonalizować i posiada rzeczywiste wartości własne, tak opisywany układ równań nazywamy hiperbolicznym. Numeryczne metody rozwiązywania hiperbolicznych równań różniczkowych mogą być oparte na problemie Riemana, który dla przypadku (7) przybiera postać: ìQl dla x < x 0 u ( x, t = 0) = í îQr dla x > x 0 (8) Tutaj Ql i Qr oznaczają wartości funkcji w lewej i prawej komórce numerycznej (patrz Rys. 1). Korzystając z kryterium hiperboliczności macierz A możemy wyrazić przez diagonalną macierz wartości własnych L i macierze wektorów własnych R : A = RLR -1 . (9) Równanie (7) przyjmie wtedy postać równania adekwacji: (l u ) + l (l u ) i i i t x =0 (10) gdzie l i ( r i ) oznacza lewy (prawy) wektor własny o wymiarze 1 ´ n ( n ´ 1 ), a li jest wartością własną. Rozwiązaniem równania (7) będzie superpozycja n rozwiązań równania: n ( ) u ( x, t ) = å l i u x - li t ,0 r i . (11) i =1 Rozwiązanie to przedstawia n nieciągłości poruszających się z prędkościami li . ® Rysunek 1. Problem Riemana - nieciągłość funkcji u ( x, t ) dla czasu t = 0 . Ql i Qr oznaczają odpowiednie wartości funkcji w lewej i prawej komórce numerycznej. 142 LeVeque [4] jako pierwszy zaproponował numeryczną metodę rozwiązywania zachowawczych równań różniczkowych zwaną metodą rozchodzenia się fal. Metoda ta wykorzystuje rozwinięcie w szereg: 1 u ( x, t + Dt ) = u ( x, t ) + Dtu ( x, t ), t + Dt 2 ( x, t ), tt +... 2 Tutaj indeksy ,t i , x oznaczają (12) odpowiednio pochodne po czasie i przestrzeni. Rozważmy równanie skalarne: u , t + f x (u, x ), x = 0 . (13) Z równania (12) otrzymamy wtedy wyrazy z pochodną czasową i przestrzenną: 1 u ( x, t + Dt ) = u ( x, t ) + Dtf x , x + Dt 2 ( Ax f x , x ), x +... . (14) 2 We wzorach (13)-(14) f x oznacza strumień, a jest Ax macierzą Jacobiego. Rezultaty numeryczne otrzymane z równania (14) zależeć będą od liczby uwzględnionych członów. Schematy numeryczne ograniczające się tylko do poprawek I rzędu nazywamy I rzędu dokładnymi, wykorzystujące człony II rzędu – II rzędu dokładnymi. Liczba uwzględnionych członów źródłowych wpływa znacząco na wyniki oraz na złożoność numeryczną schematu, a tym samym na czas wykonywania symulacji. Parametry te są ważne w ocenie przeprowadzanego eksperymentu numerycznego. Rysunek 2. Schemat rozwiązania równania (10) metodą rozchodzenia się fal. prędkości rozchodzenia się fal, a Wi i-tą falę. li oznacza 3. Kody numeryczne wykorzystywane w symulacjach równań MHD Złożoność numeryczna modelu MHD zaowocowała wieloma propozycjami algorytmów pozwalających na przeprowadzanie eksperymentów numerycznych zjawisk plazmy. Do najefektywniejszych z nich należy zaliczyć CLAWPACK [3], ATHENA [11], FLASH [1,9] i EMILY [2]. Własności dwóch ostatnich wraz z przykładowymi rezultatami zostaną pokrótce omówione poniżej. Program FLASH został napisany przez zespół naukowców z ASCI Center for Thermonuclear Flashes. Jest to narzędzie do modelowania plazmy przenikniętej polem magnetycznym. Pole takie występuje w wielu strukturach 143 astrofizycznych, takich jak rozbłyski czy pętle koronalne. Program ten napisany jest w języku Fortran 90, a strukturalnie jest to zestaw wielu modułów, które można dowolnie zestawiać w celu jak najbliższego odwzorowania modelowanego zjawiska. Należy dodać, iż w kodzie tym wykorzystano zarówno samoadaptacyjne siatki numeryczne [5] jak i zestaw bibliotek Message Passing Interface (MPI) umożliwiający wykonywanie obliczeń rozproszonych [6] czyniąc symulacje dokładniejszymi, a jednocześni efektywniejszymi. Schematy numeryczne zaimplementowane w programie FLASH to na przykład: jawny schemat Eulera pierwszego rzędu, metoda Runge-Kutty trzeciego rzędu, czy metoda objętości skończonych ze schematem obcięcia błędów mającym na celu zachowanie warunku (5). Program EMILY został napisany w języku Fortran 77 przez Jonesa, Shumlaka i Eberhardta z Uniwersytetu w Waszyngtonie w roku 1997 [2]. W algorytmie tym użyto metody objętości skończonych wykorzystującej przybliżenie Riemanna dla strumieni hiperbolicznych oraz schematu różnicowego dla strumieni parabolicznych pochodzących od członów nieliniowych, takich jak lepkość. Schemat ten jest drugiego rzędu dokładny zarówno dla czasu jak i składowych przestrzennych. 4. Zastosowanie kodów numerycznych w symulacjach równań MHD W celu przedstawienia rezultatów uzyskiwanych podczas symulacji numerycznych kodami FLASH i EMILY wprowadzimy model plazmy w koronie słonecznej. Ograniczymy naszą dyskusje do modelu dwuwymiarowego, w którym wszystkie własności plazmy będą niezależne od współrzędnej y . Rozważamy model pętli koronalnej, w którym opisywane wielkości fizyczne zmieniają skokowo swoja wartość między obszarem zewnętrznym a wnętrzem pętli. Schemat geometrii modelu został przedstawiony na Rys. 3, a wartości podstawowych parametrów opisujących plazmę koronalną zawarto w Tab. 1. Rysunek 2. Geometria modelu. Szary obszar odpowiada zagęszczeniu plazmy wewnątrz pętli. Tabela 1. Wartości wielkości definiujących właściwości modelowanej plazmy. Indeksy i i e oznaczają odpowiednio wartości wewnątrz i na zewnątrz pętli. 144 Wielkość V Ae Wartość 1 Mm s-1 c se 0,2 Mm s-1 re Ti Te 10 -15 kg m-3 2 d = ri r e 10 v = V Ae V Ai 10.1 Stan równowagi zaburzany był impulsem w gęstości masy r i ciśnieniu p , a jego matematyczna postać opisana była zależnościami: dr (x, z , t = 0 ) = Ar e -[( x - x0 ) wx ] e -[( z - z0 ) wz ] , (15) dp(x, z , t = 0) = A p e -[( x - x0 ) wx ] e -[( z - z0 ) wz ] . (16) 2 2 2 2 Tutaj Ar i A p oznaczają względne amplitudy impulsu, x0 i z 0 jego pozycję, a w x i w z szerokość zaburzenia w kierunku osi x i z. Rysunek 3. Profil przestrzenny składowej prędkości V z dla t = 16 s (górny panel). Charakterystyka czasowa sygnału falowego (lewy dolny panel) i odpowiadające mu widmo falkowe (prawy dolny panel) zbieranego w punkcie z d . Wyniki otrzymano przy pomocy programu FLASH dla przypadku impulsu początkowego generowanego w punkcie x 0 = z 0 = 0 . Wyniki zaczerpnięte z pracy [7]. 145 Rysunek 3. Wyniki otrzymano programem EMILY dla przypadku impulsu początkowego generowanego w punkcie x 0 = z 0 = 0 . Poszczególne panele odpowiadają panelom z Rys. 3. Wyniki zaczerpnięte z [8]. Rysunki (3) i (4) przedstawiają rezultaty otrzymane dla przypadku impulsu generowanego w punkcie x 0 = z 0 = 0 , uzyskane odpowiednio przy użyciu programów FLASH i EMILY. Porównując je, widzimy, że zarówno jakościowo i ilościowo są one zbieżne. Występujące różnice wynikają z zastosowania w nich różnych schematów numerycznych. 5. Podsumowanie Ustawiczny rozwój metod numerycznych przy jednoczesnym wzroście mocy obliczeniowej współczesnych komputerów, wyprzedzających znacznie możliwości obserwacyjne człowieka w dziedzinie badań astrofizycznych, skutkuje coraz większą rolą eksperymentów numerycznych w procesie poznawczym. Oczywistym staję się wiec fakt ciągłego doskonalenia już wykorzystywanych i odkrywanie nowych schematów numerycznych, dających naukowcom narzędzie do dalszej pracy badawczej. Wszystkie omówione tu kody numeryczne przyczyniły się do poznania wielu nowych faktów i wyjaśnienia istoty otaczających nas zjawisk. 146 Literatura [1] Fryxell i inni, FLASH: An Adaptive Mesh Hydrodynamics Code for Modeling Astrophysical Thermonuclear Flashes, Astrophys. J. Suppl., 131, 273 (2000) [2] Jones O.S., Shumlak U., Eberhardt D.S., An Implicit Scheme for Nonideal Magnetohydrodynamics , J. Comput. Phys., 130, 2, (1997) [3] LeVeque R. J., CLAWPACK use notes, Applied mathematic, Univ. of Washington, Washington, (1997) [4] LeVeque R. J., Finite difference methods for differential eqations, Applied mathematic, Univ. of Washington, Washington, (1998) [5] Olszanowski G., Ogrodowczyk R., Adaptacyjne siatki numeryczne, KEI III, Chełm (2004) [6] Ogrodowczyk R., Murawski K., Bielecki B., Systemy rozproszone, KEI IV, Chełm (2005) [7] Ogrodowczyk R., Murawski K., Massively parallel numerical simulations of magnetosonic waves in a solar coronal magnetic slab, XI SKMI, Chełm, (2006) [8] Ogrodowczyk R., Murawski K., Numerical simulations of impulsively generated magnetosonic waves in a coronal loop, Solar Physics, (2006) [9] Selwa M., Murawski K., FLASH – a tool for surgery of solar plasma, Annales UMCS Informatica, A1, 2 (2004) [10] The Sun: An introduction to MHD , Solar and Magnetospheric MHD Theory Group, University of St Andrews, St Andrews, (1999) [11] The Athena Code, Department of Astrophysical Sciences, Peyton Hall, Princeton, (2000) [12] http://flash.uchicago.edu/ 147