Warunek brzegowy Dirichleta Warunek brzegowy Neumanna
Transkrypt
Warunek brzegowy Dirichleta Warunek brzegowy Neumanna
Typy równań róŜniczkowych cząstkowych liniowych a) równania róŜniczkowe eliptyczne (równanie Laplace’a, równanie Poisson’a) b) równanie róŜniczkowe paraboliczne (równanie dyfuzji) c) równanie róŜniczkowe hiperboliczne (równanie falowe) Warunki brzegowe Warunek brzegowy Dirichleta u ( x, y ) = g ( x, y ) dla ( x, y ) ∈ S gdzie: u(x,y) – poszukiwana funkcja w punktach wewnątrz obszaru R, g(x,y) – zadana funkcja dla punktów (x,y) naleŜących do brzegu S obszaru R. Warunek brzegowy Neumanna ∂u ( x , y ) = g ( x , y ) dla ( x, y ) ∈ S ∂n ∂u ( x , y ) – pochodna normalna poszukiwanej funkcji w punktach naleŜących do ∂n brzegu S obszaru R, g(x,y) – zadana funkcja dla punktów (x,y) naleŜących do brzegu S obszaru R. gdzie: Równania eliptyczne - Poissona i Laplace’a d 2u d 2u ( x , y ) + ( x, y ) = f ( x, y ) dla ( x, y ) ∈ R = ( a , b) × ( c, d ) dx 2 dy 2 z warunkami brzegowymi u ( x, y ) = g ( x, y ) dla ( x, y ) ∈ S ∇ 2 u ( x, y ) = JeŜeli f(x,y)=0 równanie Poissona nazywamy równaniem Laplace’a. Metoda róŜnic skończonych (MRS) Dla danych liczb całkowitych m i n, definiujemy kroki h = (b-a)/n oraz k = (c-d)/m. Dzielimy: przedział [a,b] na n równych części o szerokości h oraz przedział [c,d] na m równych części o szerokości k. Tworzymy siatkę na obszarze R poprzez narysowanie pionowych i poziomych linii przechodzących przez punkty (xi, yj), takich Ŝe: xi = a + ih dla i = 0,1, .. n oraz y j = c + jk dla j = 0,1, .. m Proste x = xi, y = yj linie siatki, punkty przecięcia (xi,yj) punkty węzłowe siatki. Metoda róŜnic skończonych opiera się na zastąpieniu pochodnych cząstkowych w punktach (xi,yj) ich przybliŜeniami numerycznymi . Otrzymujemy: Dla zmiennej x u ( xi +1 , y j ) − 2u ( xi , y j ) + u ( xi −1 , y j ) h 2 ∂ 4u ∂ 2u ( x , y ) = − (ξ i , y j ) , gdzie: ξ i ∈ ( xi −1 , xi +1 ) i j ∂x 2 h2 12 ∂x 4 Dla zmiennej y u ( xi , y j +1 ) − 2u ( xi , y j ) + u ( xi , y j −1 ) k 2 ∂ 4u ∂ 2u ( xi , y j ) = − ( xi ,η j ) , gdzie: η j ∈ ( y j −1 , y j +1 ) ∂y 2 k2 12 ∂y 4 Podstawiając do równania Poissona otrzymujemy: u ( xi +1 , y j ) − 2u ( xi , y j ) + u ( xi −1 , y j ) h 2 oraz u ( xi , y j +1 ) − 2u ( xi , y j ) + u ( xi , y j −1 ) k2 h 2 ∂ 4u k 2 ∂ 4u ( ξ , y ) + ( xi ,η j ) (4) i j 12 ∂x 4 12 ∂y 4 j = 1,2, … m-1 = f ( x, y ) + dla i = 1,2 … n-1 + natomiast warunki brzegowe mają postać: u ( x0 , y j ) = g ( x0 , y j ) oraz u ( xn , y j ) = g ( xn , y j ) dla j = 0,1, .. m u ( xi , ym ) = g ( xi , ym ) oraz u ( xi , y0 ) = g ( xi , y0 ) dla i = 1,2, .. n Pomijając reszty otrzymujemy układ (n-1)×(m-1) równań liniowych z niewiadomymi wij , które są przybliŜeniem u(xi,yj). 2 h 2 h 2 + 1 wij − ( wi +1, j + wi −1, j ) − ( wi , j +1 + wi , j −1 ) = −h 2 f ( xi , y j ) k k dla i = 1,2 … n-1 , j = 1,2, … m-1 z warunkami brzegowymi: w0 j = g ( x0 , y j ) wi 0 = g ( xi , y0 ) oraz wnj = g ( xn , y j ) dla j = 0,1, .. m oraz wim = g ( xi , ym ) dla i = 1,2, .. n Dla h = k układ przyjmuje (prostszą) postać wymiaru (n-1)×(n-1): 4wij − ( wi +1, j + wi −1, j ) − ( wi , j +1 + wi , j −1 ) = −h 2 f ( xi , y j ) (10) dla i = 1,2 … n-1 oraz j = 1,2, … m-1 Układ równań moŜemy rozwiązać metodami bezpośrednimi bądź iteracyjnymi. Obserwacja: w celu wyznaczenia przybliŜenia rozwiązania w punkcie (xi,yj), potrzebne są wartości przybliŜenia rozwiązania w czterech sąsiednich punktach: Przykład Wyznaczyć rozkład temperatury w stanie ustalonym dla cienkiej kwadratowej metalowej płytki o wymiarach 0,5 m na 0,5 m. Na brzegu płytki znajdują się źródła ciepła utrzymujące temperaturę na poziomie 0°C dla boku dolnego i prawego, natomiast temperatura boku górnego i lewego zmienia się liniowo od 0°C do 100°C Problem rozwiązać układając układ równań liniowych (postać macierzowa) dla wewnętrznych węzłów siatki 5 x 5 – układ równań rozwiązać metodą Gaussa -Siedla. Siatka dyskretyzacyjna 5 x 5 Problem ten opisuje równanie Laplace’a ∇ 2T ( x, y ) = z warunkami brzegowymi: 1) T(0,y) = 0 [°C ] 2) 3) T(0,5,y) = 200y [°C ] 4) Postać macierzowa układu: 4 −1 − 1 4 0 −1 − 1 0 0 −1 0 0 0 0 0 0 0 0 d 2T d 2T ( x , y ) + ( x, y ) = 0 dx 2 dy 2 T(x,0) = 0 [°C ] T(x,0,5) = 200x [°C ] 0 −1 0 −1 0 −1 0 0 0 0 0 0 4 0 0 −1 0 0 0 4 −1 0 −1 0 0 −1 4 −1 0 −1 −1 0 −1 4 0 0 0 −1 0 0 4 −1 0 0 −1 0 −1 4 0 0 0 −1 0 −1 0 0 0 0 0 − 1 0 − 1 4 T3,1 25 T 3, 2 50 T3,3 100 T2,1 0 T2, 2 = 0 T2,3 50 T 0 1,1 T1, 2 0 T 25 1,3 Rozwiązanie układu równań metodą Gaussa-Siedla, daje wyniki T3,1 T3, 2 T3,3 T2,1 T2 , 2 T2,3 T1,1 T1, 2 T1,3 18,75 38,50 56,25 12,50 25,00 37,50 6,25 12,50 18,75 Ostatecznie wyniki dla załoŜonej siatki mają postać: x = 0 x = 0,125 x = 0,25 x = 0,375 x = 0,5 y = 0,5 0,00 25,00 50,00 75,00 100,00 y = 0,375 y = 0,25 0,00 0,00 18,75 12,50 37,50 25,00 56,25 37,50 75,00 50,00 y = 0,125 0,00 6,25 12,50 18,75 25,00 y=0 0,00 0,00 0,00 0,00 0,00 Równania paraboliczne 2 du 2 d u ( x, t ) − α ( x, t ) = 0 dt dx 2 dla 0 < x < l oraz t > 0 z warunkami brzegowymi u (0, t ) = u (l , t ) = 0 dla t > 0 u ( x, 0) = dla f ( x) i początkowymi 0< x<l (przewodnictwo cieplne w pręcie, 1-wymiarowa dyfuzja, itd.) Metoda róŜnic skończonych Dla danego m definiujemy krok h = (b-a)/m. Ustalamy wartość kroku czasowego k. Stąd węzły siatki (xi , tj ): xi = ih dla i = 0,1, .. m oraz t j = jk dla j = 0,1, .. u ( xi +1 , t j ) − 2u ( xi , t j ) + u ( xi −1 , t j ) h 2 ∂ 4u ∂ 2u ( x , y ) = − (14)4 (ξ i , t j ) i j ∂x 2 h2 12 ∂x gdzie: ξ i ∈ ( xi −1 , xi +1 ) u ( xi , t j +1 ) − u ( xi , t j ) k ∂ 2u ∂u ( xi , t j ) = − ( xi , µ j ) ∂t k 2 ∂t 2 gdzie: µ j ∈ (t j , t j +1 ) u ( xi , t j +1 ) − u ( xi , t j ) k k −α2 u ( xi +1 , t j ) − 2u ( xi , t j ) + u ( xi −1 , t j ) h2 u (0, t j ) = u (l , t j ) = 0 warunek brzegowy : Stąd wi , j +1 − wi , j −α 2 wi +1, j − 2 wi , j + wi −1, j h2 =0 ⇒ dla i = 1,2 … m-1 j = 1,2, … Schemat jawny MoŜna wykazać warunek zbieŜności schematu jawnego: α2 k 1 ≤ h2 2 Równania paraboliczne – Schemat niejawny Inne określenie pochodnej cząstkowej po czasie: gdzie: co prowadzi do układu u ( xi , t j ) − u ( xi , t j −1 ) k ∂ 2u ∂u ( xi , t j ) = − ( xi , µ j ) ∂t k 2 ∂t 2 µ j ∈ (t j −1 , t j ) wi , j − wi , j −1 k lub: −α 2 oraz j = 1,2, … wi , j +1 = (1 − 2λ ) wi , j + λ ( wi +1, j + wi −1, j ) 2 α gdzie λ = k , i = 1,2 … m-1 , h =0 wi +1, j − 2 wi , j + wi −1, j h2 =0 gdzie: (1 + 2λ ) wi , j − λ ( wi +1, j + wi −1, j ) = wi , j −1 dla i = 1,2 … m-1 α λ = k oraz 2 h j = 1,2, … Wyliczanie kolejnej warstwy w zapisie macierzowym (1 + 2λ ) −λ 0 0 −λ 0 w1, j w1, j −1 w w 2 , j 2 , j − 1 ⋮ = ⋮ 0 ⋮ ⋮ −λ wm −1, j wm −1, j −1 0 − λ (1 + 2λ ) 0 MoŜna pokazać,Ŝe schemat niejawny jest zawsze zbieŜny, niezaleŜnie od wielkości kroków całkowania.