Metody matematyczne w Inżynierii Chemicznej Rozwiązywanie równań różniczkowych
Równanie różniczkowe rzędu n Wzór ogólny
Cel rozwiązania równania różniczkowego Matematyk: rozwiązanie ogólne w postaci funkcji Inżynier: rozwiązanie szczególne, określone przez warunki początkowe. Interesujące są wartości funkcji dla kolejnych zmiennych niezależnych, czyli zbiór par (x1, y1), (x2,y1),...,(xn, yn) kiedy dana jest funkcja f(x, y, y', y",..,y(n) )=0
Warunki początkowe Zagadnienie początkowe Zagadnienie brzegowe
Warunki początkowe Zagadnienie początkowe – wszystkie równania warunków początkowych podane są dla tej samej zmiennej niezależnej Np. dla równania: Warunki początkowe:
Warunki początkowe Zagadnienie brzegowe –równania warunków początkowych podane są dla co najmniej dwóch wartości zmiennej niezależnej Np. dla równania: Warunki brzegowe: i i lub
Równania wyższych rzędów Przekształca się do układów równań rzędu pierwszego Np. w równaniu: podstawmy: stąd:
Równania wyższych rzędów Otrzymujemy układ równań pierwszego rzędu:
Równania wyższych rzędów Dla równanie trzeciego rzędu
Równania wyższych rzędów Równanie trzeciego rzędu przechodzi w układ 3 równań pierwszego rzędu
Metody rozwiązywania r.r. Metody wielokrokowe: yi+1 oblicza się na podstawie znanych yi, yi-1, yi-2,.., yi-p. Do wyliczenia punktu (xi+1, yi+1) wymagana jest znajomość p+1 punktów obliczonych wcześniej Metody klasy Rungego-Kutty: yi+1 oblicza się na podstawie yi i pewnych wartości pośrednich F(xi+a, yi+b), gdzie a należy do przedziału <0, h> b oblicza się wg algorytmu danej metody
Metoda Eulera z warunkami początkowymi II rząd
Metoda Eulera dla równań 2-go rzędu z warunkami początkowymi z warunkami początkowymi
Metoda Eulera dla równań 2-go rzędu
Metody wielokrokowe Typy Wykorzystujące wzory na wartość pochodnej w punkcie Wykorzystujące metody całkowania numerycznego
Zasada metod wielokrokowych xi+1 xi-p xi-3 xi-2 xi-1 xi
Metody wielokrokowe typ 1. Pochodną w równaniu: Podstawia się odpowiednim wyrażeniem. Jeżeli zastosować najprostszy wzór na pochodną: Po podstawieniu: i przekształceniu: m. Eulera
Metody wielokrokowe typ 1. Jeżeli zastosować dokładniejszy wzór na pochodną: Po podstawieniu: i przekształceniu:
Metody wielokrokowe typ 1. Jeszcze większą dokładność otrzyma się stosując wzór: Po podstawieniu: i przekształceniu:
Metody wielokrokowe typ 1. Podsumowanie Ogólny wzór metod wielokrokowych jawnych
Metody wielokrokowe typ 2. Opierając się na operacji całkowania równania: W granicach przedziału <i-p, i+1> Lewa strona jest dokładnie równa różnicy wartości funkcji między punktami i-p, i+1:
Metody wielokrokowe typ 2. Prawą stronę oblicza się całkując numerycznie jedną z metod. Jeżeli zastosować metodę prostokątów to p = 0 m. Eulera!!
Metody wielokrokowe typ 2. Jeżeli zastosować metodę trapezów to p = 0 Równanie to jest uwikłane ze względu na yi+1. Metody takie nazywane są niejawnymi
Metody wielokrokowe typ 2. Ponieważ to wartość pochodnej w punkcie i Można ją oznaczyć , co upraszcza zapis Metodę bazującą na całkowaniu metodą trapezów można ostatecznie zapisać Rozwiązanie wymaga wykonania obliczeń iteracyjnych
Metody wielokrokowe typ 2. Wstępne oszacowanie wartości yi+1. Obliczenie pochodnej y'i+1=F(xi+1, yi+1) Obliczenie yi+1 z wyprowadzonego wzoru Porównanie oszacowanej i obliczonej wartości yi+1 . Jeżeli różnią się o więcej niż założona wartość e to powrót do punktu 2. Metody oparte o wzory całkowe mają większą dokładność niż bazujące na równaniach na obliczenie pochodnych
Metody wielokrokowe typ.2 Stosując wzór całkowy Simpsona (p = 1) Otrzymuje się wzór niejawny
Metody wielokrokowe typ.2 podsumowanie
Metody wielokrokowe wzór ogólny Jest to ogólny wzór na metody wielokrokowe b0 = 0 to wzór jest jawny, b0 0 wzór jest niejawny
Metody wielokrokowe dwuetapowe Pierwszy krok można wykonać stosując metodę jawną opartą o wzory na pochodną. Np.: 1. Pierwsze przybliżenie y*i+1 jest nazywane PROGNOZĄ (PREDICTOR) 2. Obliczenie pochodnej y'i+1=F(xi+1 , y*i+1 ) 3. Lepsze przybliżenie yi+1 Nazywane korektą (uściśleniem) - CORRECTOR
Metody wielokrokowe dwuetapowe Punkty 2. i 3. powtarzane są iteracyjnie. Warunek zakończenia obliczeń iteracyjnych można przedstawić następująco: Ten sposób obliczeń nazywany jest metodą predictor-corrector. Przedstawiona metoda nosi nazwę zmodyfikowanej metody Eulera
Metody wielokrokowe predictor-corrector Metoda Milne'a (1) Prognoza: Korekta:
Metody wielokrokowe predictor-corrector Metoda Milne'a (2) Prognoza: Korekta:
Metody wielokrokowe predictor-corrector Wzory Adamsa Prognoza (Adamsa-Bashfortha): Korekta (Adamsa-Moultona):
Obliczanie punktów początkowych w metodach wielokrokowych Stosując metody wielokrokowe mamy dany warunek początkowy typu zagadnienie początkowe czyli współrzędne punktu początkowego x0 i y0. Aby wykonać obliczenia metodą o pewnej wartości p potrzeba jeszcze p par xi, yi. Np. W pierwszej metodzie Milne'a p = 3. Pierwszą wartość jaką możemy obliczyć jest y4 a innym sposobem trzeba obliczyć y1, y2, y3. Można wykorzystać rozwinięcie w szereg Taylora w otoczeniu punktu x0.
Stabilność i zbieżność obliczeń x0 y0 y3 y2 Y x3 x2 x1 y1 h Zbieżność oznacza, że:
Stabilność i zbieżność obliczeń We wszystkich wzorach błąd jest dodatnią potęgą kroku: Ponieważ krok jest bardzo mały h << 1 oraz stąd Przedstawione metody spełniają warunek zbieżności.
Stabilność i zbieżność obliczeń Definicja stabilności Rozwiązanie numeryczne równania różniczkowego jest stabilne, jeżeli błąd wniesiony do obliczeń przez zaokrąglenie lub metodę zostanie w trakcie obliczeń stłumiony lub rośnie wolniej od obliczonych wartości (błąd względny maleje)
Stabilność i zbieżność obliczeń Stabilność, tak jak zbieżność, zależy od kroku. Błąd k-tego kroku obliczeń numerycznych to suma błędów metody i zaokrąglenia:
Stabilność i zbieżność obliczeń hopt
Algorytm rozwiązywania równań różniczkowych metodą jawną O(h3) 1. Czytaj parametry punktów startowych x0, y0, x1, y1 2. Czytaj końcową wartość xk i krok h 3. Podstaw za i wartość 2 4. Oblicz xi = x0+i*h 5. Oblicz yi = yi-2+2hF(xi-1, yi-1) 6. Zwiększ i o 1 7. Oblicz xi = x0+i*h 8. Jeżeli xi <= xk to idź do punktu 5 9. Podstaw za n wartość i-1 10. Podstaw za i wartość 0 11. Drukuj xi oraz yi 12. Zwiększ i o 1 13. Jeżeli i<=n to idź do punktu 11 14. Koniec
Algorytm rozwiązywania równań różniczkowych metodą typu predictor-corrector 1. Czytaj parametry punktów startowych x0, y0, x1, y1 2. Czytaj końcową wartość xk oraz krok h 3. Podstaw za i wartość 1 4. Oblicz xi+1 = x0+(i+1)*h 5. Oblicz yi+1 = yi-1+2hF(xi, yi) 6. Przyjmij y*= yi+1 7. Oblicz 8. Jeżeli |y* – yi+1|>h3 to idź do punktu 6 9. Zwiększ i o 1 10. Oblicz xi+1 = x0+(i+1)*h 11. Jeżeli xi+1 <= xk to idź do punktu 5
Algorytm rozwiązywania równań różniczkowych metodą typu predictor-corrector 12. Podstaw za n wartość i-1 13. Podstaw za i wartość 0 14. Drukuj xi oraz yi 15. Zwiększ i o 1 16. Jeżeli i<=n to idź do punktu 14 17. Koniec